Snort:修改和编写自定义Snort规则

2008-10-31    | |
打印本文章
RSS

导读:Snort规则强大灵活,且编写简单。最好从VRT认证的规则开始,因为他们的编写最好,但是还有其他的规则资源。如果已经下载了已有的IDS规则,就可以根据需要修改规则。

关键词:Snort 规则 编写 IDS IDS规则 修改

正在加载数据...

【TechTarget中国原创】Snort规则强大而灵活,而且编写相对简单。最好从VRT(Sourcefire Vulnerability Research Team)认证的规则开始,因为他们的编写最好,但是还有其他的规则资源。如果已经下载了已有的IDS规则,就可以根据需要修改规则。在开始前,先查看Snort.org的……

【TechTarget中国原创】Snort规则强大而灵活,而且编写相对简单。最好从VRT(Sourcefire Vulnerability Research Team)认证的规则开始,因为他们的编写最好,但是还有其他的规则资源。如果已经下载了已有的IDS规则,就可以根据需要修改规则。

  在开始前,先查看Snort.org的常见疑难问答,可以在这里下载最新的VRT规则。(查阅How to decipher the Oinkcode)。阅读这些规则、修改并实验(当然是在测试环境中)。如果已有的Snort规则不能按照想要的方式工作,就可以做些修改。下面是如何做。

  所有的Snort规则都遵循一个简单的格式,这个格式应该检查一下。首先是SID和Rev(revision)的笔记。SID是Snort规则ID(也就是Signature ID)。Snort.org保留了不到一百万条的“官方”规则,而Bleeding Snort使用的SID超过了两百万。如果修改一条规则,就在SID中增加了一百万,所以可以跟踪到原始的。如果要创建新规则,使用起点是九百万的SID。当做出改变或者规则更改控制完成时增加修订。

  有些Snort规则是空地址规则文件。不要使用它,或者你的自定义IDS规则可以在下一次安装新的规则的时候重写空文件。创建一个或者两个文件,例如company_prod.rules和company_test.rules,并在snort.conf文件中增加包含语句。可以在一台计算机和接口上运行多个Snort,这对于测试规则很有用,但是在和产品平行的旧的PC上运行测试版的Snort可能会更早、也更安全。

  下面是一条简单的Snort规则:
alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg:"ICMP PING NMAP"; dsize:0; itype:8; reference:arachnids,162; classtype:attempted-recon; sid:469; rev:3;)

这  些代码的意思是:如果发现了定义为(default = any)的$EXTERNAL_NET ICMP内容到定义为(default = any)的$HOME_NET的ICMP包就发送一个警告;如果数据大小(dsize)是0,而ICMP类型(itype)是8(就是echo(request))。(还可以查看http://www.snort.org/pub-bin/sigs.cgi?sid=469)除“警告”外的其他动作包括,但不止是,登录和通过。这种情况下的协议是ICMP,但是也支持IP, TCP和UDP。变量需要在配置文件中定义,并添加美元符号前缀。

  SID469不是很好的规则。它会产生很多的假阳性,因为它相当“宽容”。除了NMAP外的其他应用发送没有任何负载的echo request包,而且没有其他标准可以是这条规则“更严格”或者更详细。下面是一条较好的规则:
alert udp $EXTERNAL_NET any -> $SQL_SERVERS any (msg:"MS-SQL probe response overflow attempt"; content:"|05|"; depth:1; byte_test:2,>,512,1; content:"|3B|"; distance:0; isdataat:512,relative; content:!"|3B|"; within:512; reference:bugtraq,9407; reference:cve,2003-0903; reference:url,www.microsoft.com/technet/security/bulletin/MS04-003.mspx; classtype:attempted-user; sid:2329; rev:6;)

  由于空间限制,我不能解释这条规则的每个细节,但是你只要看看就可以发现它很详细。你还可能注意到这些例子包括对外部资源的参考。查看Snort“etc”目录下的“reference.config”文件中的url,或者查看Snort网站上的SID中的规则文件,包括这些参考资料的连接。

  Snort 2.1.0版本引入了PCRE(Perl Compatible Regular Expressions)、thresholding和suppression,所有的这些对适当的调制都很严格。PCRE允许在规则中使用Regular Expression,所以你搜索的很详细。三种类型的thresholding允许限制“噪杂”规则以各种方式发送的警告的数量,而且可以写入自定义规则,或者放置在单独的配置文件中,例如threshold.conf。特别是,你可以使用外部文件 “调制”官方Snort.org规则。而不需要实际修改这些规则,这就使更新更加简单了。Suppression命令允许在哪些设备允许或者不允许触发警告上更加细致具体。例如,如果你在10.1.1.54上有网络管理工作站,使用“public”社区字符串选择SNMP设备(这样很不好,对吧?)。你可以使用下面的规则来抑制这个情况:suppress gen_id 1, sig_id 1411, track by_src, ip 10.1.1.54

  我们只是提到了表面。更全面的信息请查看Snort.org上的Snort用户手动指南,并从Snort.org和BleedingSnort.com上获取目前的规则。“readme”文件中包括Snort的源代码,这些源代码可以下载、检查来学习更多。如果你不想下载源代码,可以访问Snort CVS Repository网页上的Snort源代码、文档和废弃的规则。注意CVS库中的规则没有像2005年四月那样做维护,虽然有一些这方面的讨论,也可能会做出一些改变。可以阅读Snort.org上的文档或者加入Snort的Sigs(Special Interest Group)邮件表。

查看全文
 
大部分普通电脑用户最关心哪家公司的漏洞补丁?答案一定是微软了。非常紧急的补丁可以随时发布的。那这些补丁的作用是什么呢?当然是修补哪些0day了。
 
公安部计算机信息系统安全产品质量监督检测中心发布了信息技术入侵防御产品安全检验规范。入侵防御产品是一种主动的、积极的入侵防范、阻止系统,它部署在网络的进出口……
 
如果产品只有IPS和IDS,那么“我应该买哪个”这种问题的答案就很简单了:如果你想要可见性,就买IDS。如果想要控制就买IPS。但是IPS和IDS厂商……
 
如果IPS是控制工具,那么IDS就是可视性工具。入侵检测系统位于网络的一边,在很多不同的节点监控网络流量,并提供对网络安全状态的可视性效果。
 
入侵检测系统和入侵防御系统是特别容易混淆的,因为这些产品很相似,厂商通常也是一样的,甚至他们的缩写也很难分开。本文将分别解释他们的功能,并确定……
云计算的概念越来越流行,而且云计算被认为是一种强大的商业模式,使用云计算,可以根据需要购买计算能力、磁盘存储、协作应用开发资源、客户关系管理(CRM),而且它非常灵活。但是采用云计算会遇到与外包有关的敏感的公司数据所能遇到的所有风险。当你和第三方已知或未知的转包商交易时,特别是在全面范围内时,执行安全策略和遵从法规要求就很困难。再加上云模糊的特性以及非传统厂商进入这个市场,就更增加云的危险。
“最佳实践”来自英文Best Practice。维基百科对最佳实践的定义是一个管理学概念,认为存在某种技术、方法、过程、活动或机制可以使生产或者管理实践的结果达到最优,并减少出错的可能性。学习应用IT企业安全的最佳实践,其实就是借鉴别人成功的经验,让自己在保护企业安全方面少走弯路。在本手册中,将集合IT业内关于企业安全的最佳实践,并不断更新,以期在企业安全防护方面提供帮助。
入侵防御系统(Intrusion Prevention System,IPS)是这段时间网络安全业内比较热门的一个词,这种既能及时发现又能实时阻断各种入侵行为的安全产品,自面世那天起,就受到各大安全厂商和用户的广泛关注。本指南将帮助你深入了解IPS,并介绍专家对IPS未来的预测。
最新更新
专家答疑
技巧
Mike Rothman
问:Unix审计设置的最佳业务实践是什么?有一个厂商试图说服我Unix系统日志足够满足SOX(萨班斯法案)、HIPAA、GLBA 和PCI DSS等法规的要求。这种说法对吗?
David Griffeth
问:我们公司希望通过服务器虚拟化来节省开支。目前我们实施了单点登录,打算在虚拟化之后继续使用它。请问有没有将SSO和服务器虚拟化集成起来的最佳实践方案?
David Mortman
问:我是一名安全经理,最近想要扩充我的安全团队。公司的管理层希望我从内部服务台商提升一些员工。我应该在候选人身上寻找那些特定的素质或者经验呢?

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
登录Email
请输入您的登录Email
密码
下次自动登录