專(zhuān)利名稱(chēng):一種在交換機(jī)上實(shí)現(xiàn)arp欺騙檢測(cè)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及以太網(wǎng)傳輸安全,屬于網(wǎng)絡(luò)安全領(lǐng)域,用于設(shè)計(jì)更為安全的交換機(jī),特別是ー種在交換機(jī)上實(shí)現(xiàn)ARP欺騙檢測(cè)的方法。
(ニ)
背景技術(shù):
在TCP/IP協(xié)議簇中,地址解析協(xié)議(英文名稱(chēng)為Address Resolution Protocol,以下簡(jiǎn)稱(chēng)為ARP)的功能是在互聯(lián)網(wǎng)協(xié)議(英文名稱(chēng)為Internet Protocol,以下簡(jiǎn)稱(chēng)為IP)地址和介質(zhì)訪問(wèn)控制(英文名稱(chēng)為Media Access Control,以下簡(jiǎn)稱(chēng)為MAC)地址間提供動(dòng)態(tài)映射,將32位的IP地址轉(zhuǎn)換為48位的MAC地址,使IP報(bào)文能夠在鏈路中正確傳輸。ARP協(xié)議設(shè)計(jì)之初,網(wǎng)絡(luò)中的主機(jī)被認(rèn)為是可信的,因此ARP協(xié)議被設(shè)計(jì)為基于可信主機(jī)之間的協(xié)議,然而現(xiàn)實(shí)中的網(wǎng)絡(luò)并非如此,這就產(chǎn)生了 ARP欺騙技木。所謂ARP欺騙,是指利用ARP協(xié)議的漏洞,通過(guò)向目標(biāo)主機(jī)發(fā)送虛假ARP報(bào)文,冒充目標(biāo)主機(jī),截取本應(yīng)發(fā)往目標(biāo)主機(jī)的報(bào)文,以此實(shí)現(xiàn)監(jiān)聽(tīng)或截獲目標(biāo)主機(jī)通信數(shù)據(jù)的ー種手段。如果使用ARP欺騙同時(shí)冒充通信雙方,就能實(shí)現(xiàn)“中間人攻擊”。嚴(yán)重時(shí)ARP欺騙能造成網(wǎng)絡(luò)的擁塞甚至大面積的網(wǎng)絡(luò)癱瘓等,對(duì)網(wǎng)絡(luò)的管理及其安全的維護(hù)提出了嚴(yán)峻的考驗(yàn)。傳統(tǒng)上,要解決ARP欺騙,有以下幾種方法1、使用ARP代理服務(wù)器;2、安裝獨(dú)立的ARP欺騙檢測(cè)服務(wù)器;3、修改ARP協(xié)議。上述方法中,第一種需要解決ARP代理服務(wù)器的安全問(wèn)題,防止代理服務(wù)器受到攻擊,但在實(shí)際中代理服務(wù)器很容易成為攻擊靶子,因此難以保證ARP代理服務(wù)器的安全;第二種由于要安裝新設(shè)備,成本較高,且由于使用主動(dòng)檢測(cè)技術(shù),導(dǎo)致網(wǎng)絡(luò)數(shù)據(jù)量增加,影響網(wǎng)絡(luò)運(yùn)行;第三種缺乏恰當(dāng)?shù)膮f(xié)議模型,只能部分解決ARP協(xié)議的問(wèn)題,無(wú)法從根本上杜絕ARP欺騙。
(ニ)
發(fā)明內(nèi)容
`本發(fā)明提供了ー種在交換機(jī)上實(shí)現(xiàn)ARP欺騙檢測(cè)的方法,該方法能夠有效避免現(xiàn)有技術(shù)存在的問(wèn)題,快速檢測(cè)到ARP欺騙現(xiàn)象,提升網(wǎng)絡(luò)管理效率。本發(fā)明的技術(shù)方案ー種在交換機(jī)上實(shí)現(xiàn)ARP欺騙檢測(cè)的方法,其特征在于具體步驟如下(I)在交換機(jī)中,建立報(bào)文分發(fā)模塊、ARP欺騙檢測(cè)模塊、告警模塊,以及ARP表;其中報(bào)文分發(fā)模塊用于檢測(cè)報(bào)文類(lèi)型,判斷是否ARP報(bào)文;ARP欺騙檢測(cè)模塊負(fù)責(zé)檢測(cè)ARP報(bào)文,判斷是否存在ARP欺騙;告警模塊用于提示管理員;ARP表用于緩存接收到的ARP報(bào)文中的IP/MAC地址對(duì),由若干ARP記錄組成,每條ARP記錄包括從ARP報(bào)文中取出的IP/MAC地址對(duì),以及收到ARP報(bào)文的時(shí)間,交換機(jī)上電時(shí)ARP表為空表;(2)交換機(jī)上電后,報(bào)文分發(fā)模塊進(jìn)入工作狀態(tài),報(bào)文分發(fā)模塊判斷交換機(jī)輸入的所有報(bào)文類(lèi)型,如果不是ARP應(yīng)答報(bào)文則檢測(cè)下ー報(bào)文;如果是ARP應(yīng)答報(bào)文,則判斷是否發(fā)生了 ARP風(fēng)暴,如果是ARP風(fēng)暴,則通過(guò)告警模塊提示管理員;如果不是ARP風(fēng)暴,則將報(bào)文分發(fā)給ARP欺騙檢測(cè)模塊。
(3)當(dāng)ARP欺騙檢測(cè)模塊接收到ARP應(yīng)答報(bào)文后,從中提取IP地址和MAC地址;(4)ARP欺騙檢測(cè)模塊查找在ARP表中是否存在與ARP應(yīng)答報(bào)文的IP地址相同的記錄如果找不到,則用ARP應(yīng)答報(bào)文的IP地址、MAC地址和當(dāng)前時(shí)間組成一條記錄,添加到ARP表中;如果能找到,則從ARP表中的記錄中取出MAC地址,判斷ARP表中的MAC地址與從ARP應(yīng)答報(bào)文中提取的MAC地址是否相同,如果相同,則用當(dāng)前時(shí)間更新ARP表中的記錄中的時(shí)間,如果不同,則表明接收的IP地址對(duì)應(yīng)的ARP表中的記錄中的MAC地址已經(jīng)改變;繼續(xù)取出ARP表中的記錄中的時(shí)間,并計(jì)算當(dāng)前時(shí)間與ARP表中的記錄中時(shí)間的差值,當(dāng)差值高于閾值時(shí),則是正常的ARP應(yīng)答報(bào)文,此時(shí)用ARP應(yīng)答報(bào)文中的MAC地址和當(dāng)前時(shí)間更新ARP表中的記錄中的相應(yīng)字段,當(dāng)差值低于上述閾值時(shí),則發(fā)生了 ARP欺騙,其中,閾值設(shè)置為10-500ms ;(5)當(dāng)檢測(cè)到ARP欺騙后,通過(guò)告警模塊提示管理員;或記錄日志文件,以便管理員查閱;或切斷相應(yīng)端口的連接,避免造成損失。(6)ARP欺騙檢測(cè)中使用的閾值,其含義為從同一 IP地址接收到兩次相鄰ARP報(bào)文之間的合理間隔,該值可由網(wǎng)絡(luò)管理員根據(jù)網(wǎng)絡(luò)狀況進(jìn)行設(shè)置。上述所說(shuō)的時(shí)間,可以是絕對(duì)時(shí)間,也可以是標(biāo)識(shí)交換機(jī)啟動(dòng)時(shí)間的計(jì)數(shù)器。本發(fā)明的技術(shù)效果本發(fā)明通過(guò)在交換機(jī)中加入新的處理邏輯,實(shí)時(shí)監(jiān)測(cè)ARP欺騙現(xiàn)象,并及時(shí)做出處理,提高了網(wǎng)絡(luò)健壯性,有助于打造更為安全的網(wǎng)絡(luò)。
圖1為本發(fā)明所涉一種在交換機(jī)內(nèi)實(shí)現(xiàn)ARP欺騙檢測(cè)的模塊設(shè)計(jì)示意圖;圖2為本發(fā)明所涉一種報(bào)文分發(fā)模塊的工作流程圖;圖3為本發(fā)明所涉一種ARP欺騙檢測(cè)模塊的工作流程圖。
具體實(shí)施例方式實(shí)施例一種在交換機(jī)上實(shí)現(xiàn)ARP欺騙檢測(cè)的方法,其特征在于具體步驟如下(I)在交換機(jī)中,建立報(bào)文分發(fā)模塊、ARP欺騙檢測(cè)模塊、告警模塊,以及ARP表;其中報(bào)文分發(fā)模塊用于檢測(cè)報(bào)文類(lèi)型,判斷是否ARP報(bào)文;ARP欺騙檢測(cè)模塊負(fù)責(zé)檢測(cè)ARP報(bào)文,判斷是否存在ARP欺騙;告警模塊用于提示管理員;ARP表用于緩存接收到的ARP報(bào)文中的IP/MAC地址對(duì),由若干ARP記錄組成,每條ARP記錄包括從ARP報(bào)文中取出的IP/MAC地址對(duì),以及收到ARP報(bào)文的時(shí)間,交換機(jī)上電時(shí)ARP表為空表;(2)交換機(jī)上電后,報(bào)文分發(fā)模塊進(jìn)入工作狀態(tài),報(bào)文分發(fā)模塊判斷交換機(jī)輸入的所有報(bào)文類(lèi)型,如果不是ARP應(yīng)答報(bào)文則檢測(cè)下一報(bào)文;如果是ARP應(yīng)答報(bào)文,則判斷是否發(fā)生了 ARP風(fēng)暴,如果是ARP風(fēng)暴,則通過(guò)告警模塊提示管理員;如果不是ARP風(fēng)暴,則將報(bào)文分發(fā)給ARP欺騙檢測(cè)模塊。 (3)當(dāng)ARP欺騙檢測(cè)模塊接收到ARP應(yīng)答報(bào)文后,從中提取IP地址和MAC地址;
⑷ARP欺騙檢測(cè)模塊查找在ARP表中是否存在與ARP應(yīng)答報(bào)文的IP地址相同的記錄如果找不到,則用ARP應(yīng)答報(bào)文的IP地址、MAC地址和當(dāng)前時(shí)間組成一條記錄,添加到ARP表中;如果能找到,則從ARP表中的記錄中取出MAC地址,判斷ARP表中的MAC地址與從ARP應(yīng)答報(bào)文中提取的MAC地址是否相同,如果相同,則用當(dāng)前時(shí)間更新ARP表中的記錄中的時(shí)間,如果不同,則表明接收的IP地址對(duì)應(yīng)的ARP表中的記錄中的MAC地址已經(jīng)改變;繼續(xù)取出ARP表中的記錄中的時(shí)間,并計(jì)算當(dāng)前時(shí)間與ARP表中的記錄中時(shí)間的差值,當(dāng)差值高于閾值時(shí),則是正常的ARP應(yīng)答報(bào)文,此時(shí)用ARP應(yīng)答報(bào)文中的MAC地址和當(dāng)前時(shí)間更新ARP表中的記錄中的相應(yīng)字段,當(dāng)差值低于上述閾值時(shí),則發(fā)生了 ARP欺騙,其中,閾值設(shè)置為50ms ;(5)當(dāng)檢測(cè)到ARP欺騙后,通過(guò)告警模塊提示管理員;或記錄日志文件,以便管理員查閱;或切斷相應(yīng)端口的連接,避免造成損失。(6) ARP欺騙檢測(cè)中使用的閾值,其含義為從同一 IP地址接收到兩次相鄰ARP報(bào)文之間的合理間隔,該值可由網(wǎng)絡(luò)管理員根據(jù)網(wǎng)絡(luò)狀況進(jìn)行設(shè)置。上述所說(shuō)的時(shí)間是絕對(duì)時(shí)間。應(yīng)當(dāng)理解的是,以上僅為本發(fā)明的優(yōu)選實(shí)施例,不能因此限制本發(fā)明的專(zhuān)利范圍,凡是利用本發(fā)明說(shuō)明書(shū)及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同 理包括在本發(fā)明的專(zhuān)利保護(hù)范圍內(nèi)。
權(quán)利要求
1.ー種在交換機(jī)上實(shí)現(xiàn)ARP欺騙檢測(cè)的方法,其特征在于具體步驟如下 (1)在交換機(jī)中,建立報(bào)文分發(fā)模塊、ARP欺騙檢測(cè)模塊、告警模塊,以及ARP表;其中報(bào)文分發(fā)模塊用于檢測(cè)報(bào)文類(lèi)型,判斷是否ARP報(bào)文;ARP欺騙檢測(cè)模塊負(fù)責(zé)檢測(cè)ARP報(bào)文,判斷是否存在ARP欺騙;告警模塊用于提示管理員;ARP表用于緩存接收到的ARP報(bào)文中的IP/MAC地址對(duì),由若干ARP記錄組成,每條ARP記錄包括從ARP報(bào)文中取出的IP/MAC地址對(duì),以及收到ARP報(bào)文的時(shí)間,交換機(jī)上電時(shí)ARP表為空表; (2)交換機(jī)上電后,報(bào)文分發(fā)模塊進(jìn)入工作狀態(tài),報(bào)文分發(fā)模塊判斷交換機(jī)輸入的所有報(bào)文類(lèi)型,如果不是ARP應(yīng)答報(bào)文則檢測(cè)下ー報(bào)文;如果是ARP應(yīng)答報(bào)文,則判斷是否發(fā)生了 ARP風(fēng)暴,如果是ARP風(fēng)暴,則通過(guò)告警模塊提示管理員;如果不是ARP風(fēng)暴,則將報(bào)文分發(fā)給ARP欺騙檢測(cè)模塊。
(3)當(dāng)ARP欺騙檢測(cè)模塊接收到ARP應(yīng)答報(bào)文后,從中提取IP地址和MAC地址; (4)ARP欺騙檢測(cè)模塊查找在ARP表中是否存在與ARP應(yīng)答報(bào)文的IP地址相同的記錄如果找不到,則用ARP應(yīng)答報(bào)文的IP地址、MAC地址和當(dāng)前時(shí)間組成一條記錄,添加到ARP表中;如果能找到,則從ARP表中的記錄中取出MAC地址,判斷ARP表中的MAC地址與從ARP應(yīng)答報(bào)文中提取的MAC地址是否相同,如果相同,則用當(dāng)前時(shí)間更新ARP表中的記錄中的時(shí)間,如果不同,則表明接收的IP地址對(duì)應(yīng)的ARP表中的記錄中的MAC地址已經(jīng)改變;繼續(xù)取出ARP表中的記錄中的時(shí)間,并計(jì)算當(dāng)前時(shí)間與ARP表中的記錄中時(shí)間的差值,當(dāng)差值高于閾值吋,則是正常的ARP應(yīng)答報(bào)文,此時(shí)用ARP應(yīng)答報(bào)文中的MAC地址和當(dāng)前時(shí)間更新ARP表中的記錄中的相應(yīng)字段,當(dāng)差值低于上述閾值時(shí),則發(fā)生了 ARP欺騙,其中,閾值設(shè)置為10_500ms ; (5)當(dāng)檢測(cè)到ARP欺騙后,通過(guò)告警模塊提示管理員;或記錄日志文件,以便管理員查閱;或切斷相應(yīng)端ロ的連接,避免造成損失。
(6)ARP欺騙檢測(cè)中使用的閾值,其含義為從同一 IP地址接收到兩次相鄰ARP報(bào)文之間的合理間隔,該值可由網(wǎng)絡(luò)管理員根據(jù)網(wǎng)絡(luò)狀況進(jìn)行設(shè)置。
2.根據(jù)權(quán)利要求1所說(shuō)的ー種在交換機(jī)上實(shí)現(xiàn)ARP欺騙檢測(cè)的方法,其特征在于所說(shuō)的時(shí)間,可以是絕對(duì)時(shí)間,也可以是標(biāo)識(shí)交換機(jī)啟動(dòng)時(shí)間的計(jì)數(shù)器。
全文摘要
本發(fā)明公開(kāi)了一種在交換機(jī)上實(shí)現(xiàn)ARP欺騙檢測(cè)的方法,具體步驟如下將交換機(jī)輸入送入到報(bào)文分發(fā)模塊;當(dāng)檢測(cè)到進(jìn)入的報(bào)文為ARP報(bào)文時(shí),報(bào)文分發(fā)模塊判斷是否發(fā)生了ARP風(fēng)暴,若是則通過(guò)告警模塊進(jìn)行提示,否則將ARP報(bào)文分發(fā)給ARP欺騙檢測(cè)模塊;ARP欺騙檢測(cè)模塊通過(guò)ARP表記錄的信息判斷是否發(fā)生了ARP欺騙,若是則記錄欺騙事件,并通過(guò)告警模塊進(jìn)行提示。采用本發(fā)明能夠解決相關(guān)技術(shù)中安全性低、成本高等劣勢(shì),以極為經(jīng)濟(jì)的方式解決ARP欺騙問(wèn)題。
文檔編號(hào)H04L29/06GK103051597SQ20111031326
公開(kāi)日2013年4月17日 申請(qǐng)日期2011年10月14日 優(yōu)先權(quán)日2011年10月14日
發(fā)明者王鐘穎 申請(qǐng)人:國(guó)家納米技術(shù)與工程研究院