文|李海波
ARP欺騙是一種常見的網絡欺騙行為。利用ARP協議的安全缺陷,攻擊者能夠對校園網進行各種攻擊,因此校園網面臨嚴重威脅。本文在分析ARP協議工作原理和攻擊方式的基礎上,詳細討論了幾種基于ARP協議的校園網防御策略,以期為校園網的安全建設提供參考。
校園網是為學校師生提供教學、科研等服務的網絡。校園網的安全直接影響到師生的工作和生活。基于ARP的攻擊是校園網中一種危害較大、技術較簡單的攻擊方式。本文研究了基于ARP欺騙的校園網攻擊與防御方法,希望能給廣大的師生一個提醒,防止自己的計算機系統受到攻擊。
ARP(地址解析協議)是一種將IP地址轉化成物理地址(MAC地址)的協議。在局域網中,如果一臺主機想與另一臺主機通信,它必須知道目標主機的MAC地址。顯然,在雙方通信之前,發送方無法知道目標主機的MAC地址,其獲取是通過地址解析過程完成的。ARP協議的基本功能是通過目標主機的IP地址查詢目標主機的MAC地址,以保證通信的順利進行。
當兩臺計算機相互通信時,通常需要首先對它們進行身份認證。身份認證是一個使用網絡上的計算機相互識別的過程。認證過程結束后,獲準相互通信的計算機將建立相互信任的關系。欺騙本質上是一種偽裝成他人身份并通過計算機身份認證騙取計算機信任的攻擊。針對認證機制的缺陷,攻擊者將自己偽裝成可信方,與受害者進行通信,最終竊取信息或進行進一步攻擊。
ARP欺騙指的是利用ARP協議中的缺陷將自己偽裝成“中間人”。其原理簡單,易于實現。目前,它被廣泛使用。攻擊者通常使用這種攻擊方法來監視數據信息并獲取局域網中的信息消息。ARP欺騙不會使網絡無法正常通信,而是通過冒充網關或其他主機,使數據通過攻擊主機轉發到網關或主機,從而得到機密信息。
假設局域網內有主機A、主機B和網關C。主機A為Kali攻擊機,IP地址為192.168.72.138;主機B為被攻擊主機,IP地址為192.168.72.130;網關C的IP地址為192.168.72.2。
在主機B命令提示符輸入arp –a,得知此時網關C(192.168.72.2)對應的MAC地址為00-50-56-f8-d5-d0,如圖1所示。

圖1 攻擊前被攻擊主機ARP緩存表
在主機A的Kali終端中,輸入命令“cat /proc/sys/net/ipv4/ip_forward”查看路由轉發功能是否開啟,如果返回“0”,則輸入命令“echo 1 >/proc/sys/net/ipv4/ip_forward”開啟路由轉發功能(該命令為臨時命令,重啟系統后恢復為0)。
系統默認設置為0,若想讓目標機斷網就要設置為0,想抓取數據就要設置為1。
把被欺騙的主機加入Target1,網關加入Target2,如圖2所示。

圖2 攻擊主機操作ettercap界面

圖3 受到攻擊后被攻擊主機ARP緩存表
這樣,主機B(正常工作的主機)發送到網關C的數據將被發送到攻擊者的主機A,網關C發送到主機B的數據也將被發送到主機A。因此,攻擊者A成為主機B與C之間的“中間人”,攻擊者可以破壞或獲取信息。
這個是流傳最廣的方法,主機B用管理員身份在命令提示符下執行arp -s 192.168.72.2 00-50-56-f8-d5-d0。在Windows Vista 以上系統中,出現提示:ARP 項添加失敗: 拒絕訪問。鑒于目前系統大部分為WIN7和WIN10,因此方法不可行。
1.主機B在命令提示符下輸入netsh i i show in ,查看本地網卡對應的"Idx"值為4,如圖4所示。

圖4 netsh命令查看網卡Idx值
2.主機B用管理員身份在命令提示符下執行netsh -c"i i" add ne 4 192.168.72.2 00-50-56-f8-d5-d0,此命令默認是永久生效,即使重啟系統。
3.主機A用ettercap攻擊,在主機B中再查看ARP緩存表,MAC地址沒有被替換,如圖5所示,因此該方法可行。

圖5 netsh綁定IP和MAC后受到攻擊時被攻擊主機ARP緩存表
在主機B安裝360安全衛士等防御工具。打開360安全衛士,點擊功能大全,點擊左側“網絡”選項,右側選擇“流量防火墻”,點擊“局域網防護”,點擊“立即開啟”,如圖6所示。

圖6 360安全衛士開啟局域網防護
受到攻擊后,出現彈窗提醒,如圖7所示。

圖7 360安全衛士受到攻擊時彈窗提醒
在主機B中查看ARP緩存表,MAC地址沒有被替換,還是和圖5一樣,因此該方法可行。
總之,校園網的安全性非常重要。校園網作為一個大型局域網,非常容易受到ARP攻擊。本文采用的ARP欺騙防御方法對校園網建設具有一定的應用價值。