Iptables
如何在可能的 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
我會冒險猜測(如果沒有更多調查就很難確定)有人在欺騙您的 IP 作為來源,而您正在獲得返回流量。
請記住,它
tcpdump
會檢查“線路”(即,在 iptables 之前),因此即使 iptables 正在丟棄流量,您仍然會在 tcpdump 中看到流量。您無法阻止向您發送的數據包(您的提供商需要這樣做),您所能做的就是丟棄它們以盡量減少對您的主機的影響。
請記住,
iptables
規則是按照給定的順序處理的,因此如果鏈在到達您的規則之前返回,則不會產生影響。請注意,ICMP 對於網路的工作至關重要,它用於告訴您在一長串其他錯誤消息中某些連接已損壞。通過 ICMP 淹沒任何合理的機器將需要不法分子的一些獨創性,不要太擔心這一點。