Sniffer含義及工作原理

2021-06-08 02:51:52 字數 4815 閱讀 2416

一.有關sniffer及sniffer的含義

sniffers(嗅探器)幾乎和internet有一樣久的歷史了.sniffer是一種常用的收集有用資料方法,這些資料可以是使用者的帳號和密碼,可以是一些商用機密資料等等。隨著internet及電子商務的日益普及,internet的安全也越來越受到重視。在internet安全隱患中扮演重要角色之一的sniffer以受到越來越大的關注,所以今天我要向大家介紹一下介紹sniffer以及如何阻止sniffer。

大多數的黑客僅僅為了探測內部網上的主機並取得控制權,只有那些"雄心勃勃"的黑客,為了控制整個網路才會安裝特洛伊木馬和後門程式,並清除記錄。他們經常使用的手法是安裝sniffer。

在內部網上,黑客要想迅速獲得大量的賬號(包括使用者名稱和密碼),最為有效的手段是使用 "sniffer" 程式。這種方法要求執行sniffer 程式的主機和被監聽的主機必須在同乙個乙太網段上,故而在外部主機上執行sniffer是沒有效果的。再者,必須以root的身份使用sniffer 程式,才能夠監聽到乙太網段上的資料流。談到乙太網sniffer,就必須談到乙太網sniffing。

那麼什麼是乙太網sniffer呢?

乙太網sniffing是指對乙太網裝置上傳送的資料報進行偵聽,發現感興趣的包。如果發現符合條件的包,就把它存到乙個log檔案中去。通常設定的這些條件是包含字"username"或"password"的包。

它的目的是將網路層放到promiscuous模式,從而能幹些事情。

promiscuous模式是指網路上的所有裝置都對匯流排上傳送的資料進行偵聽,並不僅僅是它們自己的資料。根據第二章中有關對乙太網的工作原理的基本介紹,可以知道:乙個裝置要向某一目標傳送資料時,它是對乙太網進行廣播的。乙個連到乙太網匯流排上的裝置在任何時間裡都在接受資料。不過只是將屬於自己的資料傳給該計算機上的應用程式。

利用這一點,可以將一台計算機的網路連線設定為接受所有乙太網匯流排上的資料,從而實現sniffer。

sniffer通常執行在路由器,或有路由器功能的主機上。這樣就能對大量的資料進行監控。sniffer屬第二層次的攻擊。通常是攻擊者已經進入了目標系統,然後使用sniffer這種攻擊手段,以便得到更多的資訊。

sniffer除了能得到口令或使用者名稱外,還能得到更多的其他資訊,比如乙個其他重要的資訊,在網上傳送的金融資訊等等。sniffer幾乎能得到任何乙太網上的傳送的資料報。黑客會使用各種方法,獲得系統的控制權並留下再次侵入的後門,以保證sniffer能夠執行。在solaris 2.x平台上,sniffer 程式通常被安裝在/usr/bin 或/dev目錄下。黑客還會巧妙的修改時間,使得sniffer程式看上去是和其它系統程式同時安裝的。

大多數乙太網sniffer程式在後台執行,將結果輸出到某個記錄檔案中。黑客常常會修改ps程式,使得系統管理員很難發現執行的sniffer程式。

講了這麼多,那麼到底我們可以用什麼通俗的話來介紹sniffer呢?

乙太網是現在應用最廣泛的計算機連網方式。乙太網協議是在同一迴路向所有主機傳送資料報資訊。資料報頭包含有目標主機的正確位址。一般情況下只有具有該位址的主機會接受這個資料報。如果一台主機能夠接收所有資料報,而不理會資料報頭內容,這種方式通常稱為"混雜" 模式。

由於在乙個普通的網路環境中,帳號和口令資訊以明文方式在乙太網中傳輸, 一旦入侵者獲得其中一台主機的root許可權,並將其置於混雜模式以竊聽網路資料,從而有可能入侵網路中的所有計算機。

一句話,sniffer就是乙個用來竊聽的黑客手段和工具。

二、sniffer的工作原理

通常在同乙個網段的所有網路介面都有訪問在物理**上傳輸的所有資料的能力,而每個網路介面都還應該有乙個硬體位址,該硬體位址不同於網路中存在的其他網路介面的硬體位址,同時,每個網路至少還要乙個廣播位址。(代表所有的介面位址),在正常情況下,乙個合法的網路介面應該只響應這樣的兩種資料幀:

1、幀的目標區域具有和本地網路介面相匹配的硬體位址。

2、幀的目標區域具有"廣播位址"。

在接受到上面兩種情況的資料報時,nc通過cpu產生乙個硬體中斷,該中斷能引起作業系統注意,然後將幀中所包含的資料傳送給系統進一步處理。

而sniffer就是一種能將本地nc狀態設成(promiscuous)狀態的軟體,當nc處於這種"混雜"方式時,該nc具備"廣播位址",它對所有遭遇到的每乙個幀都產生乙個硬體中斷以便提醒作業系統處理流經該物理**上的每乙個報文包。(絕大多數的nc具備置成 promiscuous方式的能力)

可見,sniffer工作在網路環境中的底層,它會攔截所有的正在網路上傳送的資料,並且通過相應的軟體處理,可以實時分析這些資料的內容,進而分析所處的網路狀態和整體布局。值得注意的是:sniffer是極其安靜的,它是一種消極的安全攻擊。

通常sniffer所要關心的內容可以分成這樣幾類:

1、口令

我想這是絕大多數非法使用sniffer的理由,sniffer可以記錄到明文傳送的userid和passwd.就算你在網路傳送過程中使用了加密的資料,sniffer記錄的資料一樣有可能使入侵者在家裡邊吃肉串邊想辦法算出你的演算法。

2、金融帳號

許多使用者很放心在網上使用自己的信用卡或現金帳號,然而sniffer可以很輕鬆截獲在網上傳送的使用者姓名、口令、信用卡號碼、截止日期、帳號和pin.

3、**機密或敏感的資訊資料

通過攔截資料報,入侵者可以很方便記錄別人之間敏感的資訊傳送,或者乾脆攔截整個的email會話過程。

4、窺探低階的協議資訊。

這是很可怕的事,我認為,通過對底層的資訊協議記錄,比如記錄兩台主機之間的網路介面位址、遠端網路介面ip位址、ip路由資訊和tcp連線的位元組順序號碼等。這些資訊由非法入侵的人掌握後將對網路安全構成極大的危害,通常有人用sniffer收集這些資訊只有乙個原因:他正在進行一次欺詐,(通常的ip位址欺詐就要求你準確插入tcp連線的位元組順序號,這將在以後整理的文章中指出)如果某人很關心這個問題,那麼sniffer對他來說只是前奏,今後的問題要大得多。(對於高階的hacker而言,我想這是使用sniffer的唯一理由吧)

二.sniffer的工作環境

snifffer就是能夠捕獲網路報文的裝置。嗅探器的正當用處在於分析網路的流量,以便找出所關心的網路中潛在的問題。例如,假設網路的某一段執行得不是很好,報文的傳送比較慢,而我們又不知道問題出在什麼地方,此時就可以用嗅探器來作出精確的問題判斷。

嗅探器在功能和設計方面有很多不同。有些只能分析一種協議,而另一些可能能夠分析幾百種協議。一般情況下,大多數的嗅探器至少能夠分析下面的協議:

1.標準乙太網

2.tcp/ip

3.ipx

4.decnet

嗅探器通常是軟硬體的結合。專用的嗅探器**非常昂貴。另一方面,免費的嗅探器雖然不需要花什麼錢,但得不到什麼支援。

嗅探器與一般的鍵盤捕獲程式不同。鍵盤捕獲程式捕獲在終端上輸入的鍵值,而嗅探器則捕獲真實的網路報文。嗅探器通過將其置身於網路介面來達到這個目的——例如將乙太網卡設定成雜收模式。(為了理解雜收模式是怎麼回事,先解釋區域網是怎麼工作的)。

資料在網路上是以很小的稱為幀(ftame)的單位傳輸的幀由好幾部分組成,不同的部分執行不同的功能。(例如,乙太網的前12個位元組存放的是源和目的的位址,這些位告訴網路:資料的**和去處。乙太網幀的其他部分存放實際的使用者資料、tcp/ip的報文頭或ipx報文頭等等)。

幀通過特定的稱為網路驅動程式的軟體進行成型,然後通過網絡卡傳送到網線上。通過網線到達它們的目的機器,在目的機器的一端執行相反的過程。接收端機器的乙太網卡捕獲到這些幀,並告訴作業系統幀的到達,然後對其進行儲存。就是在這個傳輸和接收的過程中,嗅探器會造成安全方面的問題。

每乙個在lan上的工作站都有其硬體位址。這些位址唯一地表示著網路上的機器(這一點於internet位址系統比較相似)。當使用者傳送乙個報文時,這些報文就會傳送到lan上所有可用的機器。

在一般情況下,網路上所有的機器都可以「聽」到通過的流量,但對不屬於自己的報文則不予響應(換句話說,工作站a不會捕獲屬於工作站b的資料,而是簡單的忽略這些資料)。

如果某在工作站的網路介面處於雜收模式,那麼它就可以捕獲網路上所有的報文和幀,如果乙個工作站被配置成這樣的方式,它(包括其軟體)就是乙個嗅探器。

嗅探器可能造成的危害:

1.嗅探器能夠捕獲口令

2.能夠捕獲專用的或者機密的資訊

3.可以用來危害網路鄰居的安全,或者用來獲取更高階別的訪問許可權

事實上,如果你在網路上存在非授權的嗅探器就以為著你的系統已經暴露在別人面前了。(大家可以試試天行2的嗅探功能)

一般我們只嗅探每個報文的前200到300個位元組。使用者名稱和口令都包含在這一部分中,這是我們關心的真正部分。工人,也可以嗅探給定介面上的所有報文,如果有足夠的空間進行儲存,有足夠的那裡進行處理的話,將會發現另一些非常有趣的東西……

簡單的放置乙個嗅探器賓將其放到隨便什麼地方將不會起到什麼作用。將嗅探器放置於被攻擊機器或網路附近,這樣將捕獲到很多口令,還有乙個比較好的方法就是放在閘道器上。如果這樣的話就能捕獲網路和其他網路進行身份鑑別的過程。這樣的方式將成倍地增加我們能夠攻擊的範圍。

三.誰會使用sniffers

可能誰都回知道誰會使用sniffer,但是並不是每個使用它的人都是網路高手,因為現在有很多的sniffer都成了傻瓜似的了,前段時間用的最多的不外乎oicq sniffer。我想那些喜歡查好友ip的朋友都應該記得它吧。呵呵,我都使用過它,現在當然不用了啊!

當然系統管理員使用sniffer來分析網路資訊交通並且找出網路上何處發生問題。乙個安全管理員可以同時用多種sniffer, 將它們放置在網路的各處,形成乙個入侵警報系統。對於系統管理員來說sniffer是乙個非常好的工具,但是它同樣是乙個經常被黑客使用的工具.駭客安裝sniffer以獲得使用者名稱和賬號,信用卡號碼,個人資訊,和其他的資訊可以導致對你或是你的公司的極大危害如果向壞的方面發展。當它們得到這些資訊後,駭客將使用密碼來進攻其他的internet 站點甚至倒賣信用卡號碼。

Sniffer的工作原理

sniffer 嗅探器 是一種常用的收集有用資料方法,這些資料可以是使用者的帳號和密碼,可以是一些商用機密資料等等。snifffer可以作為能夠捕獲網路報文的裝置,iss為sniffer這樣定義 sniffer是利用計算機的網路介面截獲目的地為其他計算機的資料報文的一種工具。嗅探器與一般的鍵盤捕獲程...

RFID簡介及工作原理

rfid的工作原理 射頻識別系統的基本模型如圖8 1所示。其中,電子標籤又稱為射頻標籤 應答器 資料載體 閱讀器又稱為讀出裝置,掃瞄器 通訊器 讀寫器 取決於電子標籤是否可以無線改寫資料 電子標籤與閱讀器之間通過耦合元件實現射頻訊號的空間 無接觸 耦合 在耦合通道內,根據時序關係,實現能量的傳遞 資...

DHCP工作原理及例項

dhcp dynamic host configuration protocol 動態主機配置協議,它 提供了一種動態指定ip位址和配置引數的機制 是一種用於簡化主機 ip 配置管理的 ip 標準。通過採用 dhcp 標準,可以使用 dhcp 伺服器為網路上啟用了 dhcp 的客戶端管理動態 ip ...