隨著Internet及電子商務(wù)的日益普及,Internet的安全也越來越受到重視。在Internet安全隱患中扮演重要角色的是Sniffer和Scanner,在此,北京北大青鳥學(xué)術(shù)部將介紹Sniffer以及如何阻止sniffer。
大多數(shù)的黑客僅僅為了探測內(nèi)部網(wǎng)上的主機并取得控制權(quán),只有那些"雄心勃勃"的黑客,為了控制整個網(wǎng)絡(luò)才會安裝特洛伊木馬和后門程序,并清除記錄。他們經(jīng)常使用的手法是安裝sniffer。(北京北大青鳥通州校區(qū)計算機培訓(xùn)學(xué)校,網(wǎng)絡(luò)工程師、軟件工程師培訓(xùn))
在內(nèi)部網(wǎng)上,黑客要想迅速獲得大量的賬號(包括用戶名和密碼),最為有效的手段是使用 "sniffer" 程序。這種方法要求運行Sniffer 程序的主機和被監(jiān)聽的主機必須在同一個以太網(wǎng)段上,故而在外部主機上運行sniffer是沒有效果的。再者,必須以root的身份使用sniffer 程序,才能夠監(jiān)聽到以太網(wǎng)段上的數(shù)據(jù)流。
黑客會使用各種方法,獲得系統(tǒng)的控制權(quán)并留下再次侵入的后門,以保證sniffer能夠執(zhí)行。在Solaris 2.x平臺上,sniffer 程序通常被安裝在/usr/bin 或/dev目錄下。黑客還會巧妙的修改時間,使得sniffer程序看上去是和其它系統(tǒng)程序同時安裝的。
大多數(shù) "ethernet sniffer"程序在后臺運行,將結(jié)果輸出到某個記錄文件中。黑客常常會修改ps程序,使得系統(tǒng)管理員很難發(fā)現(xiàn)運行的sniffer程序。
"ethernet sniffer"程序?qū)⑾到y(tǒng)的網(wǎng)絡(luò)接口設(shè)定為混合模式。這樣,它就可以監(jiān)聽到所有流經(jīng)同一以太網(wǎng)網(wǎng)段的數(shù)據(jù)包,不管它的接受者或發(fā)送者是不是運行sniffer的主機。 程序?qū)⒂脩裘、密碼和其它黑客感興趣的數(shù)據(jù)存入log文件。黑客會等待一段時間 ----- 比如一周后,再回到這里下載記錄文件。(北京北大青鳥通州校區(qū)計算機培訓(xùn)訓(xùn)學(xué)校,網(wǎng)絡(luò)工程師、軟件工程師培訓(xùn))
一、什么是sniffer
與電話電路不同,計算機網(wǎng)絡(luò)是共享通訊通道的。共享意味著計算機能夠接收到發(fā)送給其它計算機的信息。捕獲在網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)信息就稱為sniffing(竊聽)。
以太網(wǎng)是現(xiàn)在應(yīng)用最廣泛的計算機連網(wǎng)方式。以太網(wǎng)協(xié)議是在同一回路向所有主機發(fā)送數(shù)據(jù)包信息。數(shù)據(jù)包頭包含有目標主機的正確地址。一般情況下只有具有該地址的主機會接受這個數(shù)據(jù)包。如果一臺主機能夠接收所有數(shù)據(jù)包,而不理會數(shù)據(jù)包頭內(nèi)容,這種方式通常稱為"混雜" 模式。(北京北大青鳥通州校區(qū)計算機培訓(xùn)學(xué)校,網(wǎng)絡(luò)工程師、軟件工程師培訓(xùn))
由于在一個普通的網(wǎng)絡(luò)環(huán)境中,帳號和口令信息以明文方式在以太網(wǎng)中傳輸, 一旦入侵者獲得其中一臺主機的root權(quán)限,并將其置于混雜模式以竊聽網(wǎng)絡(luò)數(shù)據(jù),從而有可能入侵網(wǎng)絡(luò)中的所有計算機。(北京北大青鳥通州校區(qū)計算機培訓(xùn)學(xué)校,網(wǎng)絡(luò)工程師、軟件工程師培訓(xùn))
二、sniffer工作原理
通常在同一個網(wǎng)段的所有網(wǎng)絡(luò)接口都有訪問在物理媒體上傳輸?shù)乃袛?shù)據(jù)的能力,而每個網(wǎng)絡(luò)接口都還應(yīng)該有一個硬件地址,該硬件地址不同于網(wǎng)絡(luò)中存在的其他網(wǎng)絡(luò)接口的硬件地址,同時,每個網(wǎng)絡(luò)至少還要一個廣播地址。(代表所有的接口地址),在正常情況下,一個合法的網(wǎng)絡(luò)接口應(yīng)該只響應(yīng)這樣的兩種數(shù)據(jù)幀:
1、幀的目標區(qū)域具有和本地網(wǎng)絡(luò)接口相匹配的硬件地址。
2、幀的目標區(qū)域具有"廣播地址"。
在接受到上面兩種情況的數(shù)據(jù)包時,nc通過cpu產(chǎn)生一個硬件中斷,該中斷能引起操作系統(tǒng)注意,然后將幀中所包含的數(shù)據(jù)傳送給系統(tǒng)進一步處理。
而sniffer就是一種能將本地nc狀態(tài)設(shè)成(promiscuous)狀態(tài)的軟件,當nc處于這種"混雜"方式時,該nc具備"廣播地址",它對所有遭遇到的每一個幀都產(chǎn)生一個硬件中斷以便提醒操作系統(tǒng)處理流經(jīng)該物理媒體上的每一個報文包。(絕大多數(shù)的nc具備置成 promiscuous方式的能力)(北京北大青鳥通州校區(qū)計算機培訓(xùn)學(xué)校,網(wǎng)絡(luò)工程師、軟件工程師培訓(xùn))
可見,sniffer工作在網(wǎng)絡(luò)環(huán)境中的底層,它會攔截所有的正在網(wǎng)絡(luò)上傳送的數(shù)據(jù),并且通過相應(yīng)的軟件處理,可以實時分析這些數(shù)據(jù)的內(nèi)容,進而分析所處的網(wǎng)絡(luò)狀態(tài)和整體布局。值得注意的是:sniffer是極其安靜的,它是一種消極的安全攻擊。
通常sniffer所要關(guān)心的內(nèi)容可以分成這樣幾類:
1、口令
我想這是絕大多數(shù)非法使用sniffer的理由,sniffer可以記錄到明文傳送的userid和passwd.就算你在網(wǎng)絡(luò)傳送過程中使用了加密的數(shù)據(jù),sniffer記錄的數(shù)據(jù)一樣有可能使入侵者在家里邊吃肉串邊想辦法算出你的算法。(北京北大青鳥通州校區(qū)計算機培訓(xùn)學(xué)校,網(wǎng)絡(luò)工程師、軟件工程師培訓(xùn))
2、金融帳號
許多用戶很放心在網(wǎng)上使用自己的信用卡或現(xiàn)金帳號,然而sniffer可以很輕松截獲在網(wǎng)上傳送的用戶姓名、口令、信用卡號碼、截止日期、帳號和pin.
3、偷窺機密或敏感的信息數(shù)據(jù)
通過攔截數(shù)據(jù)包,入侵者可以很方便記錄別人之間敏感的信息傳送,或者干脆攔截整個的email會話過程。(北京北大青鳥通州校區(qū)計算機培訓(xùn)學(xué)校,網(wǎng)絡(luò)工程師、軟件工程師培訓(xùn))
4、窺探低級的協(xié)議信息。
這是很可怕的事,北京北大青鳥通州校區(qū)專家認為,通過對底層的信息協(xié)議記錄,比如記錄兩臺主機之間的網(wǎng)絡(luò)接口地址、遠程網(wǎng)絡(luò)接口ip地址、ip路由信息和tcp連接的字節(jié)順序號碼等。這些信息由非法入侵的人掌握后將對網(wǎng)絡(luò)安全構(gòu)成極大的危害,通常有人用sniffer收集這些信息只有一個原因:他正在進行一次欺詐,(通常的ip地址欺詐就要求你準確插入tcp連接的字節(jié)順序號,這將在以后整理的文章中指出)如果某人很關(guān)心這個問題,那么sniffer對他來說只是前奏,今后的問題要大得多。(北京北大青鳥通州校區(qū)計算機培訓(xùn)學(xué)校,網(wǎng)絡(luò)工程師、軟件工程師培訓(xùn))