局域網(wǎng)信息安全----網(wǎng)絡(luò)數(shù)據(jù)監(jiān)聽

          究竟是誰把小潔的日記偷看了呢?你正在使用的局域網(wǎng),又能真的很安全嗎?小潔不知道,大院的局域網(wǎng)里,有一雙耳朵正在悄悄的記錄著她的電腦上發(fā)送和接收的一切信息……

            這雙耳朵的名詞被稱為“網(wǎng)絡(luò)嗅探”(Network Sniffing,如:網(wǎng)絡(luò)嗅探器)或“網(wǎng)絡(luò)監(jiān)聽”(Network Listening),它并不是最近才出現(xiàn)的技術(shù),也并非專門用在黑道上的技術(shù),監(jiān)聽技術(shù)作為一種輔助手段,在協(xié)助網(wǎng)絡(luò)管理員監(jiān)測網(wǎng)絡(luò)傳輸數(shù)據(jù)、排除網(wǎng)絡(luò)故障等方面具有不可替代的作用,因此一直倍受網(wǎng)絡(luò)管理員的青睞并逐漸發(fā)展完善,所謂“監(jiān)聽”技術(shù),就是在互相通訊的兩臺計算機之間通過技術(shù)手段插入一臺可以接收并記錄通訊內(nèi)容的設(shè)備,最終實現(xiàn)對通訊雙方的數(shù)據(jù)記錄。一般都要求用作監(jiān)聽途徑的設(shè)備不能造成通訊雙方的行為異常或連接中斷等,即是說,監(jiān)聽方不能參與通訊中任何一方的通訊行為,僅僅是“被動”的接收記錄通訊數(shù)據(jù)而不能對其進行篡改,一旦監(jiān)聽方違反這個要求,這次行為就不是“監(jiān)聽”,而是“劫持”(Hijacking)了。

            看了以上對于“監(jiān)聽”概念的描述,有人也許已經(jīng)躍躍欲試了:我有網(wǎng)絡(luò),也有電腦,還有網(wǎng)絡(luò)嗅探工具,那我能不能把某個收費電影站甚至國防部網(wǎng)站的賬號密碼記錄下來呢?當(dāng)然這也不是不可能,但是前提是你有足夠能力在相關(guān)站點實體服務(wù)器的網(wǎng)關(guān)或路由設(shè)備上接入一個監(jiān)聽設(shè)備,否則憑一臺你自己家里的計算機是無法實現(xiàn)的。這就是“監(jiān)聽”的弱點:它要求監(jiān)聽設(shè)備的物理傳輸介質(zhì)與被監(jiān)聽設(shè)備的物理傳輸介質(zhì)存在直接聯(lián)系或者數(shù)據(jù)包能經(jīng)過路由選擇到達對方,即一個邏輯上的三方連接。能實現(xiàn)這個條件的只有以下情況:

            1. 監(jiān)聽方與通訊方位于同一物理網(wǎng)絡(luò),如局域網(wǎng)

            2. 監(jiān)聽方與通訊方存在路由或接口關(guān)系,例如通訊雙方的同一網(wǎng)關(guān)、連接通訊雙方的路由設(shè)備等

            因此,直接用自己家里的計算機去嗅探國防部網(wǎng)站的數(shù)據(jù)是不可能的,你看到的只能是屬于你自己領(lǐng)域的數(shù)據(jù)包,那些害怕自己在家里上網(wǎng)被遠方的入侵者監(jiān)聽的朋友大可以松口氣了(你機器上有木馬的情況除外),除非入侵者控制了你的網(wǎng)關(guān)設(shè)備,但這需要入侵者具有高級的入侵技術(shù),而一個有高級技術(shù)的入侵者會稀罕普通家庭用戶是的一臺計算機嗎?

            不可否認,“監(jiān)聽”行為是會對通訊方造成損失的,一個典型例子是在1994年的美國網(wǎng)絡(luò)竊聽事件,一個不知名的人在眾多的主機和骨干網(wǎng)絡(luò)設(shè)備上安裝了網(wǎng)絡(luò)監(jiān)聽軟件,利用它對美國骨干互聯(lián)網(wǎng)和軍方網(wǎng)竊取了超過100000個有效的用戶名和口令,引發(fā)了重大損失,而“監(jiān)聽”技術(shù),就是在那次事件以后才從地下走向公開化的。

            下面,我們來更深入一層了解如今最常見的網(wǎng)絡(luò)監(jiān)聽。

            二、活躍在局域網(wǎng)里的“耳朵”們

            由于前面說過的原因,嗅探技術(shù)不太能在公共網(wǎng)絡(luò)設(shè)備上使用(僅指入侵行為的安裝方式,因為網(wǎng)絡(luò)管理員要在某個路由設(shè)備上設(shè)置監(jiān)聽是簡單的事情),所以當(dāng)今最普遍的嗅探行為并不是發(fā)生在Internet上的,而是各個或大或小的局域網(wǎng),因為它很顯然滿足監(jiān)聽技術(shù)需要的條件:監(jiān)聽方與通訊方位于同一物理網(wǎng)絡(luò)。

            1.寫在前面:局域網(wǎng)內(nèi)計算機通訊的概念和尋址

            要發(fā)生監(jiān)聽事件,就必須有至少兩臺計算機處于通訊狀態(tài),而監(jiān)聽的實質(zhì)也是數(shù)據(jù)的傳輸,這就要求竊聽者自身也處于通訊網(wǎng)絡(luò)中,而實現(xiàn)局域網(wǎng)通訊的基礎(chǔ)是以太網(wǎng)模型(Ethernet),它包括物理上的數(shù)據(jù)傳輸設(shè)備如網(wǎng)卡、集線器和交換機等,除此之外還需要邏輯上的軟件、網(wǎng)絡(luò)協(xié)議和操作系統(tǒng)支持,如網(wǎng)卡驅(qū)動程序、TCP/IP協(xié)議、NetBIOS協(xié)議、多種尋址和底層協(xié)議等,具備了這些條件,計算機才可以實現(xiàn)完整的通訊過程。

            那么局域網(wǎng)內(nèi)的計算機通訊是怎么進行的呢?計算機系統(tǒng)要傳輸數(shù)據(jù)時,是嚴格按照IEEE802.3標(biāo)準的局域網(wǎng)協(xié)議進行的,而且還要結(jié)合TCP/IP和OSI模型7層規(guī)范實施,所以數(shù)據(jù)是經(jīng)過打包封裝的,從高層到低層被分別加上相關(guān)數(shù)據(jù)頭和地址,直至物理層把其轉(zhuǎn)化為電平信號傳送出去,而另一臺計算機則是通過逆向操作把數(shù)據(jù)還原的,這就引發(fā)了一個問題:尋址問題。

            在局域網(wǎng)里,計算機要查找彼此并不是通過IP進行的,而是通過網(wǎng)卡MAC地址(也被稱為以太網(wǎng)地址),它是一組在生產(chǎn)時就固化的全球唯一標(biāo)識號,根據(jù)協(xié)議規(guī)范,當(dāng)一臺計算機要查找另一臺計算機時,它必須把目標(biāo)計算機的IP通過ARP協(xié)議(地址解析協(xié)議)在物理網(wǎng)絡(luò)中廣播出去,“廣播”是一種讓任意一臺計算機都能收到數(shù)據(jù)的數(shù)據(jù)發(fā)送方式,計算機收到數(shù)據(jù)后就會判斷這條信息是不是發(fā)給自己的,如果是,就會返回應(yīng)答,在這里,它會返回自身地址,這一步被稱為“ARP尋址”。當(dāng)源計算機收到有效的回應(yīng)時,它就得知了目標(biāo)計算機的MAC地址并把結(jié)果保存在系統(tǒng)的地址緩沖池里,下次傳輸數(shù)據(jù)時就不需要再次發(fā)送廣播了,這個地址緩沖池會定時刷新重建,以免造成數(shù)據(jù)老舊和錯誤。當(dāng)前活動的ARP表可以使用arp –a命令查看。

            話題回到數(shù)據(jù)被打包成為比特流的最后兩層,在這里有一個關(guān)鍵部分被稱為“數(shù)據(jù)鏈路層”,數(shù)據(jù)在網(wǎng)絡(luò)層形成IP數(shù)據(jù)報,再向下到達數(shù)據(jù)鏈路層,由數(shù)據(jù)鏈路層將IP數(shù)據(jù)報分割為數(shù)據(jù)幀,增加以太網(wǎng)包頭,再向下一層發(fā)送。以太網(wǎng)包頭中包含著本機和目標(biāo)設(shè)備的MAC地址,也就是說,鏈路層的數(shù)據(jù)幀發(fā)送時,是依靠以太網(wǎng)地址而非IP地址來確認的,網(wǎng)卡驅(qū)動程序不會關(guān)心IP數(shù)據(jù)報中的目標(biāo)地址,它所需要的僅僅是MAC地址,而MAC地址就是通過前面提到的ARP尋址獲得的。簡單的說,數(shù)據(jù)在局域網(wǎng)內(nèi)的最終傳輸目標(biāo)地址是對方網(wǎng)卡的MAC地址,而不是IP地址,IP地址在局域網(wǎng)里只是為了協(xié)助系統(tǒng)找到MAC地址而已。

            而就是因為這個尋址結(jié)構(gòu),最終導(dǎo)致了監(jiān)聽實現(xiàn)的發(fā)生。

            那么,發(fā)生在Internet上的監(jiān)聽又是怎么進行的呢?Internet并不采用MAC地址尋址,因此不可能發(fā)生類似局域網(wǎng)內(nèi)的監(jiān)聽案例,實際上,Internet上的監(jiān)聽是因為數(shù)據(jù)必須通過的路由網(wǎng)關(guān)路由設(shè)備被做了手腳,不屬于本文討論范圍。

            2.發(fā)生在共享式局域網(wǎng)內(nèi)的竊聽

            所謂的“共享式”局域網(wǎng)(Hub-Based Lan),指的是早期采用集線器HUB作為網(wǎng)絡(luò)連接設(shè)備的傳統(tǒng)以太網(wǎng)的結(jié)構(gòu),在這個結(jié)構(gòu)里,所有機器都是共享同一條傳輸線路的,集線器沒有端口的概念,它的數(shù)據(jù)發(fā)送方式是“廣播”, 集線器接收到相應(yīng)數(shù)據(jù)時是單純的把數(shù)據(jù)往它所連接的每一臺設(shè)備線路上發(fā)送的,例如一臺機器發(fā)送一條“我要和小金說話”的報文,那么所有連接這個集線器的設(shè)備都會收到這條報文,但是只有名字為“小金”的計算機才會接收處理這條報文,而其他無關(guān)的計算機則會“不動聲色”的拋棄掉該報文。因此,共享以太網(wǎng)結(jié)構(gòu)里的數(shù)據(jù)實際上是沒有隱私性的,只是網(wǎng)卡會“君子”化的忽略掉與自己無關(guān)的“閑言碎語”罷了,但是很不巧,網(wǎng)卡在設(shè)計時是加入了“工作模式”的選項的,正是這個特性導(dǎo)致了噩夢。

            每塊網(wǎng)卡基本上都會有以下工作模式:Unicast、Broadcast、Multicast、Promiscuous,一般情況下,操作系統(tǒng)會把網(wǎng)卡設(shè)置為Broadcast(廣播)模式,在Broadcast模式下,網(wǎng)卡可以接收所有類型為廣播報文的數(shù)據(jù)幀——例如ARP尋址,此外它會忽略掉目標(biāo)地址并非自己MAC地址的報文,即只接收發(fā)往自身的數(shù)據(jù)報文、廣播和組播報文,這才是網(wǎng)卡的正常工作模式;如果一塊網(wǎng)卡被設(shè)置為Unicast或Multicast模式,在局域網(wǎng)里可能會引發(fā)異常,因為這兩個模式限制了它的接收報文類型;而Promiscuous(混雜)模式,則是罪惡的根源。在混雜模式里,網(wǎng)卡對報文中的目標(biāo)MAC地址不加任何檢查而全部接收,這樣就造成無論什么數(shù)據(jù),只要是路過的都會被網(wǎng)卡接收的局面,監(jiān)聽就是從這里開始的。

            一般情況下,網(wǎng)卡的工作模式是操作系統(tǒng)設(shè)置好的,而且沒有公開模式給用戶選擇,這就限制了普通用戶的監(jiān)聽實現(xiàn),但是自從嗅探器(Sniffer)家族發(fā)展到一定程度后,開始擁有了設(shè)置網(wǎng)卡工作模式的權(quán)力,而且矛頭直指Promiscuous,任何用戶只要在相應(yīng)選擇上打個勾,他的機器就變成了可以記錄局域網(wǎng)內(nèi)任何機器傳輸?shù)臄?shù)據(jù)的耳朵,由于共享式局域網(wǎng)的特性,所有人都是能收到數(shù)據(jù)的,這就造成了不可防御的信息泄漏。

            可是,最終這種監(jiān)聽方式還是被基本消滅了,人們用了什么手段呢?很簡單,局域網(wǎng)結(jié)構(gòu)升級了,變成“交換式局域網(wǎng)”。

            但是魔高一丈,若干年后,監(jiān)聽再次卷土重來。

            3.發(fā)生在交換式局域網(wǎng)內(nèi)的竊聽

            作為與“共享式”相對的“交換式”局域網(wǎng)(Switched Lan),它的網(wǎng)絡(luò)連接設(shè)備被換成了交換機(Switch),交換機比集線器聰明的一點是它連接的每臺計算機是獨立的,交換機引入了“端口”的概念,它會產(chǎn)生一個地址表用于存放每臺與之連接的計算機的MAC地址,從此每個網(wǎng)線接口便作為一個獨立的端口存在,除了聲明為廣播或組播的報文,交換機在一般情況下是不會讓其他報文出現(xiàn)類似共享式局域網(wǎng)那樣的廣播形式發(fā)送行為的,這樣即使你的網(wǎng)卡設(shè)置為混雜模式,它也收不到發(fā)往其他計算機的數(shù)據(jù),因為數(shù)據(jù)的目標(biāo)地址會在交換機中被識別,然后有針對性的發(fā)往表中對應(yīng)地址的端口,決不跑到別人家里去。

            這一改進迅速扼殺了傳統(tǒng)的局域網(wǎng)監(jiān)聽手段,但是歷史往往證明了人是難以被征服的……

            (1).對交換機的攻擊:MAC洪水

            不知道是誰第一個發(fā)現(xiàn)了這種攻擊模式,大概是因為交換機的出現(xiàn)破壞了嗅探器的工作,所以一肚子氣泄到了交換機身上,另一種看法則是精明的技術(shù)人員設(shè)想交換機的處理器在超過所能承受信息量的時候會發(fā)生什么情況而進行的試驗,無論是從什么論點出發(fā)的,至少這個攻擊模式已經(jīng)成為現(xiàn)實了:所謂MAC洪水攻擊,就是向交換機發(fā)送大量含有虛假MAC地址和IP地址的IP包,使交換機無法處理如此多的信息而引起設(shè)備工作異常,也就是所謂的“失效”模式,在這個模式里,交換機的處理器已經(jīng)不能正常分析數(shù)據(jù)報和構(gòu)造查詢地址表了,然后,交換機就會成為一臺普通的集線器,毫無選擇的向所有端口發(fā)送數(shù)據(jù),這個行為被稱作“泛洪發(fā)送”,這樣一來攻擊者就能嗅探到所需數(shù)據(jù)了。

            不過使用這個方法會為網(wǎng)絡(luò)帶來大量垃圾數(shù)據(jù)報文,對于監(jiān)聽者來說也不是什么好事,因此MAC洪水使用的案例比較少,而且設(shè)計了端口保護的交換機可能會在超負荷時強行關(guān)閉所有端口造成網(wǎng)絡(luò)中斷,所以如今,人們都偏向于使用地址解析協(xié)議ARP進行的欺騙性攻擊。

            (2).地址解析協(xié)議帶來的噩夢

            回顧前面提到的局域網(wǎng)尋址方式,我們已經(jīng)知道兩臺計算機完成通訊依靠的是MAC地址而與IP地址無關(guān),而目標(biāo)計算機MAC地址的獲取是通過ARP協(xié)議廣播得到的,而獲取的地址會保存在MAC地址表里并定期更新,在這個時間里,計算機是不會再去廣播尋址信息獲取目標(biāo)MAC地址的,這就給了入侵者以可乘之機。

            當(dāng)一臺計算機要發(fā)送數(shù)據(jù)給另一臺計算機時,它會以IP地址為依據(jù)首先查詢自身的ARP地址表,如果里面沒有目標(biāo)計算機的MAC信息,它就觸發(fā)ARP廣播尋址數(shù)據(jù)直到目標(biāo)計算機返回自身地址報文,而一旦這個地址表里存在目標(biāo)計算機的MAC信息,計算機就直接把這個地址作為數(shù)據(jù)鏈路層的以太網(wǎng)地址頭部封裝發(fā)送出去。為了避免出現(xiàn)MAC地址表保持著錯誤的數(shù)據(jù),系統(tǒng)在一個指定的時期過后會清空MAC地址表,重新廣播獲取一份地址列表,而且新的ARP廣播可以無條件覆蓋原來的MAC地址表。

            假設(shè)局域網(wǎng)內(nèi)有兩臺計算機A和B在通訊,而計算機C要作為一個竊聽者的身份得到這兩臺計算機的通訊數(shù)據(jù),那么它就必須想辦法讓自己能插入兩臺計算機之間的數(shù)據(jù)線路里,而在這種一對一的交換式網(wǎng)絡(luò)里,計算機C必須成為一個中間設(shè)備才能讓數(shù)據(jù)得以經(jīng)過它,要實現(xiàn)這個目標(biāo),計算機C就要開始偽造虛假的ARP報文。

            ARP尋址報文分兩種,一種是用于發(fā)送尋址信息的ARP查詢包,源機器使用它來廣播尋址信息,另一種則是目標(biāo)機器的ARP應(yīng)答包,用于回應(yīng)源機器它的MAC地址,在竊聽存在的情況下,如果計算機C要竊聽計算機A的通訊,它就偽造一個IP地址為計算機B而MAC地址為計算機C的虛假ARP應(yīng)答包發(fā)送給計算機A,造成計算機A的MAC地址表錯誤更新為計算機B的IP對應(yīng)著計算機C的MAC地址的情況,這樣一來,系統(tǒng)通過IP地址獲得的MAC地址都是計算機C的,數(shù)據(jù)就會發(fā)給以監(jiān)聽身份出現(xiàn)的計算機C了。但這樣會造成一種情況就是作為原目標(biāo)方的計算機B會接收不到數(shù)據(jù),因此充當(dāng)假冒數(shù)據(jù)接收角色的計算機C必須擔(dān)當(dāng)一個轉(zhuǎn)發(fā)者的角色,把從計算機A發(fā)送的數(shù)據(jù)返回給計算機B,讓兩機的通訊正常進行,這樣,計算機C就和計算機AB形成了一個通訊鏈路,而對于計算機A和B而言,計算機C始終是透明存在的,它們并不知道計算機C在偷聽數(shù)據(jù)的傳播。只要計算機C在計算機A重新發(fā)送ARP查詢包前及時偽造虛假ARP應(yīng)答包就能維持著這個通訊鏈路,從而獲得持續(xù)的數(shù)據(jù)記錄,同時也不會造成被監(jiān)聽者的通訊異常。

            計算機C為了監(jiān)聽計算機A和B數(shù)據(jù)通訊而發(fā)起的這種行為,就是“ARP欺騙”(ARP Spoofing)或稱“ARP攻擊”(ARP Attacking),實際上,真實環(huán)境里的ARP欺騙除了嗅探計算機A的數(shù)據(jù),通常也會順便把計算機B的數(shù)據(jù)給嗅探了去,只要計算機C在對計算機A發(fā)送偽裝成計算機B的ARP應(yīng)答包的同時也向計算機B發(fā)送偽裝成計算機A的ARP應(yīng)答包即可,這樣它就可作為一個雙向代理的身份插入兩者之間的通訊鏈路。

            三、圍堵“耳朵”:局域網(wǎng)監(jiān)聽的防御

            知道了局域網(wǎng)監(jiān)聽的實現(xiàn),我們就不難重現(xiàn)開篇提及的檢察員小潔的日記內(nèi)容是如何被別人看到的了:雖然辦公室的網(wǎng)絡(luò)是交換式局域網(wǎng),但是竊聽者使用ARP欺騙工具篡改了小潔機器的MAC地址表,使小潔的機器發(fā)出的數(shù)據(jù)實際上是在竊聽者機器里走一圈后才真正發(fā)送出去的,這時候只要小潔登錄任何使用明文傳輸密碼的網(wǎng)頁表單,她輸入的網(wǎng)址、用戶名和密碼就會被嗅探軟件記錄下來,竊聽者只要使用這個密碼登錄網(wǎng)站,就可以把小潔寫在日記本上的隱私一覽無余了。

            由此可見,由網(wǎng)絡(luò)監(jiān)聽引發(fā)的信息泄漏后果是非常嚴重的,輕則隱私泄漏,重則因為銀行密碼、經(jīng)過網(wǎng)絡(luò)傳輸?shù)奈臋n內(nèi)容失竊而導(dǎo)致無法計量的經(jīng)濟損失,因此,如何有效防止局域網(wǎng)監(jiān)聽,一直是令管理員操心的問題。

            由于共享式局域網(wǎng)的局限性(集線器不會選擇具體端口),在上面流通的數(shù)據(jù)基本上是“你有,我也有”的,竊聽者連ARP信息都不需要更改,自然無法躲過被監(jiān)聽的命運,要解決這個問題,只能先把集線器更換為交換機,杜絕這種毫無隱私的數(shù)據(jù)傳播方式。

            好了,現(xiàn)在我們換到交換式局域網(wǎng)了,下一步,就該開始著手圍堵這些不受歡迎的耳朵們了。

            1.尋找隱匿的耳朵

            如果我們懷疑某臺機器在偷聽數(shù)據(jù),應(yīng)該怎么辦呢?

            早在幾年前,有一種被稱為ping檢測的方法就已經(jīng)開始流行了,它的原理還是利用MAC地址自身,大部分網(wǎng)卡允許用戶在驅(qū)動程序設(shè)置里自行指定一個MAC地址(特別說明:這種通過驅(qū)動程序指定的MAC地址僅僅能用于自身所處的局域網(wǎng)本身,并不能用于突破遠程網(wǎng)關(guān)的MAC+IP綁定限制!),因此我們就可以利用這一特性讓正在欺騙MAC地址的機器自食其果。

            假設(shè)IP為192.168.1.4的機器上裝有ARP欺騙工具和嗅探器,所以ping 192.168.1.4,然后arp –a   find “192.168.1.4” 得到它的MAC地址“00-00-0e-40-b4-a1”

            修改自己的網(wǎng)卡驅(qū)動設(shè)置頁,改Network Address為“00000e40b4a2”,即去掉分隔符的MAC地址最末位加1

            再次ping 192.168.1.4,正常的話應(yīng)該不會看到任何回應(yīng),因為局域網(wǎng)中不會存在任何與“00-00-0e-40-b4-a2”相符的MAC地址。

            如果看到返回,則說明192.168.1.4很可能裝有嗅探器。

            另一種比較“惡毒”的方法是對被懷疑安裝了嗅探器的計算機發(fā)送大量不存在的MAC地址的數(shù)據(jù)報,由于監(jiān)聽程序在進行分析和處理大量的數(shù)據(jù)包需要占用很多的CPU資源,這將導(dǎo)致對方計算機性能下降,這樣我們只要比較發(fā)送報文前后該機器性能就能加以判斷,但是如果對方機器配置比較高,這個方法就不太有效了。

            除了主動嗅探的行為,還有一些機器是被入侵者惡意種植了帶有嗅探功能的后門程序,那么我們就必須使用本機測試法了,其原理是建立一個原始連接(Raw Socket)打開自己機器的隨機端口,然后再建立一個UDP連接到自己機器的任意端口并隨意發(fā)送一條數(shù)據(jù),正常情況下,這個方法建立的原始連接是不可能成功接收數(shù)據(jù)的,如果原始連接能接收這個數(shù)據(jù),則說明機器網(wǎng)卡正處于“混雜”模式——嗅探器經(jīng)常這么干,接下來的事情就不用我說了吧?

            但是基本上沒找到現(xiàn)成的工具可以使用,也可能是我的查找能力問題,但是其實這個問題很好解決:因為安裝了嗅探器的機器是能接收到任何數(shù)據(jù)的,那么只要在這個機器上再次安裝一個嗅探軟件(不是ARP欺騙類型!)就能“共享”捕獲的數(shù)據(jù),正常情況下我們是只能看到屬于自己IP的網(wǎng)絡(luò)數(shù)據(jù)的,如果不巧發(fā)現(xiàn)嗅探器把其它計算機的數(shù)據(jù)也順手牽羊了,并且由于ARP欺騙的存在,我們還可能嗅探到自己的計算機會定期發(fā)送一條ARP應(yīng)答包出去……既然都做得那么明顯了,那就不要客氣把它滅了……

            2.預(yù)防為主——從根本上防御網(wǎng)絡(luò)監(jiān)聽

            雖然利用ARP欺騙報文進行的網(wǎng)絡(luò)監(jiān)聽很難察覺,但它并不是無法防御的,與ARP尋址相對的,在一個相對穩(wěn)定的局域網(wǎng)里(機器數(shù)量和網(wǎng)卡被更換的次數(shù)不多,也沒有人一沒事干就去更改自己IP),我們可以使用靜態(tài)ARP映射,即記錄下局域網(wǎng)內(nèi)所有計算機的網(wǎng)卡MAC地址和對應(yīng)的IP,然后使用“arp –s IP地址 MAC地址”進行靜態(tài)綁定,這樣計算機就不會通過ARP廣播來找人了,自然不會響應(yīng)ARP欺騙工具發(fā)送的動態(tài)ARP應(yīng)答包(靜態(tài)地址的優(yōu)先度大于動態(tài)地址),但是這個方法存在的劣勢就是對操作用戶要求挺高,要知道并不是所有人都理解MAC地址是干什么用的,另外一點就是如果機器數(shù)量過多或者變動頻繁,會對操作用戶(通常是網(wǎng)絡(luò)管理員)造成巨大的心靈傷害……

            因此,一般常用的方法是使用軟件防御,例如Anti Arp Sniffer,它可以強行綁定本機與網(wǎng)關(guān)的MAC關(guān)系,讓偽裝成網(wǎng)關(guān)獲取數(shù)據(jù)的監(jiān)聽機成了擺設(shè),而如果是監(jiān)聽者僅僅欺騙了某臺計算機的情況呢?這就要使用ARP Watch了,ARP Watch會實時監(jiān)控局域網(wǎng)中計算機MAC地址和ARP廣播報文的變化情況,如果有ARP欺騙程序發(fā)送虛假地址報文,必然會造成MAC地址表不符,ARP Watch就會彈出來警告用戶了。

            此外,對網(wǎng)絡(luò)進行VLAN劃分也是有效的方法,每個VLAN之間都是隔離的,必須通過路由進行數(shù)據(jù)傳輸,這個時候MAC地址信息會被丟棄,每臺計算機之間都是采用標(biāo)準TCP/IP進行數(shù)據(jù)傳輸?shù)模词勾嬖谛崽狡饕矡o法使用虛假的MAC地址進行欺騙了。

            四、結(jié)語

            網(wǎng)絡(luò)監(jiān)聽技術(shù)作為一種工具,總是扮演著正反兩方面的角色,尤其在局域網(wǎng)里更是經(jīng)常以黑暗的身份出現(xiàn)。對于入侵者來說,通過網(wǎng)絡(luò)監(jiān)聽可以很容易地獲得用戶的關(guān)鍵信息,因此他們青睞。而對于入侵檢測和追蹤者來說,網(wǎng)絡(luò)監(jiān)聽技術(shù)又能夠在與入侵者的斗爭中發(fā)揮重要的作用,因此他們也離不開必要的嗅探。我們應(yīng)該努力學(xué)習(xí)網(wǎng)絡(luò)
          安全知識,進一步挖掘網(wǎng)絡(luò)監(jiān)聽技術(shù)的細節(jié),扎實掌握足夠的技術(shù)基礎(chǔ),才能在與入侵者的斗爭中取得勝利。

          posted on 2006-08-24 18:57 77 閱讀(1274) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          <2006年8月>
          303112345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(12)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          新聞檔案

          相冊

          API文檔

          java開發(fā)與研究

          にほん

          上海房產(chǎn)

          東京生活

          數(shù)據(jù)庫大全

          編程與開發(fā)

          美國開發(fā)生活

          走向管理

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 蕲春县| 调兵山市| 商洛市| 安阳市| 建瓯市| 金寨县| 龙江县| 济宁市| 吴堡县| 宁晋县| 建瓯市| 利津县| 晋宁县| 察雅县| 巴林右旗| 运城市| 利辛县| 阳原县| 克什克腾旗| 武冈市| 阜阳市| 新余市| 靖宇县| 阿克陶县| 泸州市| 偏关县| 错那县| 凤阳县| 平凉市| 临海市| 贡山| 通山县| 马关县| 绍兴县| 凌云县| 江川县| 格尔木市| 阿拉尔市| 汾西县| 门头沟区| 运城市|