一、引言
隨著計算機技術的發展,網絡已日益成為生活中不可或缺的工具,但伴之而來的非法入侵也一直威脅著計算機網絡系統的安全。由于局域網中采用廣播方式,因此,在某個廣播域中可以監聽到所有的信息包。而黑客通過對信息包進行分析,就能獲取局域網上傳輸的一些重要信息。事實上,很多黑客入侵時都把局域網掃描和偵聽作為其最基本的步驟和手段,原因是想用這種方法獲取其想要的密碼等信息。但另一方面,我們對黑客入侵活動和其它網絡犯罪進行偵查、取證時,也可以使用網絡監聽技術來獲取必要的信息。因此,了解以太網監聽技術的原理、實現方法和防范措施就顯得尤為重要。
二、局域網監聽的基本原理
根據IEEE的描述,局域網技術是"把分散在一個建筑物或相鄰幾個建筑物中的計算機、終端、大容量存儲器的外圍設備、控制器、顯示器、以及為連接其它網絡而使用的網絡連接器等相互連接起來,以很高的速度進行通訊的手段"。
局域網具有設備共享、信息共享、可進行高速數據通訊和多媒體信息通信、分布式處理、具有較高的兼容性和安全性等基本功能和特點。目前局域網主要用于辦公室自動化和校園教學及管理,一般可根據具體情況采用總線形、環形、樹形及星形的拓撲結構。
1. 網絡監聽
網絡監聽技術本來是提供給網絡安全管理人員進行管理的工具,可以用來監視網絡的狀態、數據流動情況以及網絡上傳輸的信息等。當信息以明文的形式在網絡上傳輸時,使用監聽技術進行攻擊并不是一件難事,只要將網絡接口設置成監聽模式,便可以源源不斷地將網上傳輸的信息截獲。網絡監聽可以在網上的任何一個位置實施,如局域網中的一臺主機、網關上或遠程網的調制解調器之間等。
2. 在局域網實現監聽的基本原理
對于目前很流行的以太網協議,其工作方式是:將要發送的數據包發往連接在一起的所有主機,包中包含著應該接收數據包主機的正確地址,只有與數據包中目標地址一致的那臺主機才能接收。但是,當主機工作監聽模式下,無論數據包中的目標地址是什么,主機都將接收(當然只能監聽經過自己網絡接口的那些包)。
在因特網上有很多使用以太網協議的局域網,許多主機通過電纜、集線器連在一起。當同一網絡中的兩臺主機通信的時候,源主機將寫有目的的主機地址的數據包直接發向目的主機。但這種數據包不能在IP層直接發送,必須從TCP/IP協議的IP層交給網絡接口,也就是數據鏈路層,而網絡接口是不會識別IP地址的,因此在網絡接口數據包又增加了一部分以太幀頭的信息。在幀頭中有兩個域,分別為只有網絡接口才能識別的源主機和目的主機的物理地址,這是一個與IP地址相對應的48位的地址。
傳輸數據時,包含物理地址的幀從網絡接口(網卡)發送到物理的線路上,如果局域網是由一條粗纜或細纜連接而成,則數字信號在電纜上傳輸,能夠到達線路上的每一臺主機。當使用集線器時,由集線器再發向連接在集線器上的每一條線路,數字信號也能到達連接在集線器上的每一臺主機。當數字信號到達一臺主機的網絡接口時,正常情況下,網絡接口讀入數據幀,進行檢查,如果數據幀中攜帶的物理地址是自己的或者是廣播地址,則將數據幀交給上層協議軟件,也就是IP層軟件,否則就將這個幀丟棄。對于每一個到達網絡接口的數據幀,都要進行這個過程。
然而,當主機工作在監聽模式下,所有的數據幀都將被交給上層協議軟件處理。而且,當連接在同一條電纜或集線器上的主機被邏輯地分為幾個子網時,如果一臺主機處于監聽模式下,它還能接收到發向與自己不在同一子網(使用了不同的掩碼、IP地址和網關)的主機的數據包。也就是說,在同一條物理信道上傳輸的所有信息都可以被接收到。另外,現在網絡中使用的大部分協議都是很早設計的,許多協議的實現都是基于一種非常友好的、通信的雙方充分信任的基礎之上,許多信息以明文發送。因此,如果用戶的賬戶名和口令等信息也以明文的方式在網上傳輸,而此時一個黑客或網絡攻擊者正在進行網絡監聽,只要具有初步的網絡和TCP/IP協議知識,便能輕易地從監聽到的信息中提取出感興趣的部分。同理,正確的使用網絡監聽技術也可以發現入侵并對入侵者進行追蹤定位,在對網絡犯罪進行偵查取證時獲取有關犯罪行為的重要信息,成為打擊網絡犯罪的有力手段。
三、局域網監聽的簡單實現
要使主機工作在監聽模式下,需要向網絡接口發出I/O控制命令,將其設置為監聽模式。在Unix系統中,發送這些命令需要超級用戶的權限。在Windows系列操作系統中,則沒有這個限制。要實現網絡監聽,可以自己用相關的計算機語言和函數編寫出功能強大的網絡監聽程序,也可以使用一些現成的監聽軟件,在很多黑客網站或從事網絡安全管理的網站都有。
四、如何檢測并防范網絡監聽
網絡監聽是很難被發現的,因為運行網絡監聽的主機只是被動地接收在局域局上傳輸的信息,不主動的與其他主機交換信息,也沒有修改在網上傳輸的數據包。
1. 對可能存在的網絡監聽的檢測
(1)對于懷疑運行監聽程序的機器,用正確的IP地址和錯誤的物理地址ping,運行監聽程序的機器會有響應。這是因為正常的機器不接收錯誤的物理地址,處理監聽狀態的機器能接收,但如果他的IPstack不再次反向檢查的話,就會響應。
(2)向網上發大量不存在的物理地址的包,由于監聽程序要分析和處理大量的數據包會占用很多的CPU資源,這將導致性能下降。通過比較前后該機器性能加以判斷。這種方法難度比較大。
(3)使用反監聽工具如antisniffer等進行檢測
2. 對網絡監聽的防范措施
(1)從邏輯或物理上對網絡分段
網絡分段通常被認為是控制網絡廣播風暴的一種基本手段,但其實也是保證網絡安全的一項措施。其目的是將非法用戶與敏感的網絡資源相互隔離,從而防止可能的非法監聽。
(2)以交換式集線器代替共享式集線器
對局域網的中心交換機進行網絡分段后,局域網監聽的危險仍然存在。這是因為網絡最終用戶的接入往往是通過分支集線器而不是中心交換機,而使用最廣泛的分支集線器通常是共享式集線器。這樣,當用戶與主機進行數據通信時,兩臺機器之間的數據包(稱為單播包Unicast Packet)還是會被同一臺集線器上的其他用戶所監聽。
因此,應該以交換式集線器代替共享式集線器,使單播包僅在兩個節點之間傳送,從而防止非法監聽。當然,交換式集線器只能控制單播包而無法控制廣播包(Broadcast Packet)和多播包(Multicast Packet)。但廣播包和多播包內的關鍵信息,要遠遠少于單播包。
(3)使用加密技術
數據經過加密后,通過監聽仍然可以得到傳送的信息,但顯示的是亂碼。使用加密技術的缺點是影響數據傳輸速度以及使用一個弱加密術比較容易被攻破。系統管理員和用戶需要在網絡速度和安全性上進行折中。
(4)劃分VLAN
運用VLAN(虛擬局域網)技術,將以太網通信變為點到點通信,可以防止大部分基于網絡監聽的入侵。
五、結束語
網絡監聽技術作為一種工具,總是扮演著正反兩方面的角色。對于入侵者來說,最喜歡的莫過于用戶的口令,通過網絡監聽可以很容易地獲得這些關鍵信息。而對于入侵檢測和追蹤者來說,網絡監聽技術又能夠在與入侵者的斗爭中發揮重要的作用。鑒于目前的網絡安全現狀,我們應該進一步挖掘網絡監聽技術的細節,從技術基礎上掌握先機,才能在與入侵者的斗爭中取得勝利。