Snort - 開源網絡入侵檢測工具
Snort是一個開源,輕量級的網絡入侵檢測程序,適用于Windows和Linux平臺。它能夠在互聯網協議(TCP/IP)網絡上執行實時流量分析和數據包記錄。
它可以檢測各種攻擊和探測,包括但不限于操作系統指紋嘗試,公共網關接口,緩沖區溢出,服務器消息塊探測和隱形端口掃描。
Snort可以配置為以三種模式運行:
嗅探器模式 -它 從網絡中讀取數據包,并在控制臺(屏幕)上以連續流的形式顯示它們。
數據包記錄器模式 -它將數據包記錄 到磁盤。
網絡入侵檢測系統(NIDS)模式 -對網絡流量執行檢測和分析。這是最復雜和可配置的模式。

嗅探器模式
如果您只想將TCP / IP數據包標題打印到屏幕(即嗅探模式),請嘗試以下操作:
./snort -v
這個命令將運行Snort并只顯示IP和TCP / UDP / ICMP頭,沒有別的。
如果您想查看傳輸中的應用程序數據,請嘗試以下操作:
./snort -vd
這指示Snort顯示分組數據以及標題。
如果您需要更具描述性的顯示,請顯示數據鏈接層標題,請執行以下操作:
./snort -vde
注意:命令行開關可以單獨列出或以組合形式列出。
最后的命令也可以如下輸入,以產生相同的結果:
./snort -d -v -e
數據包記錄器模式
如果你想把數據包記錄到磁盤上,你需要指定一個日志目錄,Snort會自動進入數據包記錄器模式:
./snort -dev -l ./log
當然,這假設你在當前目錄中有一個名為log的目錄。如果你不這樣做,Snort將退出并顯示一條錯誤消息。當Snort以這種模式運行時,它會收集它看到的每個數據包,并根據數據報中的某個主機的IP地址將數據包放入目錄層次結構中。
如果您只是指定了一個普通的-l開關,您可能會注意到Snort有時使用遠程計算機的地址作為其放置數據包的目錄,有時使用本地主機地址。為了記錄相對于家庭網絡,你需要告訴Snort哪個網絡是家庭網絡:
./snort -dev -l ./log -h 192.168.1.0/24
這個規則告訴Snort你想把數據鏈接和TCP / IP頭以及應用程序數據打印到目錄./log中,并且你想記錄相對于192.168.1.0 C類網絡的數據包。所有傳入的數據包將被記錄到日志目錄的子目錄中,目錄名稱基于遠程(非192.168.1)主機的地址。
注意:如果源主機和目標主機都位于家庭網絡中,則它們會根據兩個端口號中較高的一個或兩個端口號中的較高者登錄到一個目錄,或者在綁定時指定源地址。
如果您使用的是高速網絡,或者希望將數據包記錄為更緊湊的形式以供日后分析,則應考慮以二進制模式登錄。二進制模式將tcpdump格式的數據包記錄到日志目錄中的單個二進制文件中:
./snort -l ./log -b
注意命令行在這里改變。我們不需要再指定一個家庭網絡,因為二進制模式會將所有內容記錄到一個文件中,從而無需告訴它如何格式化輸出目錄結構。此外,您不需要以詳細模式運行或指定-d或-e開關,因為在二進制模式下,整個數據包都會被記錄,而不僅僅是部分。將Snort放入記錄器模式所需要做的只是使用-l開關在命令行中指定一個日志記錄目錄 - -b二進制日志記錄開關僅提供一個修改器,告訴Snort將數據包記錄在純ASCII文本的默認輸出格式。
下載地址:https://www.snort.org/downloads#snort