Justniffer 是一個可用于替代 Snort 的網(wǎng)絡(luò)協(xié)議分析器。它非常流行,可交互式地跟蹤/探測一個網(wǎng)絡(luò)連接。它能從實時環(huán)境中抓取流量,支持 “lipcap” 和 “tcpdump” 文件格式。它可以幫助用戶分析一個用 wireshark 難以抓包的復(fù)雜網(wǎng)絡(luò)。尤其是它可以有效的幫助你分析應(yīng)用層流量,能提取類似圖像、腳本、HTML 等 http 內(nèi)容。Justniffer 有助于理解不同組件之間是如何通信的。
功能
Justniffer 可以收集一個復(fù)雜網(wǎng)絡(luò)的所有流量而不影響系統(tǒng)性能,這是Justniffer 的一個優(yōu)勢,它還可以保存日志用于之后的分析,Justniffer 其它一些重要功能包括:
1.可靠的 TCP 流重建
它可以使用主機 Linux 內(nèi)核的一部分用于記錄并重現(xiàn) TCP 片段和 IP 片段。
2.日志
保存日志用于之后的分析,并能自定義保存內(nèi)容和時間。
3.可擴展
可以通過外部的 python、 perl 和 bash 腳本擴展來從分析報告中獲取一些額外的結(jié)果。
4.性能管理
基于連接時間、關(guān)閉時間、響應(yīng)時間或請求時間等提取信息。
安裝
Justniffer 可以通過 PPA 安裝:
運行下面命令添加庫:
$ sudo add-apt-repository ppa:oreste-notelli/ppa
更新系統(tǒng):
$ sudo apt-get update
安裝 Justniffer 工具:
$ sudo apt-get install justniffer
make 的時候失敗了,然后我運行下面的命令并嘗試重新安裝服務(wù)
$ sudo apt-get -f install
示例
首先用 -v 選項驗證安裝的 Justniffer 版本,你需要用超級用戶權(quán)限來使用這個工具。
$ sudo justniffer -V
示例輸出:
1.以類似 apache 的格式導(dǎo)出 eth1 接口流量,顯示到終端。
$ sudo justniffer -i eth1
示例輸出:
2.可以用下面的選項跟蹤正在運行的tcp 流
$ sudo justniffer -i eth1 -r
示例輸出:
3.獲取 web 服務(wù)器的響應(yīng)時長
$ sudo justniffer -i eth1 -a " %response.time"
示例輸出:
4.使用 Justniffer 讀取一個 tcpdump 抓取的文件
首先,用 tcpdump 抓取流量。
$ sudo tcpdump -w /tmp/file.cap -s0 -i eth0
然后用 Justniffer 訪問數(shù)據(jù)
$ justniffer -f file.cap
示例輸出:
5.只抓取http 數(shù)據(jù)
$ sudo justniffer -i eth1 -r -p "port 80 or port 8080"
示例輸出:
6.獲取一個指定主機的 http 數(shù)據(jù)
$ justniffer -i eth1 -r -p "host 192.168.1.250 and tcp port 80"
示例輸出:
7.以更精確的格式抓取數(shù)據(jù)
當(dāng)你輸入 justniffer -h 的時候你可以看到很多用于以更精確的方式獲取數(shù)據(jù)的格式關(guān)鍵字。
$ justniffer -h
示例輸出:
讓我們用 Justniffer 根據(jù)預(yù)先定義的參數(shù)提取數(shù)據(jù)。
$ justniffer -i eth1 -l "%request.timestamp %request.header.host %request.url %response.time"
示例輸出:
其中還有很多你可以探索的選項。
總結(jié)
Justniffer 是一個很好的用于網(wǎng)絡(luò)測試的工具。在我看來對于那些用 Snort 來進行網(wǎng)絡(luò)探測的用戶來說,Justniffer 是一個更簡單的工具。它提供了很多 格式關(guān)鍵字 用于按照你的需要精確地提取數(shù)據(jù)。你可以用.cap 文件格式記錄網(wǎng)絡(luò)信息,之后用于分析監(jiān)視網(wǎng)絡(luò)服務(wù)性能。