參考:
??因為畢業(yè)論文涉及到網(wǎng)絡(luò)安全怀泊,需要對DARPA 1999這類數(shù)據(jù)進(jìn)行分析瘫寝,過程中發(fā)現(xiàn)Snort
安裝、使用相關(guān)的中文教程實在罕見鸟款,且安裝配置過程較復(fù)雜,自己也踩了不少坑茂卦,為了以后方便何什,在這里對國外的一些實用教程進(jìn)行匯總。
??如果覺得文字不好理解可直接看參考中的視頻教程等龙。
1. Snort
在Windows
上的安裝過程
??這里僅介紹在Windows上的安裝教程处渣,centOS教程在參考中列出了
1.1 下載
官網(wǎng)下載兩個文件:
- snort安裝文件
Snort_x_x_x_Installer.exe
- 版本號對應(yīng)的規(guī)則文件
snortrules-snapshot-xxxxx.tar.gz
(注意檢查版本號,要與安裝文件匹配)
1.2 安裝
??安裝snort
后蛛砰,將snortrules-snapshot-xxxxx.tar.gz
中的rules
和preproc_rules
文件夾解壓并覆蓋到snort
安裝根目錄
1.3 編輯snort.conf
文件
??由于簡書不支持diff語法罐栈,不在這里貼出修改后的文件了,請移步github參考diff示例對Snort\etc\snort.conf
進(jìn)行修改泥畅。
1.4 規(guī)則文件
??Snort
官網(wǎng)免費提供的規(guī)則文件對于DARPA2000這類比較久遠(yuǎn)的數(shù)據(jù)集而言十分雞肋(比如針對DDoS
的規(guī)則文件直接就是一個空文件荠诬,而DARPA2000
的主要內(nèi)容就是DDoS
)。原因很簡單位仁,時代變了柑贞,很多在十幾年前有效的規(guī)則不再適用于當(dāng)前的網(wǎng)絡(luò)環(huán)境,所以被刪除了聂抢。即使你去使用付費訂閱的規(guī)則集也未必對DARPA數(shù)據(jù)集有效钧嘶。
??snort在版本迭代過程中刪除的所有規(guī)則都可以在官網(wǎng)規(guī)則中的deleted.rules
里面找到。但可惜的是琳疏,我找不到一個完整的修改日志有决,也就是說無法通過deleted.rules
將規(guī)則還原到指定年代。我們用DARPA2000做研究又必須依賴那些比較老的規(guī)則集空盼,而Snort
官網(wǎng)已經(jīng)不再提供這些老版本的下載途徑书幕。下面給出我自己搜集的Snort老版本規(guī)則
以及一些第三方規(guī)則
資源。
snort老版本規(guī)則:
鏈接: https://pan.baidu.com/s/1IhN7fxq6Zjo0qGRKU2Urvw 提取碼: qw1q
- 針對DDoS規(guī)則文件
- 綜合性規(guī)則文件(缺少DDoS檢測)
- Emerging Threats rule (這個規(guī)則集親測有效揽趾,但也不全面)
關(guān)于DARPA2000
??針對DARPA2000
需要特別說明一下台汇,這個數(shù)據(jù)集的DDoS
攻擊是內(nèi)網(wǎng)主機(jī)被黑客控制向外網(wǎng)地址發(fā)出攻擊,并且攻擊過程中會隨機(jī)地生成IP地址來隱藏源IP但骨。要想檢測到這個DDoS攻擊励七,規(guī)則中的ip和端口必須是any any -> any any
,而不是$EXTERNAL_NET any -> $HOME_NET any
奔缠。
1.5 修改告警存儲方式
??默認(rèn)存儲的xxx.ids
文件便于閱讀掠抬,但不便于用程序分析。通過修改snort.conf
可以將Snort
告警的存儲格式修改為csv
校哎,添加如下配置:
output alert_csv: alert.csv default
詳細(xì)配置參數(shù)說明參照文檔
需要注意:當(dāng)配置了csv輸出時两波,不會輸出威脅等級瞳步。目前沒有找到解決方法
2. DARPA數(shù)據(jù)處理
2.1 示例
??在很多文獻(xiàn)中,使用Snort
進(jìn)行實驗的步驟是
- 以IDS模式運行
Snort
:
snort -x 100 -i ens33 -c D:\Snort\etc\snort.conf -l D:\Snort\log -A full
使用
tcpreplay
對數(shù)據(jù)進(jìn)行重放Snort
檢測到攻擊并生成日志由于在重播時使用了倍速重播腰奋,還要解決時間間隔與原始數(shù)據(jù)不一致的問題单起。
2.2 的做法
??上面這種做法在你確實需要仿真環(huán)境做其它一些事情的時候,可能是一個很好的方案劣坊。但大多數(shù)情況下我們只是想要獲取Snort
的告警日志嘀倒,其實用下面這一行代碼就夠了:
snort -c D:\Snort\etc\snort.conf -r D:\data\DARPA1999\inside.tcpdump -l D:\Snort\log
??Snort
會自動地處理所有數(shù)據(jù)并生成告警日志,這種方式可以節(jié)省很多時間局冰。生成的日志文件位于D:\Snort\log
测蘑,且時間與inside.tcpdump
完全一致。