Snort分析 - 规则比较

时间:2014-02-28 16:28:25

标签: networking wireshark tshark network-traffic snort

我想问一个与snort相关的问题。

我有不同的snort规则集,有些属于v2.9.1(大约3年前),有些属于v2.9.5.6。

我还有一个包含一些恶意流量的数据集。

现在,当我使用规则v2.9.1运行snort时,它会为我的数据集的%17提供警报。另一方面,根据规则2.9.5.6,它仅提供0.02%的数据集的警报。这是什么原因?我期待得到更好的结果,但几乎无法检测到恶意数据包。

有人对此有所了解吗?

提前致谢。

此致。

ERAY

1 个答案:

答案 0 :(得分:0)

从2.9.1到2.9.5.6有很多变化。这些自定义规则是否有任何示例?这是非常广泛的,没有任何例子,它将无法解释为什么会发生这种情况。如果您提供的示例仍然是警报,并且不再触发的规则将是一个良好的开端。

我们想到的一件事是,您是否正在使用主机属性表,以及规则是否包含“元数据服务”关键字。有关其他信息,请参阅snort手册(http://manual.snort.org/node22.html)。如果你没有在2.9.1中使用主机属性,但是你现在并且没有正确配置,那么你可能会看到这种行为。由于17%至0.02%是一个相当剧烈的变化,这当然是可能的。

使用主机属性时,如果snort标识服务,它将忽略规则标头中的端口。例如,如果您指定规则标头,如下所示:

drop tcp $ HOME_NET any - > $ EXTERNAL_NET 80

这是在查找目标端口为80的流量。如果在规则中指定“metadata service:http”并且您正在使用主机属性,那么snort将所有服务标识为http的流量将通过此规则发送,无论目的港的。这也是相反的方法(如果snort识别流上的服务,它将仅将该流中的数据包发送到包含与其识别的服务匹配的元数据服务关键字的规则)。即如果您的规则不使用“元数据服务:http”,并且您正在使用主机属性,并且snort将流标识为http,它将永远不会通过您的规则发送该流。

所以它真的取决于现在如何配置snort,如果规则没有改变,那么你使用的预处理器可能会改变。这只是一种可能的解释,它也可能是完全不同的东西,但是你没有提供足够的信息来确定这一点。