检测 NULL 类型 DNS 数据包的 Snort 规则

检测 NULL 类型 DNS 数据包的 Snort 规则

我正在尝试NULL使用 Snort 检测类型的 DNS 请求。我使用 Wireshark 找到请求数据包的类型字段:

dns NULL 类型

我发现以下规则迈克菲

alert udp any any -> any 53 (msg:"NULL request"; content:"|01 00|"; offset:2; within :4; content:"|00 00 0a 00 01|"; offset:12; within:255; threshold: type threshold, track by_src, count 10, seconds 5; sid: 5700001; rev: 1)

但是,首先这条规则对我来说不起作用,因为它会抛出以下错误消息:

ERROR: /etc/snort/rules/local.rules(7) within can't be used with itself, protected, offset, or depth

这很奇怪,因为显然与、 、 ...within结合使用对 McAfee 来说不是问题。我使用的是 Snort 版本。itselfprotected2.9.9.0

此外,我还希望有更好的方法来解决typeDNS 请求的字段。而不是使用固定偏移量来指定在数据包中查找特定模式的位置。有没有办法在节的字段中查找Type字段。这也会使规则比使用偏移量和十六进制代码模式更具可读性。QueriesDomain Name System

所以,我的问题是:有谁知道检测类型 DNS 请求的 Snort 规则NULL

相关内容