假設(shè):
計算機A的IP為192.168.1.1,MAC地址為00-11-22-33-44-01;
計算機B的IP為192.168.1.2,MAC地址為00-11-22-33-44-02;
ARP工作原理如下:
在TCP/IP協(xié)議中,A給B發(fā)送IP包,在包頭中需要填寫B(tài)的IP為目標(biāo)地址,但這個IP包在以太網(wǎng)上傳輸?shù)臅r候,還需要進行一次以太包的封裝,在這個以太包中,目標(biāo)地址就是B的MAC地址.
計算機A是如何得知B的MAC地址的呢?解決問題的關(guān)鍵就在于ARP協(xié)議。
在A不知道B的MAC地址的情況下,A就廣播一個ARP請求包,請求包中填有B的IP(192.168.1.2),以太網(wǎng)中的所有計算機都會接收這個請求,而正常的情況下只有B會給出ARP應(yīng)答包,包中就填充上了B的MAC地址,并回復(fù)給A。
A得到ARP應(yīng)答后,將B的MAC地址放入本機緩存,便于下次使用。
本機MAC緩存是有生存期的,生存期結(jié)束后,將再次重復(fù)上面的過程。
以上三種方法中,前兩種方法較為常見,第三種方法由于變動較大,適用于技術(shù)能力較佳的應(yīng)用。下面針對前兩種方法加以說明。
PK 賽之"ARP echo"
ARP echo是最早開發(fā)出來的ARP攻擊解決方案,但隨著ARP攻擊的發(fā)展,漸漸失去它的效果,F(xiàn)在,這個方法不但面對攻擊沒有防制效果,還會降低局域網(wǎng)運作的效能,但是很多用戶仍然以這個方法來進行防制。以前面介紹的思想不堅定的快遞員的例子來說,ARP echo的作法,等于是時時用電話提醒快遞員正確的發(fā)送對象及地址,減低他被鄰近的各種信息干擾的情況。
但是這種作法,明顯有幾個問題:第一,即使時時提醒,但由于快遞員意志不堅定,仍會有部份的信件因為要發(fā)出時剛好收到錯誤的信息,以錯誤的方式送出去;這種情況如果是錯誤的信息頻率特高,例如有一個人時時在快遞員身邊連續(xù)提供信息,即使打電話提醒也立刻被覆蓋,效果就不好;第二,由于必須時時提醒,而且為了保證提醒的效果好,還要加大提醒的間隔時間,以防止被覆蓋,就好比快遞員一直忙于接聽總部打來的電話,根本就沒有時間可以發(fā)送信件,耽誤了正事;第三,還要專門指派一位人時時打電話給快遞員提醒,等于要多派一個人手負責(zé),而且持續(xù)地提醒,這個人的工作也很繁重。
以ARP echo方式對應(yīng)ARP攻擊,也會發(fā)生相似的情況。第一,面對高頻率的新式ARP攻擊,ARP echo發(fā)揮不了效果,掉線斷網(wǎng)的情況仍舊會發(fā)生。ARP echo的方式防制的對早期以盜寶為目的的攻擊軟件有效果,但碰到最近以攻擊為手段的攻擊軟件則公認是沒有效果的。第二,ARP echo手段必須在局域網(wǎng)上持續(xù)發(fā)出廣播網(wǎng)絡(luò)包,占用局域網(wǎng)帶寬,使得局域網(wǎng)工作的能力降低,整個局域網(wǎng)的計算機及交換機時時都在處理ARP echo廣播包,還沒受到攻擊局域網(wǎng)就開始卡了。第三,必須在局域網(wǎng)有一臺負責(zé)負責(zé)發(fā)ARP echo廣播包的設(shè)備,不管是路由器、服務(wù)器或是計算機,由于發(fā)包是以一秒數(shù)以百計的方式來發(fā)送,對該設(shè)備都是很大的負擔(dān)。
常見的ARP echo處理手法有兩種,一種是由路由器持續(xù)發(fā)送,另一則是在計算機或服務(wù)器安裝軟件發(fā)送。路由器持續(xù)發(fā)送的缺點是路由器原本的工作就很忙,因此無法發(fā)送高頻率的廣播包,被覆蓋掉的機會很大,因此面對新型的ARP攻擊防制效果小。因此,有些解決方法,就是拿ARP攻擊的軟件來用,只是持續(xù)發(fā)出正確的網(wǎng)關(guān)、服務(wù)器對照表,安裝在服務(wù)器或是計算機上,由于服務(wù)器或是計算機運算能力較強,可以同一時間內(nèi)發(fā)出更多廣播包,效果較大,但是這種作法一則大幅影響局域網(wǎng)工作,因為整個局域網(wǎng)都被廣播包占據(jù),另則攻擊軟件通常會設(shè)定更高頻率的廣播包,誤導(dǎo)局域網(wǎng)計算機,效果仍然有限。
此外,ARP echo一般是發(fā)送網(wǎng)關(guān)及MAC的對照信息,對于防止局域網(wǎng)計算機被騙有效果,對于路由器沒有效果,仍需作綁定的動作才可。
PK 賽之"ARP綁定"
ARP echo的作法是不斷提醒計算機正確的ARP對照表,ARP綁定則是針對ARP協(xié)議"思想不堅定"的基本問題來加以解決。ARP綁定的作法,等于是從基本上給這個快遞員培訓(xùn),讓他把正確的人名及地址記下來,再也不受其它人的信息干擾。由于快遞員腦中記住了這個對照表,因此完全不會受到有心人士的干擾,能有效地完成工作。在這種情況下,無論如何都可以防止因受到攻擊而掉線的情況發(fā)生。
但是ARP綁定并不是萬靈藥,還需要作的好才有完全的效果。第一,即使這個快遞員思想正確,不受影響,但是攻擊者的網(wǎng)絡(luò)包還是會小幅影響局域網(wǎng)部份運作,網(wǎng)管必須通過網(wǎng)絡(luò)監(jiān)控或掃瞄的方法,找出攻擊者加以去除;第二,必須作雙向綁定才有完全的效果,只作路由器端綁定效果有限,一般計算機仍會被欺騙,而發(fā)生掉包或掉線的情況。
雙向綁定的解決方法,最為網(wǎng)管不喜歡的就是必須一臺一臺加以綁定,增加工作量。但是從以上的說明可知道,只有雙向綁定才能有效果地解決ARP攻擊的問題,而不會發(fā)生防制效果不佳、局域網(wǎng)效率受影響、影響路由器效能或影響服務(wù)器效能的缺點。也就是說雙向綁定是個硬工夫,可以較全面性地解決現(xiàn)在及未來ARP攻擊的問題,網(wǎng)管為了一時的省事,而采取片面的ARP echo解決方式,未來還是要回來解決這個問題。
II、現(xiàn)階段唯一解決方案----雙向綁定
以上以思想不堅定的快遞員情況,說明了常見的ARP攻擊防制方法。ARP攻擊利用的就是ARP協(xié)議的意志不堅,只有以培訓(xùn)的方式讓ARP協(xié)議的意志堅定,明白正確的工作方法,才能從根本解決問題。只是依賴頻繁的提醒快遞員正確的作事方法,但是沒有能從快遞員意志不堅的特點著手,就好像只管不教,最終大家都很累,但是效果仍有限。
經(jīng)我公司技術(shù)團隊仔細研究,建議:面對這種新興攻擊,取巧用省事的方式準(zhǔn)備,最后的結(jié)果可能是費事又不管用,必須重新來過。ARP雙向綁定雖然對管理帶來一定的工作量,但是其效果確是從根本上解決了問題。
三、網(wǎng)域ARP欺騙攻擊防護專區(qū)實現(xiàn)方式介紹:
從影響網(wǎng)絡(luò)連接通暢的方式來看,ARP欺騙分為二種,一種是對路由器ARP表的欺騙;另一種是對內(nèi)網(wǎng)PC的網(wǎng)關(guān)欺騙。
第一種ARP欺騙的原理是——截獲網(wǎng)關(guān)數(shù)據(jù)。它通知路由器一系列錯誤的內(nèi)網(wǎng)MAC地址,并按照一定的頻率不斷進行,使真實的地址信息無法通過更新保存在路由器中,結(jié)果路由器的所有數(shù)據(jù)只能發(fā)送給錯誤的MAC地址,造成正常PC無法收到信息。第二種ARP欺騙的原理是——偽造網(wǎng)關(guān)。它的原理是建立假網(wǎng)關(guān),讓被它欺騙的PC向假網(wǎng)關(guān)發(fā)數(shù)據(jù),而不是通過正常的路由器途徑上網(wǎng)。在PC看來,就是上不了網(wǎng)了,“網(wǎng)絡(luò)掉線了”。
基于以上兩種ARP欺騙的方式,我公司在上海電信外高橋數(shù)據(jù)中心采用獨立網(wǎng)段加上雙向綁定的方法設(shè)立了防ARP欺騙攻擊專區(qū),拓樸結(jié)構(gòu)示意圖如下:
ARP欺騙攻擊防護實現(xiàn)方式:
外部防護
1、此防護區(qū)域使用獨立網(wǎng)關(guān),從電信路由層以獨立VLAN的物理結(jié)構(gòu)方式接入,與其他非防護區(qū)域服務(wù)器完全隔離
內(nèi)部防護
2、防護專區(qū)中心交換機以機柜為單位劃分VLAN,保證機柜之間無法直接通信,防止機柜之間的ARP 欺騙攻擊。防護專區(qū)中心交換機進行 IP段—MAC---交換機端口 配對綁定,服務(wù)器只能在指定交換機機柜和指定交換機端口使用,防止內(nèi)部ARP攻擊機截獲網(wǎng)關(guān)數(shù)據(jù),進行欺騙攻擊。
3、機柜交換機進行 IP—MAC—交換機端口 配對綁定,服務(wù)器只能在指定交換機端口使用,防止內(nèi)部ARP攻擊機發(fā)送虛假IP 地址,虛假MAC地址,偽造網(wǎng)關(guān),進行欺騙攻擊。
4、機柜交換機進行 網(wǎng)關(guān)IP—網(wǎng)關(guān)MAC 靜態(tài)綁定,為機柜內(nèi)部服務(wù)器提供靜態(tài)的網(wǎng)關(guān)MaC地址解析。