關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 解析ARP病毒攻擊技術與防御策略

        解析ARP病毒攻擊技術與防御策略

        作者: 時間:2012-10-23 來源:網絡 收藏

        【摘 要】位列十大排行榜第四位,而且目前地址欺騙技術已經被越來越多的所采用,成為病毒發展的一個新趨勢。本文還較深入和直觀地介紹了協議的基本原理、基本工作過程、ARP欺騙技術以及其對策,

        本文引用地址:http://www.104case.com/article/202126.htm

        【關鍵詞】arp協議 arp欺騙

        近年來,arp攻擊十分頻繁,ARP病毒位列十大病毒排行榜第四位,而且目前ARP地址欺騙技術已經被越來越多的病毒所采用,成為病毒發展的一個新趨勢。如何防范arp攻擊越來越受到了網管的重視。

        一、ARP協議工作原理

        在TCP/IP協議中,每一個網絡結點是用IP地址標識的,IP地址是一個邏輯地址。而在以太網中數據包是靠48位MAC地址(物理地址)尋址的。因此,必須建立IP地址與MAC地址之間的對應(映射)關系,ARP協議就是為完成這個工作而設計的。

        TCP/IP協議棧維護著一個ARP cache表,在構造網絡數據包時,首先從ARP表中找目標IP對應的MAC地址,如果找不到,就發一個ARP request廣播包,請求具有該IP地址的主機報告它的MAC地址,當收到目標IP所有者的ARP reply后,更新ARP cache.ARP cache有老化機制。

        ARP協議是建立在信任局域網內所有結點的基礎上的,它很高效,但卻不安全。它是無狀態的協議,不會檢查自己是否發過請求包,也不管(其實也不知道)是否是合法的應答,只要收到目標MAC是自己的ARP reply包或arp廣播包(包括ARP request和ARP reply),都會接受并緩存。這就為ARP欺騙提供了可能,惡意節點可以發布虛假的ARP報文從而影響網內結點的通信,甚至可以做“中間人”。

        二、ARP病毒分析

        當局域網內某臺主機運行ARP欺騙的木馬程序時,會欺騙局域網內所有主機和路由器,讓所有上網的流量必須經過病毒主機。其他用戶原來直接通過路由器上網現在轉由通過病毒主機上網,切換的時候用戶會斷一次線。切換到病毒主機上網后,如果用戶已經登陸了傳奇服務器,那么病毒主機就會經常偽造斷線的假像,那么用戶就得重新登錄傳奇服務器,這樣病毒主機就可以盜號了。

        下面就BKDR_NPFECT.A病毒進行分析

        1.病毒的組件

        本文研究的病毒樣本有三個組件構成:

        %windows%““SYSTEM32““LOADHW.EXE(108,386 bytes)……病毒組件釋放者”

        %windows%““System32““drivers““npf.sys(119,808 bytes)……“發ARP欺騙包的驅動程序”

        %windows%““System32““msitinit.dll (39,952 bytes)……“命令驅動程序發ARP欺騙包的控制者”

        2.病毒運作基理

        LOADHW.EXE執行時會釋放兩個組件npf.sys和msitinit.dll。

        LOADHW.EXE釋放組件后即終止運行。

        注意:病毒假冒成winPcap的驅動程序,并提供winPcap的功能。客戶若原先裝有winPcap,npf.sys將會被病毒文件覆蓋掉。隨后msitinit.dll將npf.sys注冊(并監視)為內核級驅動設備:“NetGroup Packet Filter Driver”msitinit.dll還負責發送指令來操作驅動程序npf.sys (如發送APR欺騙包,抓包,過濾包等)以下從病毒代碼中提取得服務相關值:BinaryPathName=system32““drivers““npf.sysStartType= SERVICE_AUTO_STARTServiceType=SERVICE_KERNEL_DRIVERDesiredAccess= SERVICE_ALL_ACCESSDisplayName = NetGroup Packet Filter DriverServiceName = Npf并將LOADHW.EXE注冊為自啟動程序:[HKEY_LOCAL_MACHINE““SOFTWARE““Microsoft“““CurrentVersion““RunOnce] dwMyTest =LOADHW.EXE注:由于該項位于RunOnce下,該注冊表啟動項在每次執行后,即會被系統自動刪除。

        三、查找ARP攻擊源頭

        定位ARP攻擊源頭

        主動定位方式:因為所有的ARP攻擊源都會有其特征——網卡會處于混雜模式,可以通過ARPKiller這樣的工具掃描網內有哪臺機器的網卡是處于混雜模式的,從而判斷這臺機器有可能就是“元兇”。

        被動定位方式:在局域網發生ARP攻擊時,查看交換機的動態ARP表中的內容,確定攻擊源的MAC地址;也可以在局域居于網中部署Sniffer工具,定位ARP攻擊源的MAC。

        使用NBTSCAN可以取到PC的真實IP地址、機器名和MAC地址,如果有“ARP攻擊”在做怪,可以找到裝有ARP攻擊的PC的IP、機器名和MAC地址。

        命令:“nbtscan -r 192.168.16.0/24”(搜索整個192.168.16.0/24網段,即192.168.16.1-192.168.16.254);或“nbtscan 192.168.16.25-137”搜索192.168.16.25-137網段,即192.168.16.25-192.168.16.137。輸出結果第一列是IP地址,最后一列是MAC地址。

        四、arp對策

        各種網絡安全的對策都是相對的,主要要看網管平時對網絡安全的重視性了。下面介始一些相應的對策:

        1.在系統中建立靜態ARP表,建立后對本身自已系統影響不大的,對網絡影響較大,破壞了動態ARP解析過程。靜態ARP協議表不會過期的,我們用“arp–d”命令清除ARP表,即手動刪除。但是有的系統的靜態ARP表項可以被動態刷新,如Solaris系統,那樣的話依靠靜態ARP表項并不能對抗ARP欺騙攻擊,相反縱容了ARP欺騙攻擊,因為虛假的靜態ARP表項不會自動超時消失。

        2.在相對系統中禁止某個網絡接口做ARP解析(對抗ARP欺騙攻擊),可以做靜態ARP協議設置(因為對方不會響應ARP請求報文)如:arp -s XXX.XXX.XX.X 08-00-20-a8-2e-ac。

        在絕大多數操作系統如:Unix、BSD、NT等,都可以結合“禁止相應網絡接口做ARP解析”和“使用靜態ARP表”的設置來對抗ARP欺騙攻擊。而Linux系統,其靜態ARP表項不會被動態刷新,所以不需要“禁止相應網絡接口做ARP解析”即可對抗ARP欺騙攻擊。

        參考文獻:

        [1]徐冠軍.一個ARP欺騙問題的分析和解決辦法[J].江蘇通信技術,2005,

        tcp/ip相關文章:tcp/ip是什么



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 土默特右旗| 金溪县| 兴安县| 当雄县| 定安县| 黄山市| 奈曼旗| 毕节市| 三都| 镇江市| 普格县| 镇安县| 扎囊县| 甘谷县| 南皮县| 北票市| 康乐县| 华池县| 孟连| 沿河| 英德市| 安吉县| 大同市| 腾冲县| 嘉禾县| 寻乌县| 柏乡县| 浠水县| 阿拉尔市| 水城县| 扬州市| 罗平县| 张家港市| 贡觉县| 焉耆| 岐山县| 盖州市| 泰兴市| 偃师市| 海南省| 方城县|