與電話電路不同,計算機網絡是共享通訊通道的。支持每對通訊計算機獨占通道的交換機/集線器仍然過於昂貴。共享意味著計算機能夠接收到發送給其它計算機的信息。捕獲在網絡中傳輸的數據信息就稱為sniffing(竊聽)。 以太網是現在應用最廣泛的計算機連網方式。以太網協議是在同一回路向所有主機發送數據包信息。數據包頭包含有目標主機的正確地址。一般情況下只有具有該地址的主機會接受這個數據包。如果一台主機能夠接收所有數據包,而不理會數據包頭內容,這種方式通常稱為"混雜"模式。 由於在一個普通的網絡環境中,帳號和口令信息以明文方式在以太網中傳輸,一旦入侵者獲得其中一台主機的root權限,並將其置於混雜模式以竊聽網絡數據,從而有可能入侵網絡中的所有計算機。 哪裡可以得到sniffer Sniffer是黑客們最常用的入侵手段之一。例如Esniff.c,是一個小巧的工具,運行在SunOS平台,可捕獲所有telnet、ftp、rloing會話的前300個字節內容。這個由Phrack開發的程序已成為在黑客中傳播最廣泛的工具之一。 你可以在經過允許的網絡中運行Esniff.c,了解它是如何有效地危及本地機器安全。 以下是一些也被廣泛用於調試網絡故障的sniffer工具: * Etherfind on SunOs * Snoop on Solaris 2.x and SunOs * Tcpdump * Packetman, Interman, Etherman, Loadman 商用sniffer: * Network General. Network General開發了多種產品。最重要的是Expert Sniffer,,它不僅僅可以sniff,還能夠通過高性能的專門系統發送/接收數據包,幫助診斷故障。還有一個增強產品"Distrbuted Sniffer System"可以將UNIX工作站作為sniffer控制台,而將sniffer agents(代理)分布到遠程主機上。 * Microsoft's Net Monitor 對於某些商業站點,可能同時需要運行多種協議--NetBEUI、IPX/SPX、TCP/IP、802.3和SNA等。這時很難找到一種sniffer幫助解決網絡問題,因為許多sniffer往往將某些正確的協議數據包當成了錯誤數據包。Microsoft的Net Monitor(以前叫Bloodhound)可以解決這個難題。它能夠正確區分諸如Netware控制數據包、NT NetBios名字服務廣 播等獨特的數據包。(etherfind只會將這些數據包標識為類型0000的廣播數據包。)這個工具運行在MS Windows平台上。它甚至能夠按MAC地址(或主機名)進行網絡統計和會話信息監視。只需簡單地單擊某個會話即可獲得tcpdump標准的輸出。 過濾器設置也是最為簡單的,只要在一個對話框中單擊需要監視的主機即可。 如何監測主機正在竊聽(sniffed) 要監測只采集數據而不對任何信息進行響應的竊聽設備,需要逐個仔細檢查以太網上所有物理連接。 不可能通過遠程發送數據包或ping就可以檢查計算機是否正在竊聽。 一個主機上的sniffer會將網絡接口置為混雜模式以接收所有數據包。對於某些UNIX系統,通過監測到混雜模式的網絡接口。雖然可以在非混雜模式下運行sniffer,但這樣將只能捕獲本機會話。入侵者也可能通過在諸如sh、telnet、login、in.telnetd等 程序中捕獲會話,並將用戶操作記錄到其它文件中。這些都可能通過監視tty和kmem等設備輕易發現。只有混雜模式下的sniffing才能捕獲以太網中的所有會話,其它模式只能捕獲本機會話。 對於SunOS、NetBSD和其它BSD Unix系統,如下命令: "ifconfig -a" 會顯示所有網絡接口信息和是否在混雜模式。DEC OSF/1和IRIX等系統需要指定設備。要找到系統中有什麼網絡接口,可以運行如下命令: # netstat -r Routing tables Internet: Destination Gateway Flags Refs Use Interface default iss.net UG 1 24949 le0 localhost localhost UH 2 83 lo0 然後通過如下命令檢查每個網絡接口: #ifconfig le0 le0: flags=8863 inet 127.0.0.1 netmask 0xffffff00 broadcast 255.0.0.1 入侵者經常會替換ifconfig等命令來避開檢查,因此一定要檢查命令程序的校驗值。 在ftp.cert.org:/pub/tools/的cpm程序(SunOS平台)可以檢查接口是否有混雜模式標記。 對於Ultrix系統,使用pfstat和pfconfig命令也可能監測是否有sniffer運行。 pfconfig指定誰有權限運行sniffer。 pfstat顯示網絡接口是否處於混雜模式。 這些命令只在sniffer與內核存在鏈接時有效。而在缺省情況,sniffer是沒有與內核鏈接的。大多數的Unix系統,例如Irix、Solaris、SCO等,都沒有任何標記來指示是否處於混雜模式,因此入侵者能夠竊聽整個網絡而卻無法監測到它。 通常一個sniffer的記錄文件會很快增大並填滿文件空間。在一個大型網絡中,sniffer明顯加重機器負荷。這些警告信息往往能夠幫助管理員發現sniffer。建議使用lsof程序搜索訪問數據包設備(如SunOS的/dev/nit)的程序和記錄文件。 阻止sniffer 主動式集線器只向目標地址主機發送數據包,從而使混雜模式sniffer失效。它僅適用於10Base-T以太網。(注:這種現在已在計算機市場消失。) 只有兩家廠商曾生產過主動式集線器: * 3Com * HP 隨著交換機的成本和價格的大幅度降低,交換機已成為非常有效的使sniffer失效的設備。目前最常見的交換機在第三層(網絡層)根據數據包目標地址進行轉發,而不太采取集線器的廣播方式,從而使sniffer失去了用武之地。 加密 目前有許多軟件包可用於加密連接,從而使入侵者即使捕獲到數據,但無法將數據解密而失去竊聽的意義。 以下是以前常用的一些軟件包 * deslogin coast.cs.purdue.edu:/pub/tools/unix/deslogin . * swIPe ftp.csua.berkeley.edu:/pub/cypherpunks/swIPe/ * Netlock Kerberos Kerberos是另一個加密網絡中帳號信息的軟件包。它的缺點是所有帳號信息都存放在一台主機中,如果該主機被入侵,則會危及整個網絡安全。另外配置它也不是一件簡單的事情。Kerberos包括流加密rlogind和流加密telnetd等,它可以防止入侵者捕獲用戶在登錄完成後所進行的操作。 Kerberos FAQ可從ftp站點rtfm.mit.edu中得到:/pub/usenet/comp.protocols/kerberos/Kerberos_Users__Frequently_Asked_Questions_1.11一次性口令技術 S/key和其它一次性口令技術一樣,使竊聽帳號信息失去意義。S/key的原理是遠程主機已得到一個口令(這個口令不會在不安全的網絡中傳輸),當用戶連接時會獲得一個"挑戰"(challenge)信息,用戶將這個信息和口令經過某個算法運算,產生正確的"響應"(response)信息(如果通訊雙方口令正確的話)。這種驗證方式無需在網絡中傳輸口令,而且相同的"挑戰/響應"也不會出現兩次。S/key可從以下網址得到: ftp://thumper.bellcore.com/pub/nmh/skey 還有一種一次性口令技術是ID卡系統。每個授權用戶都有一個產生用於訪問各自帳 號的數字號碼的ID卡。如果沒有這個ID卡,不可能猜出這個數字號碼。 以下是提供這類解決方案的公司資料: Secure Net Key (SNK) Digital Pathways, Inc. 201 Ravendale Dr. Mountainview, Ca. 97703-5216 USA Phone: 415-964-0707 Fax: (415) 961-7487 Secure ID Security Dynamics, One Alewife Center Cambridge, MA 02140-2312 USA Phone: 617-547-7820 Fax: (617) 354-8836 Secure ID uses time slots as authenication rather than challenge/response. ArKey and OneTime Pass Management Analytics PO Box 1480 Hudson, OH 44236 Email: [email protected] Tel:US 216-686-0090 Fax: US 216-686-0092 WatchWord and WatchWord II Racal-Guardata 480 Spring Park Place Herndon, VA 22070 703-471-0892 1-800-521-6261 ext 217 CRYPTOCard Arnold Consulting, Inc. 2530 Targhee Street, Madison, Wisconsin 53711-5491 U.S.A. Phone : 608-278-7700 Fax: 608-278-7701 Email: [email protected] CRYPTOCard is a modern, SecureID-sized, SNK-compatible device. SafeWord Enigma Logic, Inc. 2151 Salvio #301 Concord, CA 94520 510-827-5707 Fax: (510)827-2593 For information about Enigma ftp to: ftp.netcom.com in directory/pub/sa/safeword Secure Computing Corporation: 2675 Long Lake Road Roseville, MN 55113 Tel: (612) 628-2700 Fax: (612) 628-2701 [email protected] 非混雜模式網絡接口設備 以前,大多數IBM DOS兼容機器的網卡都不支持混雜模式,所以無法進行sniffing。 但DOS已退出計算機網絡舞台,對於現在計算機市場中的網絡接口設備,請向供應商查詢 是否為非混雜模式設備(即不支持混雜模式)。
互聯網技術在線 收集整理