網絡入侵檢測系統(Snort)實驗 實驗平臺的搭建和測試

 (暈,怎麼不能粘貼圖片啊,先發文檔,圖片慢慢加吧····)當初做實驗的時候,參看了網上很多文章,但是因爲每個機子的環境不一樣所以要根據自己的機子進行調試才能出來想要的結果。恩。就是這樣·(這個是自己論文裏的一部分,所以會出現類似4.1這樣的編號吐舌頭

4.1實驗平臺的搭建

1)實驗軟件:

(1)Microsoft virtual pc虛擬機

(2)windows server 2003鏡像文件

(3)網絡數據包截取驅動程序

WinPcap_4_1_2.zip

http://winpcap.polito.it/

(4)Windows 版本的Snort 安裝包

Snort_2_9_0_5_Installer.exe

http://www.snort.org/

(5)Windows 版本的Apache Web 服務器

apache_2.2.4-win32-x86-no_ssl.zip

http://www.apache.org/

(6)Windows版本的PHP腳本環境支持

php-5.2.5-Win32.zip

http://www.php.net/

(7)Windows 版本的Mysql 數據庫服務器

mysql-5.0.22-win32.zip

http://www.mysql.com/

(8)ACID(Analysis Console for Intrusion Databases)基於PHP的入侵檢測數據庫分析控制檯

acid-0.9.6b23.tar.gz

http://www.cert.org/kb/acid

(9)Adodb(Active Data Objects Data Base)PHP庫

adodb504.tgz

http://php.weblogs.com/adodb

(10)PHP圖形庫

jpgraph-2.3.tar.gz

http://www.aditus.nu/jpgraph

(11)snort 規則包

rules20090505.tar.gz

http://www.snort.org

2)安裝步驟如下

(1)虛擬機和操作系統的安裝

運行虛擬機安裝程序,默認安裝即可,打開控制檯,新建一個虛擬機,按照提示具體填寫,選擇鏡像文件,啓動,安裝好鏡像系統後,效果如下:

圖4-1 虛擬機

(2)組件的安裝

在c:下建立duoduo的文件夾,再在其下建立duo的文件夾放入所有的安裝程序,在後續的安裝時,把可以選擇安裝路徑的組件安裝在duoduo的文件夾下

①安裝WinPcap

運行WinPcap_4_1_2.zip,默認安裝。

 

②安裝mysql

運行mysql-5.0.22-win32.zip,選擇自定義安裝選擇安裝路徑C:\duoaduo\mysql下,安裝時注意:端口設置爲3306(以後要用到),密碼本實驗設置成123,

圖4-2 配置端口

圖4-3 配置密碼

 

添加環境變量:

圖4-4 配置環境變量

③安裝apache

運行apache_2.2.4-win32-x86-no_ssl.zip

安裝到c:\duoaduo\apache

④下面安裝php

解壓php-5.2.5-Win32到c:\duoaduo\php

添加gd圖形庫支持

複製c:\duoaduo\php\php5ts.dll和c: \duoaduo\php\libmysql.dll文件到%systemroot%\system32

查詢本機的%systemroot%

圖4-5 查詢機的%systemroot%

複製c: \duoaduo\php\php.ini-dist到%systemroot%並重命名爲php.ini,
修改php.ini,分別去掉“extension=php_gd2.dll”和“extension=php_mysql.dll”前的分號,

圖4-6 配置php.Ini(1)

並指定extension_dir="c:\duoaduo\php\ext",

圖4-7配置php.Ini(2)

同時複製c:\duoaduo\php\ext下的php_gd2.dll與php_mysql.dll到%systemroot%\system32

在C:\duoaduo\apache\conf\httpd.conf中添加LoadModule php5_module c:/duoaduo/php/php5apache2_2.dll和AddType application/x-httpd-php .php,AddType application/x-httpd-php-source .phps

圖4-8 配置httpd.conf

 

重啓Apache服務。

在C:\duoaduo\apache\htdocs目錄下新建webinf.php(文件內容爲:<?phpinfo();?>)並使用 http://127.0.0.1/webinf.php訪問測試是否能夠顯示當前Apache服務器的信息,如果顯示如圖4-9所示,則表明Apache和php工作基本正常。

圖4-9 正確運行Apache和php

如果顯示如圖4-10所示,則表明Apache和php工作不正常。

圖4-10 錯誤信息

原因是 addtype 的那兩句話有錯誤,檢查修改就可以了。

⑤安裝Snort

運行Snort_2_9_0_5_Installer.exe

安裝在C:\duoaduo\Snort下即可,

運行C:\duoaduo\Snort\bin\snort.exe

或者在DOS中找到該位置,

如果安裝 snort成功會出現一個可愛的小豬

圖4-11 Snort運行正常

並按照以下修改C:\duoaduo\Snort\etc\snort.conf文件:

var RULE_PATH c:\duoaduo\snort\rules

include classification.config

include reference.config

修改爲絕對路徑:

include c:\duoaduo\snort\etc\classification.config

include c:\duoaduo\snort\etc\reference.config

在該文件的最後加入下面語句:

output database: alert, mysql, host=localhost user=root password=123 dbname=snort encoding=hex detail=full

 

創建 snort 數據庫的表

複製 c:\duoaduo\snort\schames 文件夾下的create_mysql 文件到C:\duoaduo\mysql\bin文件夾下

打開 mysql 的的客戶端執行如下命令

Create database snort;

Create database snort_archive;

Use snort;

Source create_mysql;

Use snort_archive;

Source create_mysql;

Grant all on *.* to “root”@”localhost”

 

加入 php 對 mysql 的支持:

修改 c:\windows\php.ini 文件去掉 extension=php_mysql.dll 前的分號。

複製c:\duoaduo\php\ext 文件夾下的 php_mysql.dll 文件到 c:\windows 文件夾。

複製c:\duoaduo\php\libmysql.dll文件到c:\windows\system32下

 

⑥安裝 adodb

解壓縮 adodb 到 c:\ids\php5\adodb 文件夾下。

⑦安裝 jgraph

解壓縮 jpgraph 到 c:\duoaduo\php\jpgraph 文件夾下

⑧安裝 acid

解壓縮 acid 到 c\duoaduo\apache\htdocs\acid 文件夾下

修改 acid_conf.php 文件

爲以下內容

$DBlib_path="c:\duoaduo\php\adodb";

$DBtype="mysql";

$alert_dbname ="snort";

$alert_host = "localhost";

$alert_port ="3306";

$alert_user="root";

$alert_password="123";

$archive_dbname="snort_archive";

$archive_host="localhost";

$archive_port="3306";

$archive_user="root";

$archive_password="123";

$ChartLib_path="c:\duoaduo\php\jpgraph\src";

⑨重啓apache、mysql服務

⑩在瀏覽器中初始化acid數據庫

http://localhost/acid/acid_db_setup.php

以上配置正確會有下面的顯示:

圖4-12 正確配置acid

安裝成功,測試一下:

啓動Apache和mysql服務

運行ACID:打開瀏覽器,地址爲http://127.0.0.1/acid。如果有下圖所示,則表示ACID安裝成功。

圖4-13正確安裝acid

運行c:\duoaduo\snort\bin>snort -c "c:\duoaduo\snort\etc\snort.conf" -l "c:\duoaduo\snort\log" -vdeX

       -X 參數用於在數據鏈接層記錄raw packet 數據

       -d 參數記錄應用層的數據

       -e 參數顯示/記錄第二層報文頭數據

       -c 參數用以指定snort 的配置文件的路徑

       -v 參數用於在屏幕上顯示被抓到的包

圖4-14 正確記錄日誌

4.2實驗測試

1)Snort的使用:

(1)嗅探器:所謂的嗅探器模式就是Snort從網絡上讀出數據包然後顯示在你的控制檯上。

①如果你只要把TCP/IP包頭信息打印在屏幕上,只需要輸入下面的命令:

./snort–V

圖4-15 運行./snort–V

②如果要把所有的包記錄到硬盤上,你需要指定一個日誌目錄,snort就會自動記錄數據包:./snort -dev -l ./log

圖4-16 運行./snort -dev -l ./log

這時會在相應文件夾下,記錄數據:

圖4-17 文件記錄信息

(2)網絡入侵檢測系統:Snort最重要的用途還是作爲網絡入侵檢測系統(NIDS),使用下面命令行可以啓動這種模式:

./snort -dev -l ./log -h ***.***.***.***/** -c snort.conf

圖4-18運行網絡入侵檢測命令

(3)網絡入侵檢測模式下的輸出選項

在NIDS模式下,有很多的方式來配置Snort的輸出。在默認情況下,Snort以ASCII格式記錄日誌,使用full報警機制。如果使用full報警機制,snort會在包頭之後打印報警消息。使用-s選項可以使Snort把報警消息發送到syslog,默認的設備是LOG_AUTHPRIV和LOG_ALERT。可以修改snort.conf文件修改其配置。Snort還可以使用SMB報警機制,通過SAMBA把報警消息發送到Windows主機。爲了使用這個報警機制,在運行./configure腳本時,必須使用--enable-smbalerts選項。

下面是一些輸出配置的例子:使用默認的日誌方式(以解碼的ASCII格式)並且把報警發./snort -c snort.conf -l ./log -s -H給syslog:

具體本實驗環境運行:\snort -c c:\duoaduo\snort\etc\snort.conf -l c:\duoaduo\snort\log -s -H

圖4-19運行網絡入侵檢測模式下的輸出選項(1)

圖4-20 運行網絡入侵檢測模式下的輸出選項(2)

2)Snort與控制檯,數據庫的使用檢測:

(1)設置監測包含的規則。

找到snort.conf文件中描述規則的部分,如下圖所示:

圖4-21 配置snort.conf

前面加#表示該規則沒有啓用,將local.rules之前的#號去掉,其餘規則保持不變

(2)運行C:\duoaduo\Snort\bin中的snort.exe, 不關閉窗口,瀏覽網頁

(3)打開acid檢測控制檯主界面

圖4-22 顯示數據

點擊右側圖示中TCP後的數字“1%”,將顯示所有檢測到的TCP協議日誌詳細情況

圖4-23 詳細信息(1)

TCP協議日誌網頁中的選項依次爲:流量類型、時間戳、源地址、目標地址以及協議

選擇控制條中的“home”返回控制檯主界面,在主界面的下部有流量分析及歸類選項,

圖4-24 流量分析及歸類選項

圖4-25 近24小時的數據流

 

可以看到,表中詳細記錄了各類型流量的種類、在總日誌中所佔的比例、出現該類流量的起始和終止時間等詳細分析。

點擊第一條信息的起始時間2008-02-13 01:49:01會顯示起詳細的信息。

圖4-26 詳細信息(1)

圖4-27 詳細信息(2)

控制檯中所以以藍色顯示的都可以點擊以查看詳細數據。在此就不一一演示了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章