石春宏
摘要:該文介紹了地址解析協(xié)議(Address Resolution Protocol, ARP)基本原理,采用cain對(duì)網(wǎng)絡(luò)中的計(jì)算機(jī)進(jìn)行arp欺騙,通過(guò)對(duì)arp欺騙的實(shí)驗(yàn)的分析,了解協(xié)議存在的漏洞以及協(xié)議漏洞可能引起的緩存篡改行為,并給出了防止ARP緩存篡改的方法。
關(guān)鍵詞:ARP;攻擊;防御
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)30-0026-02
1 arp協(xié)議概述
ARP(Address Resolution Protocol),即地址解析協(xié)議,是根據(jù)IP地址解析物理地址的一個(gè)TCP/IP協(xié)議。主機(jī)將包含目標(biāo)IP地址信息的ARP請(qǐng)求廣播到網(wǎng)絡(luò)中的所有主機(jī),并接收返回消息,以此確定目標(biāo)ip地址的物理地址;收到返回消息后將該IP地址和物理地址存入本機(jī)ARP緩存中并保留一定時(shí)間,以便下次請(qǐng)求時(shí)直接查詢(xún)ARP緩存以節(jié)約資源。
2 arp攻擊測(cè)試
本實(shí)驗(yàn)使用兩臺(tái)虛擬電腦VPC1、VPC2,使用VPC1欺騙VPC2,使用cain工具偽造虛假ip地址。cain功能很多,本實(shí)驗(yàn)僅對(duì)本實(shí)驗(yàn)中所用到的功能進(jìn)行講解,其余功能可以自學(xué)了解、嘗試。
第一步:在VPC2上,點(diǎn)擊“開(kāi)始-運(yùn)行”,輸入cmd,在打開(kāi)的Dos界面中輸入ipconfig和arp –a命令,獲取VPC2的ip地址和當(dāng)前局域網(wǎng)網(wǎng)關(guān)的MAC地址碼并記錄,用于后續(xù)實(shí)驗(yàn)使用,如圖1所示(其中192.168.1.1為網(wǎng)關(guān)IP地址):
第二步:在VPC1計(jì)算機(jī)上,解壓并按照默認(rèn)選項(xiàng)安裝好cain軟件。
第三步:運(yùn)行Cain軟件,如果彈出Windows防火墻是開(kāi)啟狀態(tài),本實(shí)驗(yàn)不受防火墻影響,點(diǎn)擊“確定”按鍵即可。
第四步:在Cain運(yùn)行界面上,點(diǎn)擊 “Configure”或點(diǎn)擊快速鍵按鈕,在“sniffer”選項(xiàng)卡下,選擇本機(jī)的網(wǎng)卡進(jìn)行綁定,點(diǎn)擊確定。
第五步:在configuration中的ARP標(biāo)簽中,可以設(shè)置是用本機(jī)真實(shí)IP和MAC地址參與還是使用偽裝IP和MAC地址。若選用使用偽裝IP和MAC地址,可以在此處填寫(xiě)上設(shè)定的IP地址及MAC地址,這樣,在之后的欺騙中即或發(fā)現(xiàn)了可疑也難以追述到真實(shí)主機(jī)。本次實(shí)驗(yàn)暫且使用本機(jī)真實(shí)地址。
第六步:設(shè)置好相應(yīng)參數(shù)后,點(diǎn)擊“確定”,返回到Cain主界面,按下下圖左側(cè)紅框內(nèi)的“start/stop sniffer”快捷按鈕,再點(diǎn)擊右側(cè)紅框中的“Add to list”按鈕,可以對(duì)主機(jī)所在的整個(gè)網(wǎng)絡(luò)或指定網(wǎng)絡(luò)進(jìn)行嗅探。本實(shí)驗(yàn)選擇對(duì)整個(gè)局域網(wǎng)進(jìn)行嗅探,選擇“All hosts in my subnet”,點(diǎn)擊“OK”。主界面將出現(xiàn)在指定區(qū)域內(nèi)掃描到得主機(jī)IP、MAC地址等信息。
第七步:.選擇Cain主界面下端的APR標(biāo)簽,點(diǎn)擊下圖上方紅框內(nèi)“Add to list”快捷按鍵,在選項(xiàng)框中選擇進(jìn)行ARP欺騙的地址。左邊選擇被欺騙的主機(jī),再在右邊選擇合適的主機(jī)(或網(wǎng)關(guān))。ARP能夠在左邊列表中被選的主機(jī)和所有在右邊選中的主機(jī)之間雙向劫持IP包。在該實(shí)驗(yàn)中首先在左側(cè)列表中選擇VPC2的ip地址,然后右側(cè)列表即會(huì)出現(xiàn)其他IP地址,若在右側(cè)選擇網(wǎng)關(guān)192.168.1.1,這樣就可以截獲所有從VPC2發(fā)出到廣域網(wǎng)的數(shù)據(jù)包信息。點(diǎn)擊“OK”。
第八步:在Cain界面上可以看到形成的欺騙列表(同圖4),此時(shí)在狀態(tài)一欄中顯示“idle”,開(kāi)始欺騙點(diǎn)擊工具欄上的“Start/Stop ARP”快捷按鈕,狀態(tài)將變?yōu)椤皃oisoning”,開(kāi)始捕獲。此時(shí),在VPC2機(jī)器上進(jìn)行上網(wǎng)操作,在VPC1的Cain界面上會(huì)看到顯示捕獲數(shù)。
第九步:檢查是否欺騙成功。在VPC2的Dos界面窗口中再次輸入arp –a命令,查看192.168.1.1的MAC地址碼,此時(shí)可以看到對(duì)應(yīng)的MAC地址碼已經(jīng)被替換為VPC1網(wǎng)卡的MAC地址碼,ARP欺騙成功。
3 防御措施
1)不要把網(wǎng)絡(luò)信任關(guān)系單純地建立在IP基礎(chǔ)上或MAC基礎(chǔ)上(RARP同樣存在欺騙的問(wèn)題),應(yīng)在網(wǎng)絡(luò)中架設(shè)DHCP服務(wù)器,綁定網(wǎng)關(guān)與客戶(hù)端IP+MAC,該做法需要注意的是要保證網(wǎng)絡(luò)中的dhcp服務(wù)器相互之間不沖突。
2)添加靜態(tài)的ARP映射表,不讓主機(jī)刷新設(shè)定好的映射表,該做法適用于網(wǎng)絡(luò)中主機(jī)位置穩(wěn)定,不適用在主機(jī)更換頻繁的局域網(wǎng)中。
3)停止使用ARP,將ARP作為永久條目保存在映射表中。
4)架設(shè)ARP服務(wù)器。通過(guò)該服務(wù)器查找自己的ARP映射表來(lái)響應(yīng)其他機(jī)器的ARP廣播。
5)IP的傳輸使用“proxy”代理。
6)使用防火墻等連續(xù)監(jiān)控網(wǎng)絡(luò)。注意有使用SNMP的情況下,ARP的欺騙有可能導(dǎo)致陷阱包丟失。
參考文獻(xiàn):
[1] 周智謙. ARP協(xié)議概述及局域網(wǎng)內(nèi)預(yù)防和處理ARP攻擊的方案[J].時(shí)代報(bào)告:學(xué)術(shù)版, 2011(11X):243-244.
[2] 陳文博.ARP協(xié)議概述及ARP攻擊原理[J].時(shí)代報(bào)告月刊, 2011(11):255-255.
[3] 姜曉峰.ARP協(xié)議簡(jiǎn)析與ARP欺騙攻擊防范[J].電腦知識(shí)與技術(shù), 2008,4(33):1349-1350.