1

我正在尝试使用 Snort 检测 ping 洪水攻击。我已经包含了规则

(drop icmp any any -> any any (itype:8; threshold, track by_src, count 20, seconds; msg:"Ping flood attack detected"; sid:100121))

在 Snort 的 ddos​​.rule 文件中。

我正在使用命令进行攻击

hping3 -1 --fast

攻击机中的 ping 统计信息显示

100% 丢包

然而,Snort 动作统计显示结果为

块-> 0。

为什么会这样?

4

1 回答 1

2

需要注意的几点:

1) 此规则缺少秒值。你需要指定一个超时值,你目前有“秒;” 你需要像“seconds 5;”这样的东西。由于这是无效的,我不确定 snort 何时真正会生成警报,这意味着它可能只是丢弃所有 icmp 数据包,但不会生成任何警报。

2) 此规则将丢弃 itype 8 的每个 icmp 数据包。阈值仅指定何时发出警报,而不是何时丢弃。因此,这将丢弃所有匹配的数据包,然后每丢弃 20 个数据包生成 1 个警报。请参阅此处的规则阈值手册。

3) 如果您没有在 inline 模式下配置 snort,您将无法实际阻止任何数据包。在此处查看有关三种不同模式的更多信息。

如果您只想检测和丢弃 ping 洪水,您可能应该将其更改为使用detection_filter选项,而不是阈值。如果您想允许合法 ping 并丢弃 ping 泛洪,您不想使用阈值,因为您编写此规则的方式将阻止所有 icmp itype 8 数据包。如果您使用 detection_filter,您可以编写一个规则,如果 snort 在 5 秒内看到来自同一源主机的 20 次 ping,则丢弃。以下是您的规则可能如下所示的示例:

drop icmp any any -> any any (itype:8; detection_filter:track by_src, count 20, seconds 5; sid:100121)

如果 snort 在 5 秒内看到来自同一源主机的 20 次 ping,那么它将丢弃并生成警报。在此处查看检测过滤器的 snort 手册。

使用此配置,您可以允许网络上的合法 ping 并阻止来自同一源主机的 ping 泛洪。

于 2014-03-19T04:39:24.780 回答