1.1 Snort 入門與模式
1.1.1 入門
Snort確實不是很難使用,但是有很多命令行選項可以使用,而且哪個選項可以很好地結合使用并不總是很明顯。該文件旨在使新用戶更容易使用Snort。
在繼續之前,您應該了解有關Snort的一些基本概念。可以將Snort配置為以三種模式運行:
- 嗅探器模式,它簡單地從網絡中讀取數據包并在控制臺(屏幕)上以連續流的形式為您顯示它們。
- 數據包記錄器模式,將數據包記錄到磁盤。
- 網絡入侵檢測系統(NIDS)模式,它對網絡流量進行檢測和分析。這是最復雜和可配置的模式。
1.1.2 嗅探器模式
首先,讓我們從基礎開始。如果您只想將TCP / IP數據包標題打印到屏幕上(即嗅探器模式),請嘗試以下操作:
./snort -v
該命令將運行Snort,僅顯示IP和TCP / UDP / ICMP標頭,僅此而已。如果要查看傳輸中的應用程序數據,請嘗試以下操作:
./snort -vd
這指示Snort顯示數據包數據以及標頭。如果要顯示更具描述性的顯示,以顯示數據鏈接層標題,請執行以下操作:
./snort -vde
順便說一句,請注意命令行開關可以單獨列出或以組合形式列出。最后一個命令也可以鍵入為:
./snort -d -v -e
產生相同的結果。
1.1.3 Packet Logger模式
如果要將數據包記錄到磁盤,則需要指定一個日志目錄,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純文本的默認輸出格式。
將數據包記錄到二進制文件后,您可以使用任何支持tcpdump二進制格式的嗅探器(例如tcpdump或Ethereal)從文件中讀取數據包。Snort還可以使用-r開關將數據包讀回,從而將其置于播放模式。任何tcpdump格式文件的數據包都可以通過Snort在其任何運行模式下進行處理。例如,如果要通過嗅探器模式下的Snort運行二進制日志文件以將數據包轉儲到屏幕,則可以嘗試如下操作:
./snort -dv -r packet.log
您可以通過Snort的數據包記錄和入侵檢測模式,以及從命令行獲得的BPF接口,以多種方式處理文件中的數據。例如,如果您只想查看日志文件中的ICMP數據包,只需在命令行中指定一個BPF過濾器,Snort將僅在該文件中查看ICMP數據包:
./snort -dvr packet.log icmp
Snort安裝使用中文手冊
推薦文章: