專利名稱::一種防止局域網(wǎng)arp欺騙攻擊的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及網(wǎng)絡(luò)安全領(lǐng)域,尤其涉及一種網(wǎng)絡(luò)中防止ARP地址欺騙攻擊的方法和系統(tǒng)。
背景技術(shù):
:在目前的網(wǎng)絡(luò)環(huán)境下,ARP(AddressResolutionProtocol,土也址角軍析協(xié)議)是一個位于TCP/IP協(xié)議棧中的底層協(xié)議,其作用是將IP地址轉(zhuǎn)換為相應(yīng)物理地址。ARP協(xié)議的基本功能就是通過目標設(shè)備的IP地址,査詢目標設(shè)備的MAC地址,以保證通信的進行。ARP協(xié)議在網(wǎng)絡(luò)中的主要實現(xiàn)機制如下每套主機都有一個地址解析協(xié)議ARP緩存表,表內(nèi)的IP地址、MAC地址——對應(yīng),代表了終端設(shè)備IP地址與MAC地址映射關(guān)系。ARP報文具備動態(tài)學習的方式,終端設(shè)備在接收到其他終端設(shè)備的ARP報文之后,會將該報文中其他設(shè)備的IP、MAC映射關(guān)系與自身ARP緩存表中的數(shù)據(jù)進行比較并更新;該映射關(guān)系還可以通過用戶靜態(tài)配置的方式獲取,允許用戶創(chuàng)建ARP表項并對應(yīng)的填寫IP、MAC地址。由于在ARP協(xié)議設(shè)計之初沒有充分考慮協(xié)議的安全性問題,因此在復(fù)雜的網(wǎng)絡(luò)環(huán)境下ARP協(xié)議是一個非常容易受攻擊的協(xié)議,該協(xié)議為各種地址欺騙攻擊留下了可乘之機。ARP攻擊就是通過偽造IP地址和MAC地址實現(xiàn)ARP欺騙,能夠在網(wǎng)絡(luò)中產(chǎn)生大量的ARP通信量使網(wǎng)絡(luò)阻塞,攻擊者只要持續(xù)不斷的發(fā)出偽造的ARP響應(yīng)包就能更改目標主機ARP緩存中的IP-MAC條目,造成網(wǎng)絡(luò)中斷或中間人攻擊。目前,為了解決局域網(wǎng)內(nèi)主機遭受ARP欺騙的問題,一般采用以下幾種方法1.發(fā)送免費ARP報文該方案由交換機、路由器等網(wǎng)絡(luò)設(shè)備,不停的向局域網(wǎng)以廣播方式發(fā)送ARP響應(yīng)報文,使局域網(wǎng)中的每個終端不停的刷新自己的網(wǎng)關(guān)IP、MAC地址映射表,從而緩解局域網(wǎng)中主機冒充網(wǎng)關(guān)進行ARP欺騙,這種方法存在一定的缺陷,大量報文的發(fā)送會影響網(wǎng)絡(luò)報文的轉(zhuǎn)發(fā)、傳輸,降低網(wǎng)絡(luò)性能。2.主動發(fā)包驗證該方案中的網(wǎng)絡(luò)設(shè)備一般部署在網(wǎng)關(guān)上,該網(wǎng)絡(luò)設(shè)備在收到ARP請求報文或響應(yīng)報文后,根據(jù)該ARP報文中的IP地址不斷的向該IP地址發(fā)送請求報文以驗證映射關(guān)系的正確性,如果該IP地址不存在,網(wǎng)絡(luò)設(shè)備將收不到該IP地址對應(yīng)的ARP響應(yīng)報文;如果該IP地址對應(yīng)的緩存表項中的MAC地址被欺騙了,網(wǎng)絡(luò)設(shè)備會收到一個具有不同MAC地址的ARP響應(yīng)報文,這兩種情況下網(wǎng)絡(luò)設(shè)備都會檢測到ARP欺騙的發(fā)生,從而進行相應(yīng)的處理。這種方案的缺點是對于每個IP地址的ARP報文都要進行一次這樣的驗證過程,在沒有欺騙攻擊發(fā)生的情況下會降低網(wǎng)絡(luò)的性能,此方案也僅僅限于網(wǎng)關(guān)級的防御,缺乏對網(wǎng)內(nèi)終端節(jié)點的全面防護。3.粘性學習特性啟用粘性學習特性后,通過ARP請求報文或通過ARP響應(yīng)報文學習到的ARP緩存表項在老化之前均不再更新,在老化時間到達后該ARP緩存表項被刪除,此時即可開始新的學習過程,這種實現(xiàn)方法存在著一定的問題,一旦ARP攻擊報文先于正常ARP報文生成了ARP緩存表,正常主機將無法在網(wǎng)絡(luò)設(shè)備中形成正確的ARP緩存表,無法達到防止ARP欺騙的目的,影響正常主機的使用。
發(fā)明內(nèi)容為了彌補現(xiàn)有技術(shù)的缺點,本發(fā)明提出了一種局域網(wǎng)防止ARP欺騙攻擊的方法,采用自定義地址解析協(xié)議映射關(guān)系,該映射關(guān)系只有服務(wù)程序可以修改,5不隨ARP報文攜帶的信息而改變,從而保證地址解析映射關(guān)系的真實性。由于加上對應(yīng)主機的關(guān)系,所以能準確定位到發(fā)起攻擊或欺騙的機器,有效防御局域網(wǎng)內(nèi)ARP欺騙、攻擊。本發(fā)明解決其技術(shù)問題采用的技術(shù)方案是一種防止局域網(wǎng)ARP欺騙攻擊的方法,包括對從本機發(fā)送和本機接收的ARP包中IP-MAC地址解析映射關(guān)系與自定義IP-MAC地址解析映射表進行匹配。若發(fā)送或接收到的ARP請求報文中的IP-MAC地址映射關(guān)系與自定義IP-MAC地址解析映射關(guān)系表匹配則予以放行;不匹配則丟棄并對攻擊源進行定位。通過自定義地址解析映射關(guān)系表中機器的性質(zhì)判斷攻擊或欺騙的類型,根據(jù)自定義地址解析映射關(guān)系表中的關(guān)系定位攻擊的終4山頓。本發(fā)明實施例還提供一種防止局域網(wǎng)ARP欺騙攻擊的系統(tǒng),包括判斷單元分為發(fā)送包判斷單元和接收包判斷單元,主要是用來區(qū)分本機發(fā)送還是本機接收ARP包。規(guī)則映射修正單元主要維護一張地址解析映射表,該映射表與管理員定義的地址解析映射表始終同步,保持一致,不隨網(wǎng)絡(luò)中的ARP包數(shù)據(jù)的改變而改變。驗證單元的作用是根據(jù)規(guī)則映射修正單元所維護的地址解析映射表來判斷發(fā)送或接收數(shù)據(jù)包是否可信,給出系統(tǒng)驗證結(jié)果。分析單元根據(jù)驗證單元所返回的驗證結(jié)果,査找攻擊類型表,給出明確的攻擊類型,方便管理員明確攻擊方式,并給出最有效的解決方案。執(zhí)行定位單元根據(jù)比較結(jié)果執(zhí)行放行或丟棄操作,對于惡意ARP包可通過查找地址解析映射表進行定位。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果從源頭上杜絕了ARP的發(fā)送,有效的節(jié)省網(wǎng)絡(luò)帶寬,減少了網(wǎng)絡(luò)資源的浪費;而自定義地址解析協(xié)議映射關(guān)系,不隨ARP報文攜帶的信息而改變,從而保證地址解析映射關(guān)系的真實性,徹底阻斷ARP欺騙的發(fā)生。圖l為本發(fā)明的方法流程示意圖圖2為本發(fā)明的系統(tǒng)結(jié)構(gòu)示意圖具體實施例方式下面結(jié)合附圖和實施例對本發(fā)明做進一步的詳細說明如圖1所示為本發(fā)明方法流程示意圖,圖中包括步驟ll,匹配映射表。對從本機發(fā)送和本機接收的ARP包中IP-MAC地址解析映射關(guān)系的與自定義IP-MAC地址解析映射表進行匹配。每個終端的自定義地址解析映射表與服務(wù)程序中的IP-MAC地址解析映射表始終一致,管理員具有修改自定義地址解析映射表的權(quán)限,終端主機用戶不可修改,該自定義地址解析映射表不隨網(wǎng)絡(luò)中的ARP報文的信息而改變。若發(fā)送或接收到的ARP請求報文中的IP-MAC地址映射關(guān)系與管理員設(shè)定的IP-MAC地址解析映射關(guān)系表匹配則確定該ARP請求報文可靠,執(zhí)行步驟12;不匹配則確定該ARP請求報文存在歧義,執(zhí)行步驟13。步驟12,放行數(shù)據(jù)包。確認發(fā)送或接收到的ARP請求報文中的IP-MAC地址映射關(guān)系與自定義地址解析映射關(guān)系表匹配,不予處理,對該ARP包放行。步驟13,分析攻擊行為。確認發(fā)送或接收到的ARP請求報文中的IP-MAC地址映射關(guān)系與自定義地址解析映射關(guān)系表不匹配,對該攻擊行為進行分析,通過自定義地址解析映射關(guān)系表中機器的性質(zhì)判斷攻擊或欺騙的類型。步驟14,定位攻擊目標。根據(jù)自定義地址解析映射關(guān)系表中的關(guān)系定位攻擊的終端,通知服務(wù)程序和攻擊終端。由于映射表是服務(wù)程序建立的,終端程序保證IP-MAC對應(yīng)關(guān)系的唯一性,這樣可以精確的定位攻擊或欺騙的終端,從發(fā)送端杜絕ARP包的傳播可減少ARP包的網(wǎng)絡(luò)流量,節(jié)省網(wǎng)絡(luò)帶寬。步驟15,丟棄攻擊包。丟棄不相匹配的數(shù)據(jù)包,在對不匹配的ARP數(shù)據(jù)包進行分析定位后執(zhí)行丟棄操作,阻止其到達終端主機。如圖2所示為本發(fā)明的系統(tǒng)結(jié)構(gòu)示意圖,包括判斷單元、規(guī)則映射修正單元、驗證單元、比較單元、執(zhí)行定位單元。其中判斷單元分為發(fā)送包判斷單元和接受包判斷單元,主要是用來區(qū)分本機發(fā)送還是本機接收ARP包,減少網(wǎng)絡(luò)帶寬和性能的浪費。規(guī)則映射修正單元主要維護一張地址解析映射表,該映射表與管理員定義的地址解析映射表始終同步,保持一致,不隨網(wǎng)絡(luò)中的ARP包的數(shù)據(jù)改變而改變,而且只有管理員具有修改的權(quán)限,終端主機用戶不可修改。驗證單元的作用是根據(jù)規(guī)則映射修正單元所維護的地址解析映射表來判斷發(fā)送或接收數(shù)據(jù)包是否可信,給出系統(tǒng)驗證結(jié)果。分析單元根據(jù)驗證單元所返回的驗證結(jié)果,査找攻擊類型表,給出明確的攻擊類型,方便管理員明確攻擊方式,并給出最有效的解決方案。執(zhí)行定位單元根據(jù)比較結(jié)果執(zhí)行相應(yīng)的操作,若發(fā)送或接收數(shù)據(jù)包中的IP-MAC地址映射關(guān)系與規(guī)則映射修正單元的地址解析映射表匹配則予以放行;否則丟棄并通過査找地址解析映射表定位攻擊源頭,將所發(fā)生的攻擊事件相關(guān)詳細信息提示給用戶。為了進一步描述本發(fā)明實施例,現(xiàn)結(jié)合具體的實施例對其技術(shù)方案做進一步的說明,以防止ARP欺騙攻擊為例進行說明如下在以太網(wǎng)中,一個主機將與另一個主機直接通信,必須獲知目標主機的MAC地址,此目標主機的MAC地址通過地址解析協(xié)議ARP協(xié)議獲得。ARP協(xié)議的基本功能就是通過目標設(shè)備的IP地址査詢目標設(shè)備的MAC地址,以保證網(wǎng)絡(luò)的正常通信。假設(shè)局域網(wǎng)內(nèi)有A、B、C三臺主機,在部署前管理員根據(jù)局域網(wǎng)內(nèi)主機信息更新了自定義地址解析協(xié)議映射表,表內(nèi)的IP地址與MAC地址一一對應(yīng),如下表l自定義地址解析協(xié)議映射表<table>tableseeoriginaldocumentpage9</column></row><table>局域網(wǎng)內(nèi)的每臺主機都部署了ARP攻擊防御系統(tǒng),都有一個與自定義地址解析映射表相同的關(guān)系表,如表l。以主機A(192.168.1.5)向主機B(192.168.1.1)發(fā)送數(shù)據(jù)為例。當發(fā)送數(shù)據(jù)時,主機A會在自己的ARP緩存表中尋找是否有目標IP地址,找到了目標IP地址就知道了目標主機對應(yīng)的MAC地址,主機A直接把目標主機的MAC地址寫入幀里面發(fā)送;如果在ARP緩存表里面沒有目標主機的IP地址,主機A在網(wǎng)絡(luò)上廣播一個ARP請求報文(攜帶主機A的IP地址192.168.1.5—MAC地址aa-aa-aa-aa-aa-aa-aa),這時主機A的IP-MAC映射表會與主機A上自定義地址解析映射關(guān)系表進行匹配,如不匹配則丟棄,如匹配則對該ARP數(shù)據(jù)包放行。在該ARP數(shù)據(jù)包達到主機B時,請求IP地址為192.168.1.1的主機B回答物理地址,這時主機A的IP-MAC映射表會與主機B上管理員自定義地址解析映射關(guān)系表進行匹配,如不匹配則丟棄,如匹配則對該ARP數(shù)據(jù)包放行,這時主機B會向A主機發(fā)回一個ARP響應(yīng)報文,這樣主機A就知道了主機B的MAC地址為bb-bb-bb-bb-bb-bb-bb,就可以向主機B發(fā)送信息了。這樣雙向攔截本機和外部ARP攻擊,保證每臺主機的安全性??捎行У墓?jié)省網(wǎng)絡(luò)帶寬,減少了網(wǎng)絡(luò)資源的浪費;自定義地址解析協(xié)議映射關(guān)系表不隨ARP報文攜帶的信息而改變,從而保證地址解析映射關(guān)系的真實性,徹底阻斷ARP欺騙的發(fā)生。綜上所述,本發(fā)明實施例能避免在遭受大流量地址欺騙攻擊時主動驗證方案對CPU資源的消耗,在不影響用戶使用的情況下徹底阻止ARP欺騙攻擊。以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。權(quán)利要求1.一種防止局域網(wǎng)ARP欺騙攻擊的方法,其特征在于,包括對本機發(fā)送和本機接收的ARP包中IP-MAC地址映射關(guān)系與自定義IP-MAC地址解析映射表進行匹配,若發(fā)送或接收到的ARP請求報文中的IP-MAC地址映射關(guān)系與自定義IP-MAC地址解析映射關(guān)系表匹配則予以放行;不匹配則對攻擊源進行分析和定位并丟棄。2.如權(quán)利要求1所述的方法,其特征在于,所述自定義IP-MAC地址解析映射表是服務(wù)程序所維護的IP-MAC映射關(guān)系表,只有管理員可修改該映射表從而保證該表的唯一性。3.如權(quán)利要求1所述的方法,其特征在于,所述匹配是指對從某終端主機發(fā)送或接收的ARP包中的地址解析映射關(guān)系與服務(wù)程序中預(yù)先設(shè)定好的局域網(wǎng)內(nèi)可信任地址解析映射關(guān)系表進行匹配。4.如權(quán)利要求3所述的方法,其特征在于,包括發(fā)送或接收到的ARP請求報文中的IP-MAC地址映射與服務(wù)程序中的IP-MAC地址解析映射表匹配,則對該ARP請求報文放行;發(fā)送或接收到的ARP請求報文中的IP-MAC地址映射與服務(wù)程序中的IP-MAC地址解析映射表不匹配,則對該ARP請求報文進行分析定位并丟棄。5.如權(quán)利要求4所述的方法,其特征在于,所述分析定位是通過自定義地址解析映射關(guān)系表中的關(guān)系進行分析定位。6.—種防止局域網(wǎng)ARP欺騙攻擊的系統(tǒng),其特征在于,包括判斷單元分為發(fā)送包判斷和接受包判斷,主要是用來區(qū)分本機發(fā)送還是本機接收到其他主機的ARP包。7.如權(quán)利耍求6所述的系統(tǒng),其特征在于,還包括規(guī)則映射修正單元主要維護一張地址解析映射表,該映射表與服務(wù)程序中的地址解析映射表始終同步,不隨網(wǎng)絡(luò)中的ARP包的數(shù)據(jù)改變而改變,而且只有管理員具有修改的權(quán)限,終端主機用戶不可修改。8.如權(quán)利要求6所述的系統(tǒng),其特征在于,還包括驗證單元的作用是根據(jù)規(guī)則映射修正單元所維護的地址解析映射表來判斷發(fā)送或接收數(shù)據(jù)包是否可信,給出系統(tǒng)驗證結(jié)果。9.如權(quán)利要求6所述的系統(tǒng),其特征在于,還包括分析單元根據(jù)驗證單元所返回的驗證結(jié)果,查找攻擊類型表,給出明確的攻擊類型及有效的解決方案。10.如權(quán)利要求6所述的系統(tǒng),其特征在于,還包括執(zhí)行定位單元根據(jù)比較結(jié)果執(zhí)行相應(yīng)的操作,若發(fā)送或接收數(shù)據(jù)包中的IP-MAC地址映射關(guān)系與規(guī)則映射修正單元的地址解析映射表匹配則予以放行;否則丟棄并通過査找地址解析映射表定位攻擊源。全文摘要本發(fā)明公開了一種防止局域網(wǎng)ARP欺騙攻擊的方法,其關(guān)鍵是在局域網(wǎng)內(nèi)的終端主機的網(wǎng)卡和操作系統(tǒng)間布置了一個定義好的地址解析映射表,保證每臺終端只有唯一的IP和MAC映射關(guān)系,并且由服務(wù)程序來確保映射表的正確性,終端主機發(fā)送和接收的ARP包都要與該映射表進行匹配,從而確定ARP是否可信。本發(fā)明還公開了一種防止局域網(wǎng)ARP攻擊的系統(tǒng),通過本發(fā)明使得局域網(wǎng)內(nèi)的終端主機能夠防御本機和外部的ARP攻擊。文檔編號H04L29/06GK101635713SQ20091008629公開日2010年1月27日申請日期2009年6月9日優(yōu)先權(quán)日2009年6月9日發(fā)明者鳴朱申請人:北京安天電子設(shè)備有限公司