杜連利
[摘要]ARP欺騙是局域網(wǎng)中最普遍、最具危害性的病毒,從ARP協(xié)議的原理、ARP協(xié)議所存在的漏洞及安全隱患出發(fā),分析ARP欺騙的原理和攻擊時(shí)的現(xiàn)象,并提出有效的解決辦法和防范策略。
[關(guān)鍵詞]ARP IP地址 MAC地址 局域網(wǎng)
中圖分類號(hào):TP3文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1671-7597(2009)0810058-01
一、引言
隨著網(wǎng)絡(luò)技術(shù)在各個(gè)領(lǐng)域的廣泛應(yīng)用,在提高工作效率、實(shí)現(xiàn)數(shù)據(jù)共享及信息交換等方面提供了極大的便利。然而,由于網(wǎng)絡(luò)協(xié)議設(shè)計(jì)上的缺陷,給網(wǎng)絡(luò)病毒以可乘之機(jī)。ARP病毒的出現(xiàn),使網(wǎng)絡(luò)的使用效率急劇下降,甚至對(duì)用戶的信息安全構(gòu)成威脅,因此,病毒的防范顯得尤為重要。
二、ARP欺騙的分析
(一)ARP協(xié)議工作原理。ARP是Address Resolution Protocol的縮寫,是TCP/IP協(xié)議族中的一個(gè)協(xié)議,稱為地址解析協(xié)議,具體來說就是將網(wǎng)絡(luò)層地址解析為數(shù)據(jù)連接層的MAC地址。
IP數(shù)據(jù)包在以太網(wǎng)中傳送,但以太網(wǎng)設(shè)備并不能識(shí)別32位的IP地址,只能識(shí)別48位的MAC地址,ARP的解析過程就是將目的主機(jī)的IP地址轉(zhuǎn)換成MAC地址。每一臺(tái)主機(jī)都設(shè)有一個(gè)ARP緩存表用于存放IP地址與MAC地址的對(duì)應(yīng)關(guān)系,這個(gè)緩存表會(huì)定期的被刷新,在一段時(shí)間內(nèi)表中某一行未被使用,就會(huì)被刪除,這樣可以減少ARP緩存表的長度從而加快查詢速度。
當(dāng)主機(jī)A欲向本網(wǎng)絡(luò)的主機(jī)B發(fā)送數(shù)據(jù)包時(shí),就先在其ARP緩存表中查找有無主機(jī)B的IP地址。如果有,就查出其對(duì)應(yīng)的MAC地址,然后將該MAC幀發(fā)往此硬件地址對(duì)應(yīng)的主機(jī);如果不存在,主機(jī)A就要向網(wǎng)絡(luò)發(fā)送ARP廣播,網(wǎng)絡(luò)上的所有主機(jī)都能收到這個(gè)ARP請(qǐng)求,主機(jī)B收到廣播發(fā)現(xiàn)信息中的IP與自己的相同,便向主機(jī)A發(fā)送ARP響應(yīng),告知自己的MAC地址。這樣在得到了主機(jī)B的MAC地址后,主機(jī)A就可以向主機(jī)B發(fā)送數(shù)據(jù)了。
值得注意的是,對(duì)于某一臺(tái)主機(jī)而言,即使收到的ARP響應(yīng)并不是由自己的請(qǐng)求而得到的,也不會(huì)對(duì)其進(jìn)行“身份驗(yàn)證”,而是直接將其加入到自己的ARP地址緩存表中。這是由于在設(shè)計(jì)ARP協(xié)議時(shí)是建立在主機(jī)間相互信任的基礎(chǔ)上,目的是減少過多的產(chǎn)生ARP廣播。后來被人們稱為不堅(jiān)定的ARP協(xié)議,意為容易被欺騙的ARP協(xié)議。
(二)ARP欺騙的實(shí)現(xiàn)。ARP欺騙就是利用了ARP協(xié)議的信任機(jī)制,當(dāng)主機(jī)收到一個(gè)ARP的應(yīng)答包后,它并不會(huì)去驗(yàn)證自己是否發(fā)送過這個(gè)ARP請(qǐng)求,而是直接將應(yīng)答包里的MAC地址與IP對(duì)應(yīng)的關(guān)系替換掉原有的ARP緩存表里的相應(yīng)信息。
假設(shè)局域網(wǎng)中A與B是正常通訊的主機(jī),C是實(shí)施ARP欺騙的主機(jī),主機(jī)C首先向主機(jī)A發(fā)送假的ARP應(yīng)答報(bào)文,主機(jī)A在接收到后,修改自己的ARP地址緩存表,使得主機(jī)B的IP地址與主機(jī)C的MAC地址相對(duì)應(yīng)。同樣,主機(jī)C也向主機(jī)B發(fā)送假的ARP應(yīng)答報(bào)文,使得主機(jī)B的ARP地址緩存表修改為主機(jī)A的IP地址與主機(jī)C的MAC地址相對(duì)應(yīng)。這時(shí),如果A向B發(fā)送信息,根據(jù)A中的ARP地址緩存表中的IP→MAC的映射關(guān)系,信息實(shí)際上是先被發(fā)送到了主機(jī)C,于是,主機(jī)A和主機(jī)B的通信過程,就被主機(jī)C所監(jiān)聽,而主機(jī)A和B對(duì)此毫無察覺。
另外一種欺騙是用同樣的方法冒充網(wǎng)關(guān)欺騙網(wǎng)內(nèi)的主機(jī),使主機(jī)的信息不能正常的到達(dá)網(wǎng)關(guān),表現(xiàn)為網(wǎng)絡(luò)掉線。
更為嚴(yán)重的行為是冒充網(wǎng)關(guān)欺騙主機(jī)的同時(shí)又冒充主機(jī)來欺騙網(wǎng)關(guān)。
三、ARP欺騙帶來的危害
1.網(wǎng)絡(luò)異常,使用局域網(wǎng)時(shí)會(huì)突然掉線,過一段時(shí)間后又會(huì)恢復(fù)正常。用戶頻繁斷網(wǎng),嚴(yán)重時(shí)甚至可能帶來整個(gè)網(wǎng)絡(luò)的癱瘓。
2.數(shù)據(jù)竊取,具體表現(xiàn)為個(gè)人隱私泄漏,如MSN聊天記錄、郵件等。賬號(hào)被盜用,如QQ賬號(hào)、銀行賬號(hào)等,這是木馬的慣用伎倆,給用戶造成了很大的不便或經(jīng)濟(jì)損失。
3.數(shù)據(jù)篡改,具體表現(xiàn)為訪問的網(wǎng)頁被添加了惡意內(nèi)容,俗稱“掛馬”。
4.非法控制,具體表現(xiàn)為網(wǎng)絡(luò)速度、網(wǎng)絡(luò)訪問行為受第三者非法控制。
四、解決方法與防范策略
(一)利用命令行的方式來檢測(cè)并綁定IP與MAC的映射。ARP病毒攻擊的首要目標(biāo)是網(wǎng)關(guān),因此,保留一份正確的網(wǎng)關(guān)的IP-MAC數(shù)據(jù)很重要。當(dāng)局域網(wǎng)中發(fā)生ARP欺騙的時(shí)候,實(shí)施ARP欺騙的電腦會(huì)不停地發(fā)送ARP欺騙廣播,這時(shí)局域網(wǎng)中的其它電腦就會(huì)動(dòng)態(tài)更新自身的ARP緩存表,將網(wǎng)關(guān)的MAC地址記錄成ARP病毒電腦的MAC地址,我們只要打開一個(gè)命令提示符窗口,輸入“arp-a”來顯示ARP緩存表的內(nèi)容,顯示為:
192.168.1.1 00-21-27-87-b8-1adynamic
如果顯示的內(nèi)容與正確的數(shù)據(jù)不符,則說明ARP緩存表中網(wǎng)關(guān)的MAC已被篡改。先刪除現(xiàn)有的IP-MAC對(duì)應(yīng)表:arp-d192.168.1.1,在緩存列表中增加一個(gè)正確的、靜態(tài)的IP→MAC的數(shù)據(jù),如arp-s192.168.1.100-21-5c-55-6a-ed,既綁定了網(wǎng)關(guān)IP與MAC的對(duì)應(yīng)關(guān)系。
如果網(wǎng)管有一個(gè)局域網(wǎng)內(nèi)所有主機(jī)的IP-MAC映射表,則可以根據(jù)MAC地址找到實(shí)施ARP欺騙的主機(jī),利用ARP專殺工具殺毒。
(二)在交換機(jī)端口上應(yīng)用IP-MAC綁定。在交換機(jī)端口上實(shí)施MAC地址與端口綁定和IP地址與端口的綁定相結(jié)合,從而達(dá)到在端口上應(yīng)用IP與MAC地址綁定的功能。一旦綁定之后,交換機(jī)的ARP表就固定了,任何ARP欺騙都無法修改交換機(jī)的ARP表,同時(shí)也就保證了路由的準(zhǔn)確性。
(三)在交換機(jī)上設(shè)置虛擬局域網(wǎng)(VLAN)。由于廣播信息不能跨越虛擬局域網(wǎng),因此通過劃分VLAN的方法,減小了ARP廣播的范圍,從而有效的減小了ARP欺騙帶來的影響。
(四)安裝ARP防火墻軟件。隨著ARP欺騙的不斷升級(jí),國內(nèi)多款A(yù)RP防火墻軟件應(yīng)運(yùn)而生,如奇虎360ARP防火墻、金山ARP防火墻、瑞星防火墻等,能有效的抑制ARP欺騙的發(fā)生。
五、結(jié)束語
網(wǎng)絡(luò)給人們帶來了無限的便利,但隨之而來的安全問題讓當(dāng)初的設(shè)計(jì)者們始料未及。ARP的欺騙正是利用了ARP協(xié)議設(shè)計(jì)上的缺陷,給網(wǎng)絡(luò)安全、信息安全、甚至財(cái)產(chǎn)安全帶來極大隱患。但只要我們能從原理出發(fā),找到問題的“癥結(jié)”所在,利用行之有效的解決方法和防范措施,就能減小或消滅ARP病毒帶來的危害,從而確保網(wǎng)絡(luò)的暢通和數(shù)據(jù)的安全。
參考文獻(xiàn):
[1]鄭成興,網(wǎng)絡(luò)入侵防范的理論與實(shí)踐,機(jī)械工業(yè)出版社,2006.9.1.
[2]徐宇杰,TCP/IP協(xié)議深入分析,清華大學(xué)出版社,2009.
[3](美)康弗瑞著,王迎春、謝琳譯,網(wǎng)絡(luò)安全體系結(jié)構(gòu),人民郵電出版社,2005.
[4]楊延雙、張建標(biāo)、王全民,TCP/IP協(xié)議分析及應(yīng)用,機(jī)械工業(yè)出版社,2007.
[5](美)帕克、(美)斯鮑泰克,TCP/IP技術(shù)大全,機(jī)械工業(yè)出版社,2001.
[6]http://www.51cto.com.