網(wǎng)絡(luò)協(xié)議之ARP協(xié)議原理及應(yīng)用_第1頁(yè)
網(wǎng)絡(luò)協(xié)議之ARP協(xié)議原理及應(yīng)用_第2頁(yè)
網(wǎng)絡(luò)協(xié)議之ARP協(xié)議原理及應(yīng)用_第3頁(yè)
網(wǎng)絡(luò)協(xié)議之ARP協(xié)議原理及應(yīng)用_第4頁(yè)
網(wǎng)絡(luò)協(xié)議之ARP協(xié)議原理及應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、淺談網(wǎng)絡(luò)協(xié)議之ARP協(xié)議原理及應(yīng)用 - 關(guān)于ARP欺騙攻擊技術(shù)簡(jiǎn)析和防范您是否遇到局域網(wǎng)內(nèi)頻繁性區(qū)域或整體掉線(xiàn),重啟計(jì)算機(jī)或網(wǎng)絡(luò)設(shè)備后恢復(fù)正常?您的網(wǎng)速是否時(shí)快時(shí)慢,極其不穩(wěn)定,但單機(jī)進(jìn)行光纖數(shù)據(jù)測(cè)試時(shí)一切正常?您是否時(shí)常聽(tīng)到身邊人的網(wǎng)上銀行密碼、游戲及QQ賬號(hào)頻繁丟失的消息?這些問(wèn)題的出現(xiàn)有很大一部分要?dú)w功于ARP攻擊,那么什么是ARP協(xié)議?ARP是如何攻擊的呢?又該怎樣防御呢? 一ARP協(xié)議及其基本原理ARP( Address Resolution Protocol),中文名為地址解析協(xié)議,它工作在數(shù)據(jù)鏈路層,在本層和硬件接口聯(lián)系,同時(shí)對(duì)上層提供服務(wù)。 IP數(shù)據(jù)包常通過(guò)以太網(wǎng)發(fā)送,以太網(wǎng)設(shè)

2、備并不識(shí)別32位IP地址,它們是以48位以太網(wǎng)地址傳輸以太網(wǎng)數(shù)據(jù)包。因此,必須把IP目的地址轉(zhuǎn)換成以太網(wǎng)目的地址。在以太網(wǎng)中,一個(gè)主機(jī)要和另一個(gè)主機(jī)進(jìn)行直接通信,必須要知道目標(biāo)主機(jī)的MAC地址。但這個(gè)目標(biāo)MAC地址是如何獲得的呢?它就是通過(guò)地址解析協(xié)議獲得的。ARP協(xié)議用于將網(wǎng)絡(luò)中的IP地址解析為的硬件地址(MAC地址),以保證通信的順利進(jìn)行。如圖即為ARP報(bào)頭結(jié)構(gòu):下面介紹一下ARP協(xié)議的工作原理。我們知道每臺(tái)主機(jī)都會(huì)在自己的ARP緩沖區(qū) (ARP Cache)中建立一個(gè)存放有本局域網(wǎng)上的各主機(jī)和路由器的IP地址到硬件地址的映射表,這些都是主機(jī)目前知道的一些地址。假設(shè)有三臺(tái)主機(jī):A: IP地

3、址 192.168.0.1 硬件地址 AA:AA:AA:AA:AA:AAB: IP地址 192.168.0.2 硬件地址 BB:BB:BB:BB:BB:BBC: IP地址 192.168.0.3 硬件地址 CC:CC:CC:CC:CC:CC當(dāng)主機(jī)A需要將一個(gè)數(shù)據(jù)包要發(fā)送到本局域網(wǎng)上的某個(gè)目的主機(jī)B時(shí),會(huì)首先檢查自己 ARP列表中是否存在該主機(jī)B的IP地址,如果有就在ARP高速緩存中查出其對(duì)應(yīng)的硬件地址,再把這個(gè)硬件地址寫(xiě)入MAC幀,然后通過(guò)局域網(wǎng)把該MAC幀發(fā)往此硬件地址;如果查不到主機(jī)B的IP地址的項(xiàng)目,在這種情況下主機(jī)A就向本地網(wǎng)段發(fā)起一個(gè)ARP請(qǐng)求的廣播包,查詢(xún)此目的主機(jī)B對(duì)應(yīng)的MAC地

4、址。此ARP請(qǐng)求數(shù)據(jù)包里包括主機(jī)A的IP地址、硬件地址、以及目的主機(jī)B的IP地址?!拔沂?92.168.0.1,我的硬件地址是" AA:AA:AA:AA:AA:AA ".請(qǐng)問(wèn)IP地址為192.168.0.2的MAC地址是什么?”  網(wǎng)絡(luò)中所有的主機(jī)收到這個(gè)ARP請(qǐng)求后,會(huì)檢查數(shù)據(jù)包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此數(shù)據(jù)包;如果相同,該主機(jī)就給主機(jī)A發(fā)送一個(gè) ARP響應(yīng)數(shù)據(jù)包,告訴對(duì)方自己是它需要查找的MAC地址“我是192.168.0.2,硬件地址是BB:BB:BB:BB:BB:BB”,并把發(fā)送端的MAC地址和IP地址添加到自己的ARP列表中

5、,如果ARP表中已經(jīng)存在該IP的信息,則將其覆蓋。主機(jī)A收到這個(gè)ARP響應(yīng)數(shù)據(jù)包后,將得到的目的主機(jī)B的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息開(kāi)始數(shù)據(jù)的傳輸。如果主機(jī)A一直沒(méi)有收到ARP響應(yīng)數(shù)據(jù)包,則表示ARP查詢(xún)失敗。二ARP攻擊ARP攻擊是指通過(guò)偽造IP地址和MAC地址實(shí)現(xiàn)ARP欺騙,能夠在網(wǎng)絡(luò)中產(chǎn)生大量的ARP通信量使網(wǎng)絡(luò)阻塞,攻擊者只要持續(xù)不斷的發(fā)出偽造的ARP響應(yīng)包就能更改目標(biāo)主機(jī)ARP緩存中的IP-MAC條目,造成網(wǎng)絡(luò)中斷或中間人攻擊。 它主要是存在于局域網(wǎng)網(wǎng)絡(luò)中,局域網(wǎng)中若有一個(gè)人感染ARP木馬,則感染該ARP木馬的系統(tǒng)將會(huì)試圖通過(guò)“ARP欺騙”手段截獲所在網(wǎng)

6、絡(luò)內(nèi)其它計(jì)算機(jī)的通信信息,并因此造成網(wǎng)內(nèi)其它計(jì)算機(jī)的通信故障。其中“惡意竊聽(tīng)”病毒是“ARP欺騙”系列病毒中影響和危害最為惡劣的。它不會(huì)造成局域網(wǎng)的中斷,僅僅會(huì)使網(wǎng)絡(luò)產(chǎn)生較大的延時(shí),但是中毒主機(jī)會(huì)截取局域網(wǎng)內(nèi)所有的通訊數(shù)據(jù),并向特定的外網(wǎng)用戶(hù)發(fā)送所截獲的數(shù)據(jù),對(duì)局域網(wǎng)用戶(hù)的網(wǎng)絡(luò)使用造成非常非常嚴(yán)重的影響,直接威脅著局域網(wǎng)用戶(hù)自身的信息安全。 那么是如何實(shí)現(xiàn)ARP欺騙的呢?如上圖所示,ARP協(xié)議并不只在發(fā)送了ARP請(qǐng)求才接收ARP應(yīng)答。當(dāng)計(jì)算機(jī)接收到ARP應(yīng)答數(shù)據(jù)包的時(shí)候,就會(huì)對(duì)本地的ARP緩存進(jìn)行更新,將應(yīng)答中的IP和MAC地址存儲(chǔ)在ARP緩存中。因此,在上例中如果主機(jī)A發(fā)出ARP請(qǐng)求找尋主機(jī)

7、C的IP和MAC地址,而此時(shí)主機(jī)B向主機(jī)A發(fā)送一個(gè)自己偽造的ARP應(yīng)答,這個(gè)應(yīng)答中的數(shù)據(jù)為發(fā)送方IP地址是C的IP地址,MAC地址是DD-DD-DD-DD-DD-DD( C的MAC地址本來(lái)應(yīng)該是33-33-33-33-33-33,這里被偽造了)。當(dāng)主機(jī)A接收到主機(jī)B偽造的ARP應(yīng)答,就會(huì)更新本地的ARP緩存,將本地的IP-MAC對(duì)應(yīng)表更換為接收到的數(shù)據(jù)格式,由于這一切都是A的系統(tǒng)內(nèi)核自動(dòng)完成的,A卻不知道被偽造了,而且A不知道其實(shí)是從B發(fā)送過(guò)來(lái)的。這樣A這里只有C的IP地址和無(wú)效的DD-DD-DD-DD-DD-DD MAC地址。這就實(shí)現(xiàn)了ARP欺騙。這樣主機(jī)A上的關(guān)于主機(jī)C的MAC地址已經(jīng)錯(cuò)誤

8、了,所以即使以后從A計(jì)算機(jī)訪(fǎng)問(wèn)C計(jì)算機(jī)這個(gè)1.1.1.3、24這個(gè)地址也會(huì)被ARP協(xié)議錯(cuò)誤的解析成MAC地址為DD-DD-DD-DD-DD-DD的。下面介紹兩種不同類(lèi)型的ARP欺騙:(1)同一網(wǎng)段的ARP欺騙如圖所示,三臺(tái)主機(jī)A: IP地址 192.168.0.1 硬件地址 AA:AA:AA:AA:AA:AAB: IP地址 192.168.0.2 硬件地址 BB:BB:BB:BB:BB:BBC: IP地址 192.168.0.3 硬件地址 CC:CC:CC:CC:CC:CC一個(gè)位于主機(jī)B的入侵者想非法進(jìn)入主機(jī)A,可是這臺(tái)主機(jī)上安裝有防火墻。通過(guò)收集資料知道這臺(tái)主機(jī)A的防火墻只對(duì)主機(jī)C有信任關(guān)系

9、(開(kāi)放23端口(telnet))。而他必須要使用telnet來(lái)進(jìn)入主機(jī)A,這個(gè)時(shí)候他應(yīng)該如何處理呢?我們這樣考慮,入侵者必須讓主機(jī)A相信主機(jī)B就是主機(jī)C,如果主機(jī)A和主機(jī)C之間的信任關(guān)系是建立在IP地址之上的。如果單單把主機(jī)B的IP地址改的和主機(jī)C的一樣,那是不能工作的,至少不能可靠地工作。如果你告訴以太網(wǎng)卡設(shè)備驅(qū)動(dòng)程序, 自己IP是192.168.0.3,那并不能達(dá)到目標(biāo)。我們可以先研究C這臺(tái)機(jī)器,如果我們能讓這臺(tái)機(jī)器暫時(shí)當(dāng)?shù)簦跈C(jī)器C當(dāng)?shù)舻耐瑫r(shí),將機(jī)器B的IP地址改為192.168.0.3,這樣就可以成功的通過(guò)23端口telnet到機(jī)器A上面,而成功的繞過(guò)防火墻的限制。 上面的這種想法在下

10、面的情況下是沒(méi)有作用的,如果主機(jī)A和主機(jī)C之間的信任關(guān)系是建立在硬件地址的基礎(chǔ)上。這個(gè)時(shí)候還需要用ARP欺騙的手段讓主機(jī)A把自己的ARP緩存中的關(guān)于192.168.0.3映射的硬件地址改為主機(jī)B的硬件地址。我們可以人為的制造一個(gè)ARP的應(yīng)答,發(fā)送給想要欺騙的主機(jī)(如上文的例子所示),可以指定ARP包中的源IP、目標(biāo)IP、源MAC地址、目標(biāo)MAC地址。這樣你就可以通過(guò)虛假的ARP響應(yīng)包來(lái)修改主機(jī)A上的動(dòng)態(tài)ARP緩存達(dá)到欺騙的目的。下面是具體的步驟:1. 首先研究192.168.0.3這臺(tái)主機(jī),發(fā)現(xiàn)這臺(tái)主機(jī)的漏洞。 2. 根據(jù)發(fā)現(xiàn)的漏洞使主機(jī)C當(dāng)?shù)?,暫時(shí)停止工作。 3. 這段時(shí)間里,入侵者把自己的

11、IP改成192.168.0.3 4. 他用工具發(fā)一個(gè)源IP地址為192.168.0.3源MAC地址為BB:BB:BB:BB:BB:BB的包給主機(jī)A,要求主機(jī)A更新自己的ARP轉(zhuǎn)換表。 5. 主機(jī)更新了ARP表中關(guān)于主機(jī)C的IP->MAC對(duì)應(yīng)關(guān)系。 6. 防火墻失效了,入侵的IP變成合法的MAC地址。 上面就是一個(gè)ARP的欺騙過(guò)程,這是在同網(wǎng)段發(fā)生的情況,但是,如果當(dāng)B和C處于不同網(wǎng)段的時(shí)候,上面的方法是不起作用的。(2)不同網(wǎng)段的ARP欺騙如圖所示A、C位于同一網(wǎng)段而主機(jī)B位于另一網(wǎng)段,三臺(tái)機(jī)器的IP地址和硬件地址如下:A: IP地址 192.168.0.1 硬件地址 AA:AA:AA:

12、AA:AA:AAB: IP地址 192.168.1.2 硬件地址 BB:BB:BB:BB:BB:BBC: IP地址 192.168.0.3 硬件地址 CC:CC:CC:CC:CC:CC在現(xiàn)在的情況下,位于192.168.1網(wǎng)段的主機(jī)B如何冒充主機(jī)C欺騙主機(jī)A呢?顯然用上面的辦法的話(huà),即使欺騙成功,主機(jī)B和主機(jī)A之間也無(wú)法建立telnet會(huì)話(huà),因?yàn)槁酚善鞑粫?huì)把主機(jī)A發(fā)給主機(jī)B的包向外轉(zhuǎn)發(fā),路由器會(huì)發(fā)地址在192.168.0.這個(gè)網(wǎng)段之內(nèi)的?,F(xiàn)在就涉及到另外一種欺騙方式 ICMP重定向。把ARP欺騙和ICMP重定向結(jié)合在一起就可以基本實(shí)現(xiàn)跨網(wǎng)段欺騙的目的。什么是ICMP重定向呢?在謝希仁編寫(xiě)的計(jì)算

13、機(jī)網(wǎng)絡(luò)(第五版)中是這樣描述ICMP重定向的:ICMP重定向報(bào)文是ICMP控制報(bào)文中的一種。路由器把報(bào)文發(fā)送給主機(jī),讓主機(jī)知道下次應(yīng)將數(shù)據(jù)報(bào)發(fā)送給另外的路由器。在特定的情況下,當(dāng)路由器檢測(cè)到一臺(tái)機(jī)器使用非優(yōu)化路由的時(shí)候,它會(huì)向該主機(jī)發(fā)送一個(gè)ICMP重定向報(bào)文,請(qǐng)求主機(jī)改變路由。路由器也會(huì)把初始數(shù)據(jù)報(bào)向它的目的地轉(zhuǎn)發(fā)。這樣我們就可以利用ICMP重定向報(bào)文達(dá)到欺騙的目的。下面是結(jié)合ARP欺騙和ICMP重定向進(jìn)行攻擊的步驟:1. 為了使自己發(fā)出的非法IP包能在網(wǎng)絡(luò)上能夠存活長(zhǎng)久一點(diǎn),開(kāi)始修改IP包的生存時(shí)間T為下面的過(guò)程中可能帶來(lái)的問(wèn)題做準(zhǔn)備。把T改成255。2. 下載一個(gè)可以自由制作各種包的工具。

14、3. 然后和上面一樣,尋找主機(jī)C的漏洞按照這個(gè)漏洞當(dāng)?shù)糁鳈C(jī)C。 4. 在該網(wǎng)絡(luò)的主機(jī)找不到原來(lái)的192.168.0.3后,將更新自己的ARP對(duì)應(yīng)表。于是他發(fā)送一個(gè)原IP地址為192.168.0.3硬件地址為BB:BB:BB:BB:BB:BB的ARP響應(yīng)包。 5. 現(xiàn)在每臺(tái)主機(jī)都知道了,一個(gè)新的MAC地址對(duì)應(yīng)192.168.0.3,一個(gè)ARP欺騙完成了,但是,每臺(tái)主機(jī)都只會(huì)在局域網(wǎng)中找這個(gè)地址而根本就不會(huì)把發(fā)送給192.168.0.3的IP包丟給路由。于是他還得構(gòu)造一個(gè)ICMP的重定向廣播。 6. 自己定制一個(gè)ICMP重定向包告訴網(wǎng)絡(luò)中的主機(jī):"到192.168.0.3的路由最短路徑不

15、是局域網(wǎng),而是路由,請(qǐng)主機(jī)重定向你們的路由路徑,把所有到192.168.0.3的IP包丟給路由。" 7. 主機(jī)A接受這個(gè)合理的ICMP重定向,于是修改自己的路由路徑,把對(duì)192.168.0.3的通訊都丟給路由器。 8. 入侵者終于可以在路由外收到來(lái)自路由內(nèi)的主機(jī)的IP包了,他可以開(kāi)始telnet到主機(jī)的23口。 其實(shí)上面的想法只是一種理想話(huà)的情況,主機(jī)許可接收的ICMP重定向包其實(shí)有很多的限制條件,這些條件使ICMP重定向變的非常困難。TCP/IP協(xié)議實(shí)現(xiàn)中關(guān)于主機(jī)接收ICMP重定向報(bào)文主要有下面幾條限制:1. 新路由必須是直達(dá)的 2. 重定向包必須來(lái)自去往目標(biāo)的當(dāng)前路由 3. 重定

16、向包不能通知主機(jī)用自己做路由 4. 被改變的路由必須是一條間接路由 由于有這些限制,所以ICMP欺騙實(shí)際上很難實(shí)現(xiàn)。三ARP欺騙的防御下面介紹防范ARP攻擊的幾種常用方法:1、靜態(tài)綁定將IP和MAC靜態(tài)綁定,在網(wǎng)內(nèi)把主機(jī)和網(wǎng)關(guān)都做IP和MAC綁定。ARP欺騙是通過(guò)ARP的動(dòng)態(tài)實(shí)時(shí)的規(guī)則欺騙內(nèi)網(wǎng)機(jī)器,所以我們把ARP全部設(shè)置為靜態(tài)可以解決對(duì)內(nèi)網(wǎng)PC的欺騙,同時(shí)在網(wǎng)關(guān)也要進(jìn)行IP和MAC的靜態(tài)綁定,這樣雙向綁定才比較保險(xiǎn)。缺點(diǎn)是每臺(tái)電腦需綁定,且重啟后任需綁定,工作量較大,雖說(shuō)綁定可以通過(guò)批處理文件來(lái)實(shí)現(xiàn),但也比較麻煩。2、使用防護(hù)軟件目前關(guān)于ARP類(lèi)的防護(hù)軟件比較多。比如欣向ARP工具,Anti

17、arp,它們除了本身來(lái)檢測(cè)出ARP攻擊外,防護(hù)的工作原理是一定頻率向網(wǎng)絡(luò)廣播正確的ARP信息。ARP防火墻也是常用的防護(hù)軟件,它采用系統(tǒng)內(nèi)核層攔截技術(shù)和主動(dòng)防御技術(shù),包含六大功能模塊可解決大部分欺騙、ARP攻擊帶來(lái)的問(wèn)題,從而保證通訊安全(保障通訊數(shù)據(jù)不被網(wǎng)管軟件/惡意軟件監(jiān)聽(tīng)和控制)、保證網(wǎng)絡(luò)暢通。3、具有ARP防護(hù)功能的路由器對(duì)于這類(lèi)路由器中提到的ARP防護(hù)功能,其實(shí)它的原理就是定期的發(fā)送自己正確的ARP信息。但是路由器的這種功能對(duì)于真正意義上的攻擊,是不能解決的。 ARP的最常見(jiàn)的特征就是掉線(xiàn),一般情況下不需要處理,一定時(shí)間內(nèi)可以回復(fù)正常上網(wǎng),因?yàn)锳RP欺騙是有老化時(shí)間的,過(guò)了老化時(shí)間就會(huì)自動(dòng)的回復(fù)正常?,F(xiàn)在大多數(shù)路由器都會(huì)在很短時(shí)間內(nèi)不停廣播自己的正確ARP信息,使受騙的主機(jī)回復(fù)正常。但是如果出現(xiàn)攻擊性ARP欺騙(其實(shí)就是時(shí)間很短的量很大的欺騙ARP,1秒有個(gè)幾百上千的),它是不斷的發(fā)起ARP欺騙包來(lái)阻止內(nèi)網(wǎng)機(jī)器上網(wǎng),即使路由器不斷廣播正確的包也會(huì)被它大量的錯(cuò)誤信息給淹沒(méi)。 可能你會(huì)有疑問(wèn):我們也可以發(fā)送比欺騙者更多更快正確的ARP信息???如果攻擊者每秒發(fā)送1000個(gè)ARP欺騙包,那我們就每秒發(fā)送1500個(gè)正確的ARP信息! 面對(duì)上面的疑問(wèn),我們仔細(xì)想想,如果網(wǎng)絡(luò)拓?fù)浜艽?,網(wǎng)絡(luò)中接了很多網(wǎng)絡(luò)設(shè)備和主機(jī),大

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論