成人在线你懂的-成人在线免费小视频-成人在线免费网站-成人在线免费视频观看-日韩精品国产一区二区-日韩精品国产一区

掃一掃
關注微信公眾號

EnGarde創建Snort規則讓黑客無處遁形
2007-12-27   

Snort是一個開源的網絡入侵檢測系統,它是一個可以實時監視網絡通信的數據包嗅探器。通過協議分析和內容搜索與匹配,Snort能夠檢測攻擊方法,包括拒絕服務器攻擊、緩沖區溢出、CGI攻擊、秘密的端口掃描等。Snort的生命力在于其功能強大的規則。

可以認為編寫Snort規則就像編寫程序一樣。Snort規則包括變量、關鍵字和函數。為什么我們需要編寫規則?其原因是沒有這些規則,Snort將不可能檢測黑客的攻擊行為。本文將討論編寫規則的問題。

先決條件:

你需要:

1.一臺可以進行開發規則的機器。這些規則不應當運行在一臺產生性服務器上,因為這些規則只能作為你參考的例子。

2.你還需要一臺客戶端計算機,并使其與運行Snort的機器相連接。

3.安裝有Snort的EnGarde Secure Community 3.0.18(或以上版本)。

語法問題

其語法初看起來可能有點兒奇怪,不過本節將解釋這個問題,這樣您就可以開始編寫自己的規則。Snort規則分為兩個部分:規則的頭部和規則選項。首先,規則頭部包含著規則、動作、協議、源地址和目標地址、源端口、目標端口。第二部分是規則選項,它包含著一個警告消息和某數據包有關部分的信息(如果要采取某個動作的話,就應當看一些這種信息)。

例如:alert tcp any any -> 192.168.1.0/24 111 (content:"|00 01 86 a5|"; msg: "mountd access";)

上例中,圓括號之前的部分屬于規則的頭部,圓括號內部的屬于規則選項部分。

規則動作:

規則動作描述一個數據包的“誰,在何處,什么”的問題,并指明規則被激發后,在事件中應當做什么。在編寫規則時,你可以從下面的關鍵字中選擇:

·alert –用選擇的警告方法生成一個警告,然后記錄這個數據包。

·log -記錄這個數據包。

·pass – 忽略此數據包。

協議:

規則的下一部分是協議。一些比較流行的協議包括TCP、UDP、ICMP等,不過Snort支持許多其它的協議,并繼續增加新的協議。

源IP地址

緊跟著協議的部分是IP地址。它定義了數據包來自何處。你可以用“any”這個關鍵字來定義所有的IP地址。你甚至可以編寫一個能夠匹配除你指定的IP地址之外任何地址的規則。這是通過使用“!”這個否定操作符實現的。

源端口

它說的是數據包來自哪個端口。端口號也可以使用“any”關鍵字。你還可以通過使用“:”定義一個范圍內的端口。例如,1:1000定義了從1到1000范圍內的所有端口。

方向操作符:

方向操作符“->”用于定義規則所適用的通信方向。換句話說,即指明通信進入或出自你計算機的什么地方。

目標地址

下一部分是目標地址。它定義了數據包要到何方。與源地址類似,你也可以使用“any”關鍵字或定義一個不會引起規則被激發的地址。

目標端口

緊隨目標IP地址的部分是目標端口號,即數據包設法連接的端口號。這兒的選項與源端口相同。

規則選項

圓括號內的所有內容稱為規則選項。一個比較常用的關鍵字是“content”,不過你還可以用其它許多關鍵字。關鍵字“content”允許用戶設定規則,搜索數據包有效負荷內的特定內容,并激發一個響應。

例如:

alert tcp any any -> 192.168.1.0/24 143 (content: "|90C8 C0FF FFFF|/bin/sh";
 msg: "IMAP buffer overflow!";)

通過上例可以看出,我們檢查了數據包是否包含了某種二進制字節(Binary Byte)碼和文本。

基本格式

動作 協議 源IP地址 源端口 方向 目標地址 目標端口 ( 規則選項)

增加一個新規則

既然我們對要Snort規則的語法有了一個基本的了解,現在我們就可以向系統中增加一條新的規則:

首先以根用戶身份登錄,并轉換到sysadm_r:

[test_server]# newrole -r sysadm_r
Authenticating root.
Password:
[test_server]# setenforce 0

下一步,編輯Snort.conf文件,需要使用自己喜歡的編輯器來修改/var/chroot/snort/etc/snort.conf。我們需要包括下面的行:

include local.rules

這會告訴Snort,要求它使用存儲在local.rules中的新規則。

現在我們可以創建local.rules文件:  

[test_server]# cd /var/chroot/snort/etc
[test_server]# touch local.rules

下一部分比較有趣,因為我們需要編寫規則了。在一個編輯器中打開local.rules,并增加下面的行。注意,這個規則僅是示例,你需要保證不能在一個真實的環境中使用哦:

alert tcp any any -> any 80 (msg: "Sample alert";classtype:misc-attack;
 sid: 2002973; rev:1;)

最后,重新啟動Snort,以使新的規則生效

[test_server]# /etc/init.d/snortd restart

一個簡單的例子

既然現在我們增加了一條新規則,現在解釋一下這條規則的作用,看一下其具體運用。

我們剛增加的規則是:

alert tcp any any -> any 80 (msg: "示例警告"; classtype:misc-attack;
 sid: 2002973; rev:1;)

規則如何工作:

在用戶試圖訪問一個Web站點是,就會激發上面的規則。規則被激發后,會打開警告,顯示一個消息。在這里動作的關鍵字“alert”用所定義的方法生成一個消息,然后記錄這個數據包。我們正檢測的數據包的協議是TCP協議,而且所有的IP地址和端口號已經定義。目標地址在連接到端口80的任何IP地址上定義。最后,規則選項的關鍵字“msg”告訴記錄器和警告引擎來顯示消息“示例警告”。

測試

現在你一定對自己的規則是怎樣運行的感興趣。為了看到規則的具體作用,你需要跟蹤Snort的警告日志。

[test_server]# cd /var/chroot/snort/var/log/snort
[test_server]# tail -f alert

打開一個Web瀏覽器,輸入你的測試服務器的IP地址。

現在可以查看一下Snort的警告記錄。你會看到來自Snort的一個消息,這是由我們剛才增加的規則所引起的。

[**] [1:2002973:1] Sample alert [**]
[Classification: Misc Attack] [Priority: 2]
12/12-15:35:22.130162 test_client:35524 -> test_server:80
TCP TTL:64 TOS:0x0 ID:35734 IpLen:20 DgmLen:52 DF
***A**** Seq: 0x5F3B46F0 Ack: 0x85067266 Win: 0xB7 TcpLen: 32
TCP Options (3) => NOP NOP TS: 49925498 1529581

檢測有效負荷樣例

將下面的行添加到/var/chroot/snort/etc/local.rules中:

alert tcp any any -> any 80
 (content:"index.pl";sid:12345678;rev:1;classtype:misc-attack;)
 

你可以看出,我們編寫了一個規則,用以根據內容“index.pl”檢測任何連接到端口80的通信。

注意在Snort的警告日志中,你應當能夠看到一個與下面類似的消息:

[**] [1:2002973:1] Sample alert [**]
[Classification: Misc Attack] [Priority: 2]
12/13-08:13:20.545431 test_client:32950 -> test_server:80
TCP TTL:64 TOS:0x0 ID:11275 IpLen:20 DgmLen:52 DF
***A**** Seq: 0x188A67A3 Ack: 0xF74B200C Win: 0xD8 TcpLen: 32
TCP Options (3) => NOP NOP TS: 64899598 45624

這僅僅是個開始

通過你所擁有的知識,現在你就可以開始更深入地研究如何編寫自己的規則。官方的Snort文檔包含著語法的每一個細節。隨著你更深入編寫你的Snort規則,你就會注意到以前沒有注意到網絡攻擊者。



熱詞搜索:

上一篇:精妙解讀防火墻日志記錄 防范網絡攻擊
下一篇:三大優秀網絡工具 保護網上無憂沖浪

分享到: 收藏
主站蜘蛛池模板: 搜狐视频官网| 电影《真爱》完整播放| 二手大棚钢管急卖2000元| 张达| 回到黑暗 电影| 荒野求生21天美国原版观看| 梁祝《引子》简谱| 即日启程演员表| 欲望中的女人电影| 蒲公英家族| 护花使者歌词| 羞羞的动漫在线观看| 好男当家 电视剧| 甜蜜都市| 羽毛球队名诙谐有趣的名字| 成人免费视频在线播放| 智乐星中考| 求职者| 02j331| 在线免费电影网站| 女孩们的周末| 风雨上海滩电视剧30集在线观看| 黑色纳粹电影完整版| 孕检时间表和项目| 远景山谷1981| 我的兴趣爱好| 改朝换代| 未删减版电视剧在线观看| 奔向所有时空的你电视剧在线观看| 女孩们的周末| 赖小子| 妻子的秘密在线| 心奇爆龙战车5之机甲战陀 2021| 狗叫声吸引狗| 玫瑰的故事万茜演的什么角色| 祝福语生日| 心经般若波罗蜜多心经全文| 石田介雄| 黄金传说| 色在线观看| 隐形变异作风问题清单及整改措施|