深入解析Snort规则转iptables规则及fwsnort部署
1. 不支持的Snort规则选项
虽然iptables能在很大程度上模拟Snort规则语言,但仍有许多Snort选项在iptables中没有很好的等效项。部分选项如ack、fragbits等,可通过iptables的u32扩展模拟,待u32扩展移植到2.6内核后,fwsnort的后续版本将支持。以下是一些不支持的选项:
| 选项 | 说明 | 模拟情况 |
| ---- | ---- | ---- |
| asn1 | 允许Snort将签名与解码后的抽象语法表示法一(ASN.1)数据关联,常用于SMB协议 | 难以在iptables中模拟复杂处理 |
| byte_jump | 数据包数据决定Snort在进行下一次模式匹配或字节测试前跳过的字节数,对长度可变字段的协议有用 | 可用u32匹配模拟,但2.6内核暂不支持 |
| byte_test | 让Snort对数据包数据的特定偏移量进行数值测试 | pcre可部分模拟,但性能不如byte_test,u32匹配可部分模拟,2.6内核暂不支持 |
| flowbits | 用于Snort规则间传递状态信息 | 可通过iptables的CONNMARK目标与字符串匹配扩展有限模拟,fwsnort暂不支持,L7 - filter项目也可部分模拟 |
| fragbits | 允许Snort对IP头中的分段位进行测试 | iptables的 -f 参数功能不如Snort实现强大,且开启连接跟踪时,数据包会自动重组 |
| isdataat | 指示Snort测试特定偏移量是否存在数据 | 无有效iptables等效项 |
超级会员免费看
订阅专栏 解锁全文
3

被折叠的 条评论
为什么被折叠?



