发新话题
打印

【求助】求助:有关snort中rules的编写问题

【求助】求助:有关snort中rules的编写问题

上周,一兄弟问我是否可以用snort,当别人用nessus扫描时报警.
(snort2.2,winpcap3.1.汗...我一开始用的都是最新的版本....结果snort就是出错...汗....)
我试了一下子local.rule:

alert tcp any any ->$HOME_NET any (content:"nessus";msg:"nessus scan"

结果用xscan扫描,并无任何报警信息.....

后来又加上这句:

alert tcp any any ->$HOME_NET any (content:"|6E 65 73 75 75 73|";msg:"nessus scan"
alert tcp any any ->$HOME_NET any (content:"n e s s u s";msg:"nessus scan"


也没有成功....想请教一下......是否我自己写的规则有问题?如是,请指教....如果是其他问题,请告之,谢谢
(2000pro snort -v -e -d -c-l 都能正常显示      

TOP

是规则的问题,编写规则之前,请先明白规则定义语言中各字段的涵义,参考这里:
http://www.snort.org/docs/snort_ ... 2.4/rc1/node14.html

可通过抓包获得系统被扫描时接受到的数据包,根据这些数据包的特点定义相应的检测规则。      
Advance Monitor - Linux Monitoring Solution

TOP

谢谢,snort的相关文档当时看了.但是感觉上用上面写的规则的即可.我是中英文对照看的....请指教...

content
content关键字是snort中比较重要的一个。它允许用户设置规则在包的净荷中搜索指定的内容并根据内容触发响应。当进行content选项模式匹配时,Boyer-Moore模式匹配函数被调用,并且对包的内容进行检查(很花费计算能力)。如果包的净荷中包含的数据确切地匹配了参数的内容,这个检查成功并且该规则选项的其他部分被执行。注意这个检查是大小写敏感的。
Content关键字的选项数据比较复杂;它可以包含混合的文本和二进制数据。二进制数据一般包含在管道符号中("|"),表示为字节码(bytecode)。字节码把二进制数据表示为16进制数字,是描述复杂二进制数据的好方法。下面是包含了一个混合数据的snort规则范例。
格式:
content: [!] "<content string>";
例子:
alert tcp any any -> 192.168.1.0/24 143 (content: "|90C8 C0FF FFFF|/bin/sh"; msg: "IMAP buffer overflow!";)

alert tcp any any -> 192.168.1.0/24 21 (content: !"GET"; depth: 3; nocase; dsize: >100; msg: "Long Non-Get FTP command!";)


注:多内容的规则可以放在一条规则中,还有(: ; / “)不能出现在content规则中。如果一条规则前面有一个“!”。那么那些不包含这些内容的数据包将触发报警。这对于关注那些不包含一定内容的数据包是有用的。      

TOP

[QUOTE=speedwolf]谢谢,snort的相关文档当时看了.但是感觉上用上面写的规则的即可.我是中英文对照看的....请指教...[/QUOTE]

你觉得一次常规的扫描是如何完成的?
content检查的是进入系统的数据包payload区      
Advance Monitor - Linux Monitoring Solution

TOP

[QUOTE=Roc.Ken]你觉得一次常规的扫描是如何完成的?
content检查的是进入系统的数据包payload区[/QUOTE]
这个倒是不大清楚,我现在就去找些资料去看看...........
谢谢      

TOP

我对扫描那个方面没什么研究.不知Roc.Ken有什么好的资料推荐一下,最好从基础开始.谢谢      

TOP

不好意思,今天才看到.
可以先用baidu搜索一下TCP/IP协议基础知识, 再学会使用一个工具, 看看具体的实现; 推荐使用 nmap, 最新的中文文档可以从这里得到:
http://www.insecure.org/nmap/man/zh/      
Advance Monitor - Linux Monitoring Solution

TOP

发新话题