何英畏
摘要:現(xiàn)在不少的網(wǎng)絡(luò)管理工具,通過網(wǎng)絡(luò)偵聽可以截取別人發(fā)送的郵件、聊天信息和訪問網(wǎng)頁的內(nèi)容等等??梢?,惡意的網(wǎng)絡(luò)偵聽會給網(wǎng)絡(luò)安全施以致命一擊。
關(guān)鍵詞:網(wǎng)絡(luò)偵聽;接品
我們在電視或者電影中經(jīng)常會看到這樣的情景,在某個家庭的電話線總線上,拉出一根電話分線,就能對這個電話進(jìn)行竊聽?,F(xiàn)在這種方式在網(wǎng)絡(luò)中也逐漸蔓延開來。由于局域網(wǎng)中采用的是廣播方式,因此在某個廣播域中(往往一個局域網(wǎng)就是一個廣播域),可以偵聽到所有的信息包。而惡意偵聽者通過對信息包進(jìn)行分析,就能夠非法竊取局域網(wǎng)上傳輸?shù)囊恍┲匾畔ⅰH绗F(xiàn)在很多黑客在入侵時(shí),都會把局域網(wǎng)掃描與偵聽作為他們?nèi)肭种暗臏?zhǔn)備工作。因?yàn)閼{借這些方式,他們可以輕易獲得用戶名、密碼等重要的信息?,F(xiàn)在不少的網(wǎng)絡(luò)管理工具,通過網(wǎng)絡(luò)偵聽還可以截取別人發(fā)送的郵件、聊天信息和訪問網(wǎng)頁的內(nèi)容等等。可見,惡意的網(wǎng)絡(luò)偵聽,會給網(wǎng)絡(luò)安全施以致命一擊。
1 網(wǎng)絡(luò)偵聽的工作原理
Ethernet協(xié)議的工作方式是將要發(fā)送的數(shù)據(jù)包發(fā)往連接在一起的所有主機(jī),在包頭中包括有應(yīng)該接收數(shù)據(jù)包的主機(jī)的正確地址,因?yàn)橹挥信c數(shù)據(jù)包中目標(biāo)地址一致的那臺主機(jī)才能接收到信息包,但是當(dāng)主機(jī)工作在監(jiān)聽模式下的話不管數(shù)據(jù)包中的目標(biāo)物理地址是什么,主機(jī)都將可以接收到。許多局域網(wǎng)內(nèi)有十幾臺甚至上百臺主機(jī)是通過一個電纜、一個集線器連接在一起的,在協(xié)議的高層或者用戶來看,當(dāng)同一網(wǎng)絡(luò)中的兩臺主機(jī)通信的時(shí)候,源主機(jī)將寫有目的的主機(jī)地址的數(shù)據(jù)包直接發(fā)向目的主機(jī),或者當(dāng)網(wǎng)絡(luò)中的一臺主機(jī)同外界的主機(jī)通信時(shí),源主機(jī)將寫有目的的主機(jī)IP地址的數(shù)據(jù)包發(fā)向網(wǎng)關(guān)。但這種數(shù)據(jù)包并不能在協(xié)議棧的高層直接發(fā)送出去,要發(fā)送的數(shù)據(jù)包必須從TCP/IP協(xié)議的IP層交給網(wǎng)絡(luò)接口,也就是所說的數(shù)據(jù)鏈路層。網(wǎng)絡(luò)接口不會識別IP地址的。在網(wǎng)絡(luò)接口由IP層來的帶有IP地址的數(shù)據(jù)包又增加了一部分以太幀的幀頭的信息。在幀頭中,有兩個域分別為只有網(wǎng)絡(luò)接口才能識別的源主機(jī)和目的主機(jī)的物理地址這是一個48位的地址,這個48位的地址是與IP地址相對應(yīng)的,換句話說就是一個IP地址也會對應(yīng)一個物理地址。對于作為網(wǎng)關(guān)的主機(jī),由于它連接了多個網(wǎng)絡(luò),它也就同時(shí)具備有很多個IP地址,在每個網(wǎng)絡(luò)中它都有一個。而發(fā)向網(wǎng)絡(luò)外的幀中繼攜帶的就是網(wǎng)關(guān)的物理地址。
Ethernet中填寫了物理地址的幀從網(wǎng)絡(luò)接口中,也就是從網(wǎng)卡中發(fā)送出去傳送到物理的線路上。如果局域網(wǎng)是由一條粗網(wǎng)或細(xì)網(wǎng)連接成的,那么數(shù)字信號在電纜上傳輸信號就能夠到達(dá)線路上的每一臺主機(jī)。再當(dāng)使用集線器的時(shí)候,發(fā)送出去的信號到達(dá)集線器,由集線器再發(fā)向連接在集線器上的每一條線路。這樣在物理線路上傳輸?shù)臄?shù)字信號也就能到達(dá)連接在集線器上的每個主機(jī)了。當(dāng)數(shù)字信號到達(dá)一臺主機(jī)的網(wǎng)絡(luò)接口時(shí),正常狀態(tài)下網(wǎng)絡(luò)接口對讀入數(shù)據(jù)幀進(jìn)行檢查,如果數(shù)據(jù)幀中攜帶的物理地址是自己的或者物理地址是廣播地址,那么就會將數(shù)據(jù)幀交給IP層軟件。對于每個到達(dá)網(wǎng)絡(luò)接口的數(shù)據(jù)幀都要進(jìn)行這個過程的。但是當(dāng)主機(jī)工作在監(jiān)聽模式下的話,所有的數(shù)據(jù)幀都將被交給上層協(xié)議軟件處理。
在這種工作模式下,若把惡意主機(jī)設(shè)置為偵聽模式,則其可以了解在局域網(wǎng)內(nèi)傳送的所有數(shù)據(jù)。如果這些數(shù)據(jù)沒有經(jīng)過加密處理的話,那么后果就可想而知了。
2 網(wǎng)絡(luò)偵聽的常見防范措施
2.1 采用加密技術(shù),實(shí)現(xiàn)密文傳輸
從上面的分析中,我們看到,若把主機(jī)設(shè)置為偵聽模式的話,則局域網(wǎng)中傳輸?shù)娜魏螖?shù)據(jù)都可以被主機(jī)所竊聽。但是,若竊聽者所拿到的數(shù)據(jù)是被加密過的,則其即使拿到這個數(shù)據(jù)包,也沒有用處,無法解密。所以,比較常見的防范局域網(wǎng)偵聽的方法就是加密。數(shù)據(jù)經(jīng)過加密之后,通過偵聽仍然可以得到傳送的信息,但是,其顯示的是亂碼。結(jié)果是,其即使得到數(shù)據(jù),也是一堆亂碼,沒有多大的用處。
現(xiàn)在針對這種傳輸?shù)募用苁侄斡泻芏?,最常見的如IPSec協(xié)議。Ipsec有三種工作模式,一是必須強(qiáng)制使用,二是接收方要求,三是不采用。當(dāng)某臺主機(jī)A向主機(jī)B發(fā)送數(shù)據(jù)文件的時(shí)候,主機(jī)A與主機(jī)B是會先進(jìn)行協(xié)商,其中包括是否需要采用IPSec技術(shù)對數(shù)據(jù)包進(jìn)行加密。一是必須采用,也就是說,無論是主機(jī)A還是主機(jī)B都必須支持IPSec,否則的話,這個傳輸將會以失敗告終。二是請求使用,如在協(xié)商的過程中,主機(jī)A會問主機(jī)B,是否需要采用IPSec。若主機(jī)B回答不需要采用,則就用明文傳輸,除非主機(jī)A的IPSec策略設(shè)置的是必須強(qiáng)制使用。若主機(jī)B回答的是可以用IPSec加密,則主機(jī)A就會先對數(shù)據(jù)包進(jìn)行加密,然后再發(fā)送。經(jīng)過IPSec技術(shù)加密過的數(shù)據(jù),一般很難被破解。而且,重要的是這個加密、解密的工作對于用戶來說,是透明的。也就是說,網(wǎng)絡(luò)管理員只需要配置好IPSec策略,不需要額外的操作。在使用這種加密手段的時(shí)候,唯一需要注意的就是如何設(shè)置IPSec策略。若使用強(qiáng)制加密的情況下,一定要保證通信的雙方都支持IPSec技術(shù),否則的話,就可能會導(dǎo)致通信的不成功。
2.2 利用路由器等網(wǎng)絡(luò)設(shè)備對網(wǎng)絡(luò)進(jìn)行物理分段
從上面的網(wǎng)絡(luò)偵聽原理中可以看出,如果人事部門的某位職工通過網(wǎng)絡(luò)發(fā)送一份機(jī)密文件給部門科長,其結(jié)果是此文件會在整個網(wǎng)絡(luò)內(nèi)進(jìn)行傳送。若人事部門跟其他部門之間不是利用共享式集線器或者普通交換機(jī)進(jìn)行連接,而是利用路由器進(jìn)行連接的話,就可以起到很好的防范網(wǎng)絡(luò)偵聽的問題。例如,當(dāng)職工A發(fā)信息給部門科長B的時(shí)候,若不采用路由器進(jìn)行分割,則這份郵件會分成若干個數(shù)據(jù)包在整個局域網(wǎng)內(nèi)部進(jìn)行傳送。相反,若我們利用路由器來連接人事部門跟其他部門的網(wǎng)絡(luò),則數(shù)據(jù)包傳送到路由器之后,路由器會檢查數(shù)據(jù)包的目的IP地址,然后根據(jù)這個IP地址來進(jìn)行轉(zhuǎn)發(fā)。此時(shí),就只有對應(yīng)的IP地址網(wǎng)絡(luò)可以收到這個數(shù)據(jù)包,而其他不相關(guān)的路由器接口就不會收到這個數(shù)據(jù)包。很明顯,利用路由器進(jìn)行數(shù)據(jù)包的預(yù)處理,就可以有效的減少數(shù)據(jù)包在網(wǎng)絡(luò)中傳播的范圍,讓數(shù)據(jù)包能夠在最小的范圍內(nèi)傳播。
另外,利用這種方法還可以減輕網(wǎng)絡(luò)帶寬的壓力。通過對網(wǎng)絡(luò)進(jìn)行物理分段,從而把數(shù)據(jù)包控制在一個比較小的范圍之內(nèi),可以節(jié)省網(wǎng)絡(luò)帶寬,提高網(wǎng)絡(luò)的性能。特別在遇到DDOS等類似攻擊的時(shí)候,可以減少其危害性。
2.3 利用虛擬局域網(wǎng)實(shí)現(xiàn)網(wǎng)絡(luò)分段
利用路由器這種網(wǎng)絡(luò)硬件來實(shí)現(xiàn)網(wǎng)絡(luò)分段,這需要購買路由器等設(shè)備。從經(jīng)濟(jì)的角度考慮,我們也可以利用一些交換機(jī)實(shí)現(xiàn)網(wǎng)絡(luò)分段的功能。如有些交換機(jī)支持虛擬局域網(wǎng)技術(shù),就可以利用它來實(shí)現(xiàn)網(wǎng)絡(luò)分段,減少網(wǎng)絡(luò)偵聽的可能性。虛擬局域網(wǎng)的分段作用跟路由器類似,可以把整個局域網(wǎng)分割成一個個的小段,讓數(shù)據(jù)包在小段內(nèi)傳輸,將以太網(wǎng)通信變?yōu)辄c(diǎn)到點(diǎn)的通信,從而可以防止大部分網(wǎng)絡(luò)偵聽的入侵。
不過,這畢竟還是通過網(wǎng)絡(luò)分段來防止網(wǎng)絡(luò)偵聽,所以,也存在著只能減少網(wǎng)絡(luò)偵聽入侵的幾率,而在某個網(wǎng)段內(nèi),仍然不能夠有效避免網(wǎng)絡(luò)偵聽。
所以,筆者還是推薦采用加密技術(shù)來防范網(wǎng)絡(luò)偵聽所帶來的危害,特別是防止用戶名、密碼等關(guān)鍵信息被竊聽。