郭籽蔚
(神東煤炭集團(tuán)信息中心,陜西 神木 719315)
ARP(Address Resolution Protocol)地址解析協(xié)議用于將計(jì)算機(jī)的網(wǎng)絡(luò)地址 (IP地址32位)轉(zhuǎn)化為物理地址(MAC地址48位)。
ARP協(xié)議是屬于鏈路層的協(xié)議,在以太網(wǎng)中的數(shù)據(jù)幀從一個(gè)主機(jī)到達(dá)網(wǎng)內(nèi)的另一臺(tái)主機(jī)是根據(jù)48位的以太網(wǎng)地址(硬件地址)來(lái)確定接口的,而不是根據(jù)32位的IP地址。內(nèi)核(如驅(qū)動(dòng))必須知道目的端的硬件地址才能發(fā)送數(shù)據(jù)。當(dāng)然,點(diǎn)對(duì)點(diǎn)的連接是不需要ARP協(xié)議的。
ARP協(xié)議是建立在信任局域網(wǎng)內(nèi)所有結(jié)點(diǎn)的基礎(chǔ)上的,它很高效,但卻不安全。它是無(wú)狀態(tài)的協(xié)議,不會(huì)檢查自己是否發(fā)過(guò)請(qǐng)求包,也不管(其實(shí)也不知道)是否是合法的應(yīng)答,只要收到目標(biāo)MAC是自己的ARP reply包或arp廣播包(包括ARP request和ARP reply),都會(huì)接受并緩存。
假設(shè)一個(gè)網(wǎng)絡(luò)環(huán)境中,網(wǎng)內(nèi)有三臺(tái)主機(jī),分別為主機(jī)A、B、C。主機(jī)詳細(xì)信息如下描述:A 的地址為:IP:192.168.100.1 MAC:AAAA-AA-AA-AA-AA
B 的 地 址 為 :IP:192.168.100.2 MAC:BB-BB-BB-BB-BB-BB
C 的 地 址 為 :IP:192.168.100.3 MAC:CC-CC-CC-CC-CC-CC
正常情況下A和C之間進(jìn)行通訊,但是此時(shí)B向A發(fā)送一個(gè)自己偽造的ARP應(yīng)答,而這個(gè)應(yīng)答中的數(shù)據(jù)為發(fā)送方IP地址是192.168.10.3(C的IP地址),MAC地址是BBBB-BB-BB-BB-BB(C的MAC地址本來(lái)應(yīng)該是CC-CC-CC-CC-CC-CC,這里被偽造了)。當(dāng)A接收到B偽造的ARP應(yīng)答,就會(huì)更新本地的ARP緩存(A被欺騙了),這時(shí)B就偽裝成C了。同時(shí),B同樣向C發(fā)送一個(gè)ARP應(yīng)答,應(yīng)答包中發(fā)送方IP地址四192.168.10.1(A的IP地址),MAC地址是BB-BB-BB-BBBB-BB(A的MAC地址本來(lái)應(yīng)該是AA-AAAA-AA-AA-AA),當(dāng)C收到B偽造的ARP應(yīng)答,也會(huì)更新本地ARP緩存 (C也被欺騙了),這時(shí)B就偽裝成了A。這樣主機(jī)A和C都被主機(jī)B欺騙,A和C之間通訊的數(shù)據(jù)都經(jīng)過(guò)了B。主機(jī)B完全可以知道他們之間說(shuō)的什么。這就是典型的ARP欺騙過(guò)程。
注意:一般情況下,ARP欺騙的某一方應(yīng)該是網(wǎng)關(guān)。
ARP欺騙存在兩種情況:第一種是欺騙主機(jī)作為“中間人”,被欺騙主機(jī)的數(shù)據(jù)都經(jīng)過(guò)它中轉(zhuǎn)一次,這樣欺騙主機(jī)可以竊取到被它欺騙的主機(jī)之間的通訊數(shù)據(jù);第二種是欺騙者偽裝成網(wǎng)關(guān)只欺騙了其中一方,導(dǎo)致被欺騙主機(jī)直接斷網(wǎng)。
筆者所在公司發(fā)生的ARP欺騙攻擊大多是第二種情況。
被攻擊網(wǎng)段內(nèi)的所有計(jì)算機(jī),網(wǎng)絡(luò)5-10分鐘中斷1次,然后過(guò)段時(shí)候又恢復(fù);如果馬上改IP地址,則又恢復(fù)正常通信。
3.2.1 利用計(jì)算機(jī)操作系統(tǒng)自帶工具:
在“開(kāi)始”“程序”“附件”菜單下調(diào)出“命令提示符”。輸入并執(zhí)行以下命令:
Arp-d (清除本機(jī)的arp緩存表)
Arp -s 00-21-5e-c4-4d-5c 192.168.1.254 (綁定網(wǎng)關(guān)的IP地址和正確的物理地址)
因?yàn)槊看沃貑⒂?jì)算機(jī)的時(shí)候,ARP緩存信息都會(huì)被全部清除。所以將這兩條命令做成一個(gè)批處理文件,然后將這個(gè)文件放到系統(tǒng)的啟動(dòng)項(xiàng)中。當(dāng)程序隨系統(tǒng)的啟動(dòng)而加載的話,就可以免除因?yàn)锳RP靜態(tài)映射信息丟失的困擾了。
3.2.2 利用ARP防御軟件:
現(xiàn)在市場(chǎng)上的ARP防御軟件有很多,筆者使用的是一款名為“arp防火墻”的軟件,該軟件不僅可以攔截arp攻擊,還可以定位arp攻擊源??梢杂脕?lái)統(tǒng)一管理單位所有的計(jì)算機(jī)。
3.3.3 利用交換機(jī)綁定IP地址和MAC地址:
現(xiàn)在的交換機(jī)都有IP地址和MAC地址的綁定功能。筆者所在公司使用的是思科系列交換機(jī)。具體配置命令如下:
Route(config)#arp 192.168.1.111 0024.5b 3d.63ed arpa
此方法還可以防止IP地址的非法使用。
這種方式的缺點(diǎn)是初期數(shù)據(jù)錄入工作量大,如果終端計(jì)算機(jī)太多或者更換頻繁,那么網(wǎng)管員將會(huì)不堪重負(fù)。所以這種方法一般用來(lái)綁定重要的服務(wù)器。
以上三種方法,建議普通用戶選擇使用防御軟件,網(wǎng)管可以將防御軟件和交換機(jī)綁定相結(jié)合來(lái)管理整個(gè)單位的網(wǎng)絡(luò)。
ARP欺騙攻擊利用了ARP協(xié)議的漏洞,作為一種底層協(xié)議攻擊,從根源上無(wú)法徹底解決。只能從防御上著手,大力普及計(jì)算機(jī)知識(shí),提高終端用戶的防范意識(shí)和計(jì)算機(jī)使用能力,才能從根本上減少攻擊源。
[1]許穎梅.局域網(wǎng)中ARP欺騙及防范[J].科技經(jīng)濟(jì)市場(chǎng),2007-07-15.