Snort分析-规则比较



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

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

我还有一个数据集,其中也包括一些恶意流量。

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

有人知道吗?

提前谢谢。

真诚。

Eray

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

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

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

删除tcp$HOME_NET任意->$EXTERNAL_NET 80

这是在寻找与目的地端口80的通信。如果您在规则中指定"元数据服务:http",并且您正在使用主机属性,那么snort将服务标识为http的所有流量都将通过该规则发送,不管目标端口是什么。这也可以反过来(如果snort在流上识别服务,它将只将该流中的数据包发送给包含元数据服务关键字的规则,这些关键字也与它识别的服务相匹配)。即,如果您的规则不使用"元数据服务:http",而您使用的是主机属性,并且snort将流标识为http,那么它将永远不会通过您的规则发送该流。

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

最新更新