下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
基于ETHERNET的網(wǎng)絡(luò)監(jiān)聽以及ARP欺騙
1引言網(wǎng)絡(luò)監(jiān)聽,亦稱為網(wǎng)絡(luò)嗅探,是利用計算機(jī)的網(wǎng)絡(luò)接口監(jiān)視并查看網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)包的一種技術(shù)。它工作在網(wǎng)絡(luò)的底層,能夠把網(wǎng)絡(luò)中傳輸?shù)娜繑?shù)據(jù)記錄下來。監(jiān)聽器(sniffer)不僅可以幫助網(wǎng)絡(luò)管理員查找網(wǎng)絡(luò)漏洞和檢測網(wǎng)絡(luò)性能,還可以分析網(wǎng)絡(luò)的流量,以便找出網(wǎng)絡(luò)中存在的潛在問題。不同傳輸介質(zhì)的網(wǎng)絡(luò),其可監(jiān)聽性是不同的。但一般說來,以太網(wǎng)、FDDIToken、微波和無線網(wǎng)絡(luò)都有很高的可能性被監(jiān)聽。實際應(yīng)用中的sniffer分軟、硬兩種。軟件監(jiān)聽器便宜,易于使用,缺點(diǎn)是往往無法抓取網(wǎng)絡(luò)上所有的傳輸數(shù)據(jù)(比如碎片),也就可能無法全面了解網(wǎng)絡(luò)的故障和運(yùn)行情況;硬件監(jiān)聽器通常稱為協(xié)議分析儀,它的優(yōu)點(diǎn)恰恰是軟件監(jiān)聽器所欠缺的,但是價格昂貴。目前主要使用的是軟件監(jiān)聽器代寫論文。2網(wǎng)絡(luò)監(jiān)聽的原理在以太網(wǎng)中,所有的通訊都是“廣播”式的,也就是說通常同一個網(wǎng)段的所有網(wǎng)絡(luò)接口都可以訪問在信道上傳輸?shù)乃袛?shù)據(jù)。在一個實際系統(tǒng)中,數(shù)據(jù)的收發(fā)是由網(wǎng)卡來完成,每個網(wǎng)卡都有一個唯一的MAC地址。網(wǎng)卡接收到傳輸來的數(shù)據(jù)以后,網(wǎng)卡內(nèi)的單片程序檢查數(shù)據(jù)幀的目的MAC地址,根據(jù)計算機(jī)上的網(wǎng)卡驅(qū)動程序設(shè)置的接收模式來判斷該不該接收該幀。若認(rèn)為應(yīng)該接收,則接收后產(chǎn)生中斷信號通知CPU,若認(rèn)為不該接收則丟棄不管。正常情況下,網(wǎng)卡應(yīng)該只是接收發(fā)往自身的數(shù)據(jù)包,或者廣播和組播報文,對不屬于自己的報文則不予響應(yīng)??扇绻W(wǎng)卡處于混雜模式,那么它就能接收一切流經(jīng)它的數(shù)據(jù),而不管該數(shù)據(jù)幀的目的地址是否是該網(wǎng)卡。因此,只要將網(wǎng)卡設(shè)置成混雜模式(promiscuous),那么它就可以捕獲網(wǎng)絡(luò)上所有的報文和幀,這樣也就達(dá)到了網(wǎng)絡(luò)監(jiān)聽的目的。由此可見,網(wǎng)絡(luò)監(jiān)聽必須要滿足兩個條件:①網(wǎng)絡(luò)上的通訊是廣播型的。②網(wǎng)卡應(yīng)設(shè)置為混雜模式。這在傳統(tǒng)的以太網(wǎng)中是滿足的。因為傳統(tǒng)的以太網(wǎng)是共享型的,所有的主機(jī)都連接到HUB,而HUB對數(shù)據(jù)包的傳輸形式是廣播。這意味著發(fā)給某個主機(jī)的數(shù)據(jù)包也會被其它所有主機(jī)的網(wǎng)卡所收到。因此在這樣的環(huán)境中,任何設(shè)置成混雜模式的主機(jī),都可以捕獲發(fā)送給其它主機(jī)的數(shù)據(jù)包,從而竊聽網(wǎng)絡(luò)上的所有通信??扇缃?,隨著交換機(jī)的廣泛使用,更多的以太網(wǎng)是屬于交換型的。所有的主機(jī)都連接到SWITCH,對于發(fā)給某個特定主機(jī)的數(shù)據(jù)包會被SWITCH從特定的端口送出,而不是像HUB那樣,廣播給網(wǎng)絡(luò)上所有的機(jī)器。這種傳輸形式使得交換型以太網(wǎng)的性能大大提高,但同時也破壞了網(wǎng)絡(luò)監(jiān)聽的第一個前提條件,使得上文中所述的傳統(tǒng)網(wǎng)絡(luò)監(jiān)聽器無法工作。因此,在交換網(wǎng)絡(luò)中進(jìn)行網(wǎng)絡(luò)監(jiān)聽面臨的一個主要問題就是:如何使本不應(yīng)到達(dá)的數(shù)據(jù)包到達(dá)本網(wǎng)段。通常的解決方法主要有兩種,一種是ARP欺騙(ARPSpoof),另一種就是MAC水包(MACFlooding)。其中MACFlooding就是指向交換機(jī)發(fā)送大量含有虛假M(fèi)AC地址和IP地址的IP包,從而使得交換機(jī)內(nèi)部的地址表“溢出”,進(jìn)入所謂的“打開失效”模式,迫使SWITCH以類似于HUB的廣播方式工作,向網(wǎng)絡(luò)上所有的機(jī)器廣播數(shù)據(jù)包。本文將要詳細(xì)分析ARP欺騙模式。3ARP欺騙3.1ARP(AddressResolutionProtocol)的工作機(jī)制在以太網(wǎng)中傳輸?shù)臄?shù)據(jù)包是以太包,而以太包是依據(jù)其首部的MAC地址來進(jìn)行尋址的。發(fā)送方必須知道目的主機(jī)的MAC地址才能向其發(fā)送數(shù)據(jù)。ARP協(xié)議的作用就在于把邏輯地址轉(zhuǎn)換成物理地址,也即是把32bit的IP地址變換成48bit的以太網(wǎng)地址。為避免頻繁發(fā)送ARP包進(jìn)行尋址,每臺主機(jī)都有一個ARP高速緩存,其中記錄了最近一段時間內(nèi)其它IP地址與其MAC地址的對應(yīng)關(guān)系。如果本機(jī)想與某臺主機(jī)通信,則首先在ARP緩存中查找這臺主機(jī)的IP和MAC信息,若存在,則直接利用此MAC地址構(gòu)造以太包;若不存在,則向網(wǎng)絡(luò)上廣播一個ARP請求包。目的主機(jī)收到此請求包后,發(fā)送一個ARP應(yīng)答包。本機(jī)收到此應(yīng)答包后,把相關(guān)信息記錄在ARP高速緩存中,然后再進(jìn)行發(fā)送。由此可見,ARP協(xié)議是有缺陷的。一臺惡意的主機(jī)可以構(gòu)造一個ARP欺騙包,而源主機(jī)卻無法分辨真假。3.2相關(guān)協(xié)議的幀格式為了論述的簡潔性,文中我們對以太網(wǎng)中ARP幀格式做如3.3ARPSpoof原理實驗環(huán)境如下圖所示:在這個交換網(wǎng)絡(luò)中有四臺PC,其中HostD試圖進(jìn)行ARP欺騙來監(jiān)聽HostA的數(shù)據(jù)流。假設(shè)主機(jī)A要與主機(jī)B通信,但A在其ARP緩存中沒有找到有關(guān)主機(jī)B的MAC信息。于是,主機(jī)A發(fā)出ARP請求包:正常情況下,主機(jī)B回應(yīng)一個ARP應(yīng)答包:但同時,主機(jī)D也監(jiān)聽到了ARP請求包,隨后它也發(fā)出了一個偽造的ARP應(yīng)答包:這樣,主機(jī)A就收到了兩個ARP應(yīng)答包,一個來自主機(jī)B,一個來自主機(jī)D。當(dāng)A收到主機(jī)B的ARP應(yīng)答包后的一段時間,其ARP表確實會正確記錄著B的IP-to-MACmapping表項。但隨后,它收到了D的ARP包,并且它也仍然認(rèn)為這是正確的。于是,它修改自己緩存中的ARP表。此后,若A向B發(fā)送數(shù)據(jù),則數(shù)據(jù)實際上是流向D。同理,主機(jī)D也可以對主機(jī)B進(jìn)行欺騙,使流向A的數(shù)據(jù)流向D,并且啟用自己的數(shù)據(jù)轉(zhuǎn)發(fā)功能,充當(dāng)man-in-middle,這樣,主機(jī)D就達(dá)到了監(jiān)聽主機(jī)A通訊的目的。3.4程序處理流程下面給出了程序的處理流程。(1)獲取目的主機(jī)A的IP,并將它和本機(jī)IP、本機(jī)MAC地址分別保存到dst_ip,own_ip,own_mac中。(2)向主機(jī)A發(fā)出正常的ARP請求包,以得到dst_mac。(3)初始化數(shù)據(jù)鏈路,將NIC置為promiscuous模式。(4)進(jìn)入主循環(huán),開始監(jiān)聽數(shù)據(jù)包,置flag=0。(5)取出一個包,檢查是否是Ethernet類型的ARP包,若不是,轉(zhuǎn)步驟(10)。再比較發(fā)送端IP地址或接收端IP地址是否等于own_ip,若是,轉(zhuǎn)步驟(10)。否則繼續(xù)。(6)檢查發(fā)送端IP地址,若等于dst_ip,則置flag=1,記錄下接收端IP地址sec_ip,然后向此接收端(主機(jī)B)發(fā)出正常的ARP請求包,以得到sec_mac。(7)若flag=0,檢查接收端IP地址,若等于dst_ip,則置flag=-1,記錄下發(fā)送端IP地址sec_ip,以及發(fā)送端MAC地址sec_mac。(8)若flag=1,則用dst_ip,dst_mac,sec_ip,own_mac偽造針對主機(jī)A的ARP應(yīng)答包,生成一個Ethernet報頭,將其發(fā)送出去。接著,用sec_ip,sec_mac,dst_ip,own_mac偽造針對主機(jī)B的ARP包,并將此ARP包中可選域置為空,生成一個Ethernet報頭,將其發(fā)送出去。(9)若flag=-1,則用sec_ip,sec_mac,dst_ip,own_mac偽造針對主機(jī)B的ARP應(yīng)答包,生成一個Ethernet報頭,將其發(fā)送出去。接著,用dst_ip,dst_mac,sec_ip,own_mac偽造針對主機(jī)A的ARP包,并將此ARP包中可選域置為空,生成一個Eth-ernet報頭,將其發(fā)送出去。(10)轉(zhuǎn)入步驟(4),繼續(xù)監(jiān)聽數(shù)據(jù)包。對此流程,有以下幾點(diǎn)需要補(bǔ)充說明:·為了能讓主機(jī)A和B正常通信,應(yīng)在運(yùn)行此程序之前打開主機(jī)D上的數(shù)據(jù)轉(zhuǎn)發(fā)功能。·因為是在交換網(wǎng)絡(luò)中,所以只能監(jiān)聽到ARP請求包,而3.5程序結(jié)果分析本程序在交換網(wǎng)絡(luò)中能夠很好的完成欺騙的任務(wù),讓本不應(yīng)到達(dá)的數(shù)據(jù)包到達(dá)本網(wǎng)段,從而使得在交換網(wǎng)絡(luò)中進(jìn)行網(wǎng)絡(luò)監(jiān)聽成為可能。從中我們也可以看出,許多傳統(tǒng)的網(wǎng)絡(luò)協(xié)議的實現(xiàn)都是建立一種非常友好的,通信雙方充分信任的基礎(chǔ)之上。這樣,就給了很多別有用心的網(wǎng)絡(luò)使用者一些可乘之機(jī)。為此,在這里也想根據(jù)我們的實踐經(jīng)驗對如何防范交換網(wǎng)絡(luò)中的監(jiān)聽提出一些參考意見。第一,使用靜態(tài)ARP表。從我們的實驗可以看出,如果目的主機(jī)A采用的是靜態(tài)ARP表,則我們所做的欺騙就會失效。因此,在網(wǎng)絡(luò)結(jié)構(gòu)比較固定,網(wǎng)絡(luò)規(guī)模比較小的情況下,我們可以在重要的主機(jī)或工作站上通過設(shè)置靜態(tài)ARP表的方法來防止網(wǎng)絡(luò)監(jiān)聽。第二,會話加密。我們不應(yīng)把網(wǎng)絡(luò)安全信任關(guān)系建立在IP地址或硬件MAC地址的基礎(chǔ)上。而是應(yīng)該對所傳輸?shù)闹匾獢?shù)據(jù)事先進(jìn)行加密,再開始傳輸。這樣,即使我們傳輸?shù)臄?shù)據(jù)被惡意主機(jī)監(jiān)聽到,它也無法獲取切實有用的信息。第三,主動地檢測網(wǎng)絡(luò)嗅探器。上面的兩種方法都是比較被動的方法,我們也可以主動出擊,來檢查網(wǎng)絡(luò)中是否存在網(wǎng)絡(luò)嗅探器。·對ARP包進(jìn)行檢查,看是否經(jīng)常出現(xiàn)類似的ARP請求。這可以借鑒網(wǎng)絡(luò)的異常檢測方法。通過建立異常檢測模型,來對網(wǎng)絡(luò)上的ARP請求包進(jìn)行實時的監(jiān)測分析?!ねㄟ^測量網(wǎng)絡(luò)和主機(jī)的響應(yīng)時間,網(wǎng)絡(luò)通訊的丟包率,以及網(wǎng)絡(luò)帶寬來看是否出現(xiàn)了反常。4結(jié)論本文介紹了網(wǎng)絡(luò)監(jiān)聽的基本原理,并特別針對如何在交換網(wǎng)絡(luò)的環(huán)境中的監(jiān)聽進(jìn)行了詳細(xì)討論。由此,可以發(fā)現(xiàn)ARP協(xié)議的一些漏洞,并針對這些漏洞進(jìn)行了ARP欺騙的實驗。實驗結(jié)果表明,將傳統(tǒng)的集線器升級為交換機(jī),雖然能夠增加網(wǎng)絡(luò)監(jiān)聽的難度,但仍然無法
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 設(shè)計單位供應(yīng)鏈管理優(yōu)化
- 建筑施工合同屋頂綠化工程
- 鐵路分公司鐵路安全管理規(guī)章
- 電子設(shè)備租賃協(xié)議范本
- 風(fēng)力發(fā)電設(shè)施表面涂裝合同
- 證券交易信息化管理實施計劃
- 廣告設(shè)計班主任聘用協(xié)議
- 水產(chǎn)養(yǎng)殖加盟合作協(xié)議
- 食品庫存先進(jìn)先出原則
- 自然保護(hù)區(qū)生態(tài)保護(hù)操作手冊
- 道教與中醫(yī)學(xué)習(xí)通超星課后章節(jié)答案期末考試題庫2023年
- 四年級語文試卷選擇題100道
- 升壓站設(shè)備安裝調(diào)試工程施工質(zhì)量驗收及評定范圍劃分表
- 工程質(zhì)量安全手冊課件
- 2023北京東城區(qū)初二上期末考數(shù)學(xué)試卷及答案
- 科幻小說賞讀知到章節(jié)答案智慧樹2023年杭州師范大學(xué)
- 新編大學(xué)生安全教育知到章節(jié)答案智慧樹2023年山東師范大學(xué)
- 心肺復(fù)蘇實驗指導(dǎo)書
- 2021-2022學(xué)年重慶市兩江新區(qū)部編版六年級上冊期末素質(zhì)測查語文試卷(原卷版)
- 英語四級詞匯表帶音標(biāo)(免費(fèi)下載)
- 考試標(biāo)準(zhǔn)作文紙
評論
0/150
提交評論