Ping O' Death 和 iptables

Ping O' Death 和 iptables

是否有一条简单的规则可以编写来阻止 iptables 造成的 ping 死亡?

答案1

大多数现代操作系统都对“死亡之ping”攻击免疫。来自IPCHAINS HOWTO(http://www.linux.org/docs/ldp/howto/IPCHAINS-HOWTO-5.html):

5.3 过滤“死亡之 Ping”

Linux 机器现在已经不受著名的“死亡之 Ping”的影响,该现象涉及发送非法增大的 ICMP 数据包,该数据包会导致接收方 TCP 堆栈中的缓冲区溢出并造成严重破坏。

如果您要保护可能存在漏洞的机器,您可以简单地阻止 ICMP 碎片。正常的 ICMP 数据包不够大,不需要碎片化,因此除了大的 ping 之外,您不会破坏任何东西。我听说(未经证实的)报告说,某些系统只需要超大 ICMP 数据包的最后一个碎片就可以破坏它们,因此不建议仅阻止第一个碎片。

你可以用下面的方法丢弃 icmp 碎片:

iptables -A FORWARD -p icmp -f -j DROP

但是,除非您要保护一些非常老旧的设备,否则这一切可能都是不必要的。

相关内容