1. <tbody id="tgt0o"></tbody>

        計算機技術論壇

         找回密碼
         立即注冊
        查看: 2680|回復: 2
        打印 上一主題 下一主題

        在linux下sniffit的安裝使用和簡述

        [復制鏈接]
        跳轉到指定樓層
        樓主
        發表于 2010-6-3 21:39:08 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
        Sniffit是由Lawrence Berkeley Laboratory開發的,可以在Linux、Solaris、SGI等各種平臺運行的網絡監聽軟件,它主要是針對TCP/IP協議的不安全性對運行該協議的機器進行監聽——當然,數據包必須經過運行sniffit的機器才能進行監聽,因此它只能夠監聽在同一個網段上的機器。而且還能夠自由地為其增加某些插件以實現額外功能。
        一、安裝 軟件的安裝很簡單:
        1、用tar zvfx sniffit.*.*.*.tgz將下載下來的sniffit.*.*.*.tgz解壓縮到你想要的目的文件夾, 如
        果版本是0.3.7的話(應該是最新版本吧,我不敢確定……),你會看到該目錄下出現一個
        sniffit.0.3.7的目錄。
        2、cd sniffit.0.3.7
        3、./configure && make ,只要在這個過程中終端上沒有意外的error信息出現,你就算編譯成功 了—
        —可以得到一個二進制的sniffit文件。
        4、make clean把不用的垃圾掃掉……
        二、使用方法
        1、參數
        這個東東具有如下的命令選項:
        -v 顯示版本信息
        -t <ip nr/name> 讓程序去監聽指定流向某IP的數據包
        -s <ip nr/name>讓程序去監聽從某IP流出的IP數據包,可以使用@通配符,如 -t 199.145.@
        -i 顯示出窗口界面,能察看當前在你所屬網絡上進行連接的機器
        -I 擴展的交互模式,忽略所有其它選項,比-i強大得多……
        -c <file> 利用腳本來運行程序
        -F <device> 強制使程序使用網絡硬盤
        -n 顯示出假的數據包。象使用ARP、RARP或者其他不是IP的數據包也會顯示出來
        -N 只運行plugin時的選項,使其它選項失效
        在-i 模式下無法工作的參數:
        -b 同時做-t和-s的工作……
        -d 將監聽所得內容顯示在當前終端——以十六進制表示
        -a 將監聽所得內容顯示在當前終端——以ASCII字符表示
        -x 打印TCP包的擴展信息(SEQ, ACK, Flags),可以與'-a', '-d', '-s', '-t', '-b'一起運作,注意—
        —它是輸出在標準輸出的,如果只用-t,-s,-b 而沒有其它參數配合的話不會被寫入文件。
        -R <file> 將所有通信記錄在文件中
        -r <file> 這一選項將記錄文件送往sniffit,它需要-F的參數配合指明設備,假設你用 'eth0'(第一塊網
        卡)來記錄文件,你必須在命令行里面加上'-F eth0'或者 '或者'或者'或者'或者'-F eth' -A 遇到不認
        識的字符時用指定的字符代替
        -P <protocol> 定義監聽的協議,DEFAULT為TCP——也可以選IP、ICMP、UDP……
        -p <prot >定義監聽端口,默認為全部
        -l <length> 設定數據包大小,default是300字節。
        -M <plugin> 激活插件
        -I,-i 模式下的參數
        -D <device> 所有的記錄會被送到這個磁盤上。
        -c 模式下的參數
        -L<logparam>
        其中logparam可以是如下的內容:
        raw : 輕度
        norm : 常規
        telnet: 記錄口令(端口23)
        ftp : 記錄口令(端口21)
        mail : 記錄信件內容(端口25)
        比如說"ftpmailnorm"就是一個合法的logparam
        2、圖形仿真界面
        就是上面所說的-i選項啦,我們輸入sniffit -i 會出現一個窗口環境,從中可以看到自己所在的 網絡中
        有哪些機器正在連接,使用什么端口號,其中可用的命令如下:
        q 退出窗口環境,結束程序
        r 刷新屏幕,重新顯示正在在連線的機器
        n 產生一個小窗口,包括TCP、IP、ICMP、UDP等協議的流量
        g 產生數據包,正常情況下只有UDP協議才會產生,執行此命令要回答一些關于數據包的問題
        F1 改變來源網域的IP地址,默認為全部
        F2 改變目的網域的IP地址,默認為全部
        F3 改變來源機器的端口號,默認為全部
        F4 改變目的機器的端口號,默認為全部
        3、一些示例
        假設有以下的設置:在一個子網中有兩臺主機,一臺運行了sniffer,我們稱之為sniffit.com,另 一臺
        是66.66.66.7,我們稱之為target.com。
        1、你希望檢查sniffer是否能運行
        sniffit:~/# sniffit -d -p 7 -t 66.66.66.7
        并且開另一個窗口:
        sniffit:~/$ telnet target.com 7
        你可以看到sniffer將你telnet到對方7號端口echo服務的包捕獲了。
        2、你希望截獲target.com上的用戶密碼
        sniffit:~/# sniffit -p 23 -t 66.66.66.7
        3、target.com主機的根用戶聲稱有奇怪的FTP連接并且希望找出他們的擊鍵
        sniffit:~/# sniffit -p 21 -l 0 -t 66.66.66.7
        4. 你希望能閱讀所有進出target.com的信件
        sniffit:~/# sniffit -p 25 -l 0 -b -t 66.66.66.7 &
        或者
        sniffit:~/# sniffit -p 25 -l 0 -b -s 66.66.66.7 &
        5. 你希望使用用戶交互界面
        sniffit:~/# sniffit -i
        6. 有錯誤發生而且你希望截獲控制信息
        sniffit:~/# sniffit -P icmp -b -s 66.66.66.7
        7. Go wild on scrolling the screen.
        sniffit:~/# sniffit -P ip -P icmp -P tcp -p 0 -b -a -d -x -s 66.66.66.7
        與之效果相當的是
        sniffit:~/# sniffit -P ipicmptcp -p 0 -b -a -d -x -s 66.66.66.7
        8. 你可以用'more 66*'讀取下列方式記錄下的密碼
        sniffit:~/# sniffit -p 23 -A . -t 66.66.66.7
        或者
        sniffit:~/# sniffit -p 23 -A ^ -t dummy.net
        三、高級應用
        1、用腳本執行
        這是配合選項-c的,其執行方法也很簡單,比如以如下方式編輯一個叫sh的文件
        select from host 180.180.180.1
        select to host 180.180.180.10
        select both port 21
        然后執行:sniffit -c sh
        說明:監聽從180.180.180.1送往180.180.180.10的數據包,端口為FTP口。這里不做更多說明,你 可以
        自己去看里面的README。
        2、插件
        要獲取一個插件是很簡單的,你將它放入sniffit的目錄下,并且象如下方式編輯sn_plugin.h 文件:
        #define PLUGIN1_NAME "My plugin"
        #define PLUGIN1(x) main_plugin_function(x)
        #include "my_plugin.plug"
        注意:
        a) 你可以讓plugin從0-9,所以從PLUGIN0_NAME到PLUGIN1_NAME……不必是連續的
        d) #include "my_plugin.plug" 這是我的插件源代碼放置的地方。 如果想詳細了解的話,還是看看里面
        的plugin.howto吧。
        3、介紹 tod
        這東東便是sniffit最有名的一個插件了,為什么叫TOD呢——touch of death,它可以輕易地切斷一個
        TCP連接,原理是向一個TCP連接中的一臺主機發送一個斷開連接的IP包,這個IP包的RST位置1,便可以了

        將下載下來的tod.tar.gz拷貝到sniffit所在目錄下,解壓安裝后
        ln -s tod sniffit_key5
        就可以將這相程序與F5鍵連接起來,想切斷哪臺機器的話,只要在窗口中將光標指到需要斷線的機器上
        按下F5鍵就可以了。你可以自由地定義成其它的F功能鍵——F1~F4不行,它們已經被定義過了……
        寫了這么多,好了,下課……

        評分

        1

        查看全部評分

        2
        發表于 2010-6-4 14:30:49 | 只看該作者
        樓主辛苦了,我來看看、、

        3
        發表于 2010-6-4 20:43:51 | 只看該作者
        學習了,感謝樓主分享

        您需要登錄后才可以回帖 登錄 | 立即注冊

        本版積分規則

        無圖版|手機版|計算機技術論壇,電腦迷與初學者的家園©2008-2018 ( 魯ICP備17021708號 )

        技術支持 : 北京康盛新創科技有限責任公司

        快速回復 返回頂部 返回列表
        6080新视觉影视官网