0x01?引言
在外網(wǎng)在中各大安全廠商一般使用WAf來防御攻擊者的攻擊,但是在內(nèi)網(wǎng)中一般來使用ips,ids來防御攻擊者的攻擊,這是因為內(nèi)外網(wǎng)的環(huán)境差異造成的,外網(wǎng)中主要是防御一些web攻擊,而內(nèi)網(wǎng)中主機漏洞居多,就用到了ids和ips,但是?IDS和防火墻均具備對方不可替代的功能,因此IDS和防火墻共存,形成互補
0x02 什么是ids和ips
IPS對于初始者來說,是位于防火墻和網(wǎng)絡(luò)的設(shè)備之間的設(shè)備。這樣,如果檢測到攻擊,IPS會在這種攻擊擴散到網(wǎng)絡(luò)的其它地方之前阻止這個惡意的通信。而IDS只是存在于你的網(wǎng)絡(luò)之外起到報警的作用,而不是在你的網(wǎng)絡(luò)前面起到防御的作用。
IPS檢測攻擊的方法也與IDS不同。一般來說,IPS系統(tǒng)都依靠對數(shù)據(jù)包的檢測。IPS將檢查入網(wǎng)的數(shù)據(jù)包,確定這種數(shù)據(jù)包的真正用途,然后決定是否允許這種數(shù)據(jù)包進入你的網(wǎng)絡(luò)。
含義不同
IDS :入侵檢測系統(tǒng)
做一個形象的比喻:假如防火墻是一幢大樓的門鎖,那么IDS就是這幢大樓里的監(jiān)視系統(tǒng)。一旦小偷爬窗進入大樓,或內(nèi)部人員有越界行為,實時監(jiān)視系統(tǒng)會發(fā)現(xiàn)情況并發(fā)出警告。
IPS :入侵防御系統(tǒng)
作用不同
IDS 專業(yè)上講就是依照一定的安全策略,對網(wǎng)絡(luò)、系統(tǒng)的運行狀況進行監(jiān)視,盡可能發(fā)現(xiàn)各種攻擊企圖、攻擊行為或者攻擊結(jié)果,以保證網(wǎng)絡(luò)系統(tǒng)資源的機密性、完整性和可用性。
IPS入侵防御系統(tǒng)是電腦網(wǎng)絡(luò)安全設(shè)施,是對防病毒軟件和防火墻的補充。入侵防御系統(tǒng)是一部能夠監(jiān)視網(wǎng)絡(luò)或網(wǎng)絡(luò)設(shè)備的網(wǎng)絡(luò)資料傳輸行為的計算機網(wǎng)絡(luò)安全設(shè)備,能夠即時的中斷、調(diào)整或隔離一些不正?;蚴蔷哂袀π缘木W(wǎng)絡(luò)資料傳輸行為。
0x03?Suricata
Suricata是一個高性能的網(wǎng)絡(luò)IDS、IPS和網(wǎng)絡(luò)安全監(jiān)控引擎。它是開源的,由一個社區(qū)經(jīng)營的非營利性基金會,開放的信息安全基金會所有。(OISF _). Suricata是由OISF開發(fā)的
有些廠商選擇用Suricata有些廠商選擇用snort
大部分廠商選擇Suricata的原因
Snort自1998年開發(fā)至今,擁有比較長的歷史和完整的知識庫。
即便如此,很多開發(fā)廠商還是選擇使用了Suricata,主要的原因如下:
舊版本的Snort2不支持多線程、吞吐量小,無論一個 CPU 包含多少個內(nèi)核,都只會使用一個內(nèi)核或一個線程,很大程度上造成了性能上的短板。
有一個相當復雜的解決方法:運行多個SNORT單線程實例,全部進入同一個日志。然而,管理這個過程的額外開銷(AutoFP)和硬件的高成本,意味著這種設(shè)置很少在生產(chǎn)環(huán)境中出現(xiàn)。
Suricata可以兼容Snort2的規(guī)則簽名,也就是snort2的規(guī)則直接拿來,放到suricata里就可以用。
Suricata支持文件提取、文件還原,可以將流量中的文件還原出來。
Suricata和snort從規(guī)則上來講并沒什么太大的差別,會寫一個的規(guī)則就自然會寫另一個的規(guī)則
0x04 Suricata數(shù)據(jù)結(jié)構(gòu)
0x05 ?Suricata工作流程
看著太亂看不懂?沒關(guān)系,看簡單的圖
有的小伙伴可能有疑問了,異常流量還放行??
這是因為很多廠商和客戶都會擔心誤報的問題,所以只開啟了日志功能并沒開啟攔截功能,很多外網(wǎng)WAF也是只開啟了日志功能并不攔截,絕大多數(shù)客戶大部分情況下就算買了WAF和IPS、IDS等設(shè)備都只會開啟日志功能,并不攔截,具體看情況
設(shè)備會檢測內(nèi)網(wǎng)之間的流量,當有流量經(jīng)過設(shè)備,設(shè)備會先加載內(nèi)部規(guī)則,然后對流量進行匹配,如果沒有命中的則放行此流量。如果有命中的會記錄日志和報文,然后放行或者攔截流量。具體怎么操作看用戶設(shè)置
0x06 Suricata安裝
推薦kali安裝,方便
直接apt-get install suricata就安裝好了
之后就是安裝簽名(就是規(guī)則rules文件)就可以了,命令是suricata-update
注意這是官方更新的rule規(guī)則,更新的配置文件存放在/var/lib/suricata/rules中,文件為classification.config和suricata.rules,需要cp至/etc/suricata/rules中才能加載成功,不然會有如下錯誤:
其他系統(tǒng)安裝參考 https://www.osgeo.cn/suricata/install.html
0x07?Suricata目錄
目錄:
/etc/suricata/存放suricata執(zhí)行和配置文件的目錄
/etc/suricata/rules規(guī)則文件存放目錄,自己之后寫的也要放在這里
/var/log/suricata/存放suricata日志的目錄
文件:
suricata.yamlsuricata的配置文件,重中之重,特別重要,位于/etc/suricata/下
suricata.rules官方規(guī)則文件,存放在/etc/suricata/rules中
fast.log警告日志文件,存放在/var/log/suricata/下,匹配的輸出都在這里
0x08 Suricata規(guī)則
suricata.rules?官方規(guī)則文件,存放在/etc/suricata/rules中
其中大部分規(guī)則都在suricata.rules文件中
要理解這些規(guī)則具體是什么意思也很簡單,只需要記住每個字段表示的意思就行了
如:alert tcp any any -> any any (msg: "測試"; flow:established,to_client;? content:"|00 00 00 00|"; offset:10;depth:10; sid:1005; rev:1;)
alert tcp :alert表示記錄, tc 表示tcp協(xié)議?合在一起就是記錄tcp協(xié)議,alert udp就是記錄udp,?alert?http就是記錄http協(xié)議,
any any -> any any:第一個any表示ip,第二個any表示端口,箭頭表示到,這句話意思為所有ip的所有端口到所有ip的所有端口的流量,?any any -> any 445就表示所有ip的所有端口到所有ip的445端口的流量
(msg: "測試";?:表示這個規(guī)則匹配的漏洞的命中,一般是漏洞的名字
flow:established,to_client;?:表示到客戶端建立連接的流量to_client表示到客戶端,to_server則表示到服務器的流量
content:"|00 00 00 00|"; :要匹配內(nèi)容就是wireshark中的那些十六進制
offset:9;depth:10; :一般用來精確匹配內(nèi)容,offset:9;depth:10;表示偏移9個字符串再進行匹配,向后匹配十位,這里匹配到是第10-20個字符串
sid:1005; :規(guī)則編號,沒啥太大意義
rev:1;)?:等級,沒啥太大意義
隨著目前漏洞的樣式越來越多,有些廠商開始使用雙向規(guī)則進行匹配。單向規(guī)則就是只匹配請求或者返回,雙向規(guī)則則是即匹配請求也匹配返回,一條數(shù)據(jù)包同時命中才告警或者攔截
所有具體的字段參考Suricata用戶手冊中文版https://readthedocs.org/projects/suricatacn/downloads/pdf/latest/
0x09 Suricata使用
一些研發(fā)人員會使用Suricata測試寫的規(guī)則是否準確,一般使用
suricata -c /etc/suricata/suricata.yaml -r test.pcap -k none
-c /etc/suricata/suricata.yaml?表示要加載的配置文件
建議將原加載的規(guī)則注釋掉,然后自己新建一個規(guī)則集并且加載,
-r?test.pcap?表示要測試的pacp文件,其他格式結(jié)尾的流量包可能會出錯
-k none表示 禁用強制校驗和檢查,沒啥太大用,
如果測試流量包命中了規(guī)則會在當前文件夾下生成一個fast.log文件。里面記錄了命中的規(guī)則編號
0x10 參考鏈接
https://www.cnitpm.com/pm1/73453.html
https://zhuanlan.zhihu.com/p/453068646
https://blog.csdn.net/gengzhikui1992/article/details/103031874
https://readthedocs.org/projects/suricatacn/downloads/pdf/latest/
https://www.osgeo.cn/suricata/install.html
編輯:黃飛
?
評論