在可能发生 DDoS 攻击时如何正确丢弃 ICMP 类型 3 数据包?

在可能发生 DDoS 攻击时如何正确丢弃 ICMP 类型 3 数据包?

即使跑步之后

iptables -A INPUT -p icmp -m icmp --icmp-type 3 -j DROP

我不断在 tcpdump 上收到 ICMP 类型 3 代码 13 数据包。当我运行时tcpdump icmp,我收到如下消息:

19:41:31.923630 IP NAMESOURCE  > MY_NAME: ICMP net IP_SOURCE unreachable, length 76

我的问题是,我怎样才能摆脱这些数据包?

顺便说一句,我从多个来源获取了这些数据包,这让我认为这可能是某种 (D)DoS。但我不确定我在其中扮演什么角色。

此外,snort 不断发出警报:

[**] [1:485:4] ICMP Destination Unreachable Communication Administratively Prohibited [**]
[Classification: Misc activity] [Priority: 3] 
05/02-19:44:20.171298 SOURCE_IP -> MY_IP
ICMP TTL:238 TOS:0x0 ID:13584 IpLen:20 DgmLen:56
Type:3  Code:13  DESTINATION UNREACHABLE: ADMINISTRATIVELY PROHIBITED,
PACKET FILTERED
** ORIGINAL DATAGRAM DUMP:
MY_IP:47541 -> SOURCE_IP:8080
TCP TTL:47 TOS:0x0 ID:22750 IpLen:20 DgmLen:60 DF
Seq: 0x5EB7CF7A
** END OF DUMP

答案1

我大胆猜测(如果不进行进一步调查很难确定),有人冒充您的 IP 作为来源,而您获得了返回流量。

请记住,tcpdump检查“线路”(即,在 iptables 之前),因此即使 iptables 正在丢弃流量,您仍然会在 tcpdump 中看到流量。

您无法阻止数据包发送给您(您的提供商需要这样做),您所能做的就是丢弃它们以尽量减少对您的主机的影响。

答案2

请记住,iptables规则是按照给定的顺序处理的,因此如果链在到达您的规则之前返回,则不会产生影响。

请注意,ICMP 对于网络的运行至关重要,它用于在一长串其他错误消息中告诉您某个连接无法正常工作。要通过 ICMP 淹没任何合理的机器,需要不法之徒相当聪明,不要太担心这一点。

相关内容