我的服务器被长度为 4(标头为 32 字节)的 UDP 数据包淹没。
04:56:26.844797 IP 108.241.236.114.47034 > 185.5.173.249.14522: UDP, length 4
04:56:26.844831 IP 5.2.81.91.41240 > 185.5.173.249.14522: UDP, length 4
04:56:26.844866 IP 210.87.250.55.40919 > 185.5.173.249.14522: UDP, length 4
04:56:26.844900 IP 94.73.142.23.55904 > 185.5.173.249.14522: UDP, length 4
04:56:26.844940 IP 122.146.80.27.53779 > 185.5.173.249.14522: UDP, length 4
04:56:26.844970 IP 151.164.8.177.57392 > 185.5.173.249.14522: UDP, length 4
04:56:26.845003 IP 107.199.209.29.58712 > 185.5.173.249.14522: UDP, length 4
04:56:26.845042 IP 109.69.210.61.55743 > 185.5.173.249.14522: UDP, length 4
04:56:26.845075 IP 174.142.83.201.57903 > 185.5.173.249.14522: UDP, length 4
04:56:26.845112 IP 109.86.103.4.59078 > 185.5.173.249.14522: UDP, length 4
04:56:26.845143 IP 195.73.208.205.48309 > 185.5.173.249.14522: UDP, length 4
04:56:26.845179 IP 24.227.213.112.47999 > 185.5.173.249.14522: UDP, length 4
04:56:26.845232 IP 203.126.92.200.44085 > 185.5.173.249.14522: UDP, length 4
04:56:26.845266 IP 155.223.130.101.41779 > 185.5.173.249.14522: UDP, length 4
04:56:26.845280 IP 207.71.48.115.47343 > 185.5.173.249.14522: UDP, length 4
04:56:26.845297 IP 173.45.246.116.56800 > 185.5.173.249.14522: UDP, length 4
04:56:26.845324 IP 5.19.255.191.56223 > 185.5.173.249.14522: UDP, length 4
04:56:26.845359 IP 91.121.45.106.41200 > 185.5.173.249.14522: UDP, length 4
04:56:26.845393 IP 89.135.59.191.43939 > 185.5.173.249.14522: UDP, length 4
04:56:26.845423 IP 208.125.243.239.46874 > 185.5.173.249.14522: UDP, length 4
04:56:26.845457 IP 193.61.128.69.42921 > 185.5.173.249.14522: UDP, length 4
04:56:26.845494 IP 210.253.139.44.58710 > 185.5.173.249.14522: UDP, length 4
04:56:26.845533 IP 24.242.179.242.53563 > 185.5.173.249.14522: UDP, length 4
04:56:26.845561 IP 110.50.110.211.54071 > 185.5.173.249.14522: UDP, length 4
04:56:26.845581 IP 217.14.193.97.49223 > 185.5.173.249.14522: UDP, length 4
04:56:26.845628 IP 31.210.67.1.52423 > 185.5.173.249.14522: UDP, length 4
04:56:26.845644 IP 178.33.119.122.51731 > 185.5.173.249.14522: UDP, length 4
我已经有一条规则来阻止这种情况,但它似乎不起作用,数据包仍然进来。
iptables -t raw -A PREROUTING -p udp -m length --length 4 -j DROP
标头长度为 32,目标长度为 4。我尝试仅在长度 4 上进行阻止。
如何才能有效阻断这些攻击数据包呢?
答案1
要解决这个问题,你需要了解一些事实:
- IPTables Length 模块根据数据包的总长度进行测量。
- UDP 报头的长度始终为 8 个字节。
- IP 报头通常为 20 个字节,但也可以更长。
有了这些知识,这里有一个示例,它将阻止没有 IP 选项且数据有效负载小于 4 个字节的 UDP 数据包:
iptables -A PREROUTING -p udp -m length --length 28:32 -j DROP
当然,您也可以使用,--length 0:32
因为这些数据包也是无效的;合法的 UDP 数据包的总大小不可能小于 28 字节。事实上,即使是 28 字节,这也是非常异常的,因为那样会发送一个没有数据的数据报。
希望这可以帮助。
答案2
这看起来像是分布式拒绝服务 (DDoS) 攻击,如果它使到你边缘(路由器或服务器)的入站网络连接饱和,那么无论网络内部有多少防火墙都无法解决这个问题,因为链接到你已经饱和了。
推荐的 DDoS 缓解方法是要求您的 ISP 在流量到达您的网络之前将其过滤掉。
从长远来看,与 DDoS 缓解顾问协商可能会有所帮助,这样你就可以“清洁管道”连接到互联网。(通常通过 GRE 隧道将您的流量传输到 DDoS 缓解中介,中介具有处理攻击的上游连接,并过滤掉攻击流量,然后再路由给您)。