文|李海波
ARP欺騙是一種常見的網(wǎng)絡(luò)欺騙行為。利用ARP協(xié)議的安全缺陷,攻擊者能夠?qū)π@網(wǎng)進行各種攻擊,因此校園網(wǎng)面臨嚴(yán)重威脅。本文在分析ARP協(xié)議工作原理和攻擊方式的基礎(chǔ)上,詳細(xì)討論了幾種基于ARP協(xié)議的校園網(wǎng)防御策略,以期為校園網(wǎng)的安全建設(shè)提供參考。
校園網(wǎng)是為學(xué)校師生提供教學(xué)、科研等服務(wù)的網(wǎng)絡(luò)。校園網(wǎng)的安全直接影響到師生的工作和生活?;贏RP的攻擊是校園網(wǎng)中一種危害較大、技術(shù)較簡單的攻擊方式。本文研究了基于ARP欺騙的校園網(wǎng)攻擊與防御方法,希望能給廣大的師生一個提醒,防止自己的計算機系統(tǒng)受到攻擊。
ARP(地址解析協(xié)議)是一種將IP地址轉(zhuǎn)化成物理地址(MAC地址)的協(xié)議。在局域網(wǎng)中,如果一臺主機想與另一臺主機通信,它必須知道目標(biāo)主機的MAC地址。顯然,在雙方通信之前,發(fā)送方無法知道目標(biāo)主機的MAC地址,其獲取是通過地址解析過程完成的。ARP協(xié)議的基本功能是通過目標(biāo)主機的IP地址查詢目標(biāo)主機的MAC地址,以保證通信的順利進行。
當(dāng)兩臺計算機相互通信時,通常需要首先對它們進行身份認(rèn)證。身份認(rèn)證是一個使用網(wǎng)絡(luò)上的計算機相互識別的過程。認(rèn)證過程結(jié)束后,獲準(zhǔn)相互通信的計算機將建立相互信任的關(guān)系。欺騙本質(zhì)上是一種偽裝成他人身份并通過計算機身份認(rèn)證騙取計算機信任的攻擊。針對認(rèn)證機制的缺陷,攻擊者將自己偽裝成可信方,與受害者進行通信,最終竊取信息或進行進一步攻擊。
ARP欺騙指的是利用ARP協(xié)議中的缺陷將自己偽裝成“中間人”。其原理簡單,易于實現(xiàn)。目前,它被廣泛使用。攻擊者通常使用這種攻擊方法來監(jiān)視數(shù)據(jù)信息并獲取局域網(wǎng)中的信息消息。ARP欺騙不會使網(wǎng)絡(luò)無法正常通信,而是通過冒充網(wǎng)關(guān)或其他主機,使數(shù)據(jù)通過攻擊主機轉(zhuǎn)發(fā)到網(wǎng)關(guān)或主機,從而得到機密信息。
假設(shè)局域網(wǎng)內(nèi)有主機A、主機B和網(wǎng)關(guān)C。主機A為Kali攻擊機,IP地址為192.168.72.138;主機B為被攻擊主機,IP地址為192.168.72.130;網(wǎng)關(guān)C的IP地址為192.168.72.2。
在主機B命令提示符輸入arp –a,得知此時網(wǎng)關(guān)C(192.168.72.2)對應(yīng)的MAC地址為00-50-56-f8-d5-d0,如圖1所示。
圖1 攻擊前被攻擊主機ARP緩存表
在主機A的Kali終端中,輸入命令“cat /proc/sys/net/ipv4/ip_forward”查看路由轉(zhuǎn)發(fā)功能是否開啟,如果返回“0”,則輸入命令“echo 1 >/proc/sys/net/ipv4/ip_forward”開啟路由轉(zhuǎn)發(fā)功能(該命令為臨時命令,重啟系統(tǒng)后恢復(fù)為0)。
系統(tǒng)默認(rèn)設(shè)置為0,若想讓目標(biāo)機斷網(wǎng)就要設(shè)置為0,想抓取數(shù)據(jù)就要設(shè)置為1。
把被欺騙的主機加入Target1,網(wǎng)關(guān)加入Target2,如圖2所示。
圖2 攻擊主機操作ettercap界面
圖3 受到攻擊后被攻擊主機ARP緩存表
這樣,主機B(正常工作的主機)發(fā)送到網(wǎng)關(guān)C的數(shù)據(jù)將被發(fā)送到攻擊者的主機A,網(wǎng)關(guān)C發(fā)送到主機B的數(shù)據(jù)也將被發(fā)送到主機A。因此,攻擊者A成為主機B與C之間的“中間人”,攻擊者可以破壞或獲取信息。
這個是流傳最廣的方法,主機B用管理員身份在命令提示符下執(zhí)行arp -s 192.168.72.2 00-50-56-f8-d5-d0。在Windows Vista 以上系統(tǒng)中,出現(xiàn)提示:ARP 項添加失敗: 拒絕訪問。鑒于目前系統(tǒng)大部分為WIN7和WIN10,因此方法不可行。
1.主機B在命令提示符下輸入netsh i i show in ,查看本地網(wǎng)卡對應(yīng)的"Idx"值為4,如圖4所示。
圖4 netsh命令查看網(wǎng)卡Idx值
2.主機B用管理員身份在命令提示符下執(zhí)行netsh -c"i i" add ne 4 192.168.72.2 00-50-56-f8-d5-d0,此命令默認(rèn)是永久生效,即使重啟系統(tǒng)。
3.主機A用ettercap攻擊,在主機B中再查看ARP緩存表,MAC地址沒有被替換,如圖5所示,因此該方法可行。
圖5 netsh綁定IP和MAC后受到攻擊時被攻擊主機ARP緩存表
在主機B安裝360安全衛(wèi)士等防御工具。打開360安全衛(wèi)士,點擊功能大全,點擊左側(cè)“網(wǎng)絡(luò)”選項,右側(cè)選擇“流量防火墻”,點擊“局域網(wǎng)防護”,點擊“立即開啟”,如圖6所示。
圖6 360安全衛(wèi)士開啟局域網(wǎng)防護
受到攻擊后,出現(xiàn)彈窗提醒,如圖7所示。
圖7 360安全衛(wèi)士受到攻擊時彈窗提醒
在主機B中查看ARP緩存表,MAC地址沒有被替換,還是和圖5一樣,因此該方法可行。
總之,校園網(wǎng)的安全性非常重要。校園網(wǎng)作為一個大型局域網(wǎng),非常容易受到ARP攻擊。本文采用的ARP欺騙防御方法對校園網(wǎng)建設(shè)具有一定的應(yīng)用價值。