被 NTP/SSDP/CharGEN 放大攻击的 iptables -m limit –limit 100/s 规则模板

15次阅读

–limit 100/s 对 NTP/SSDP/CharGEN 放大攻击无效,因其不区分源 IP、不跟踪会话,攻击者可用海量肉鸡低频发包绕过;须改用 -m hashlimit 按 srcip,dstport 组合限速,并配合 rp_filter、服务加固与 DROP 策略。

被 NTP/SSDP/CharGEN 放大攻击的 iptables -m limit --limit 100/s 规则模板

为什么 --limit 100/s 对 NTP/SSDP/CharGEN 放大攻击基本无效

因为这些协议的反射放大攻击本质是「伪造源 IP 的 UDP 请求」,攻击流量根本不会触发连接状态,iptables-m limit 在 INPUT 链上对单个目标 端口 限速时,只按「每秒匹配到的包数」计数,不区分源 IP、不跟踪会话。攻击者用百万级肉鸡发包,每个 IP 只打 1–2 个包 / 秒,--limit 100/s 完全拦不住——总流量轻松突破 Gbps,而规则认为“每个源都远低于阈值”。

真正有效的限速必须绑定源 IP + 端口组合

关键不是限制“本机某端口每秒收多少包”,而是限制“每个源 IP 向本机某端口每秒最多发几个包”。需配合 -m hashlimit(比 limit 更精准)或 -m connlimit(对已建连接有效,但 UDP 无连接,慎用)。

  • -m hashlimit --hashlimit-above 5/sec --hashlimit-burst 10 --hashlimit-mode srcip,dstport --hashlimit-name ntp_limit --hashlimit-htable-expire 60000:对每个 srcip+dstport 组合独立限速,超速丢包
  • 必须加 --hashlimit-mode srcip,dstport,否则默认只按 srcip,会导致不同端口间误杀(比如封掉正常 HTTP 请求)
  • --hashlimit-htable-expire 60000 防止哈希表无限膨胀(单位毫秒),不设可能吃光内存
  • NTP(端口 123)、SSDP(端口 1900)、CharGEN(端口 19)要分别写三条规则,不能合并

INPUT 链规则顺序和配套防护要点

限速规则必须放在所有 ACCEPT 规则之前,且优先于状态检测(-m state --state NEW)。否则包已被放行,限速形同虚设。

  • 先 DROP 已知恶意 IP 段(用 ipset 加载 黑名单),再做 hashlimit,避免资源浪费在已知攻击源上
  • 对 NTP 服务,如果无需对外提供,直接 -p udp --dport 123 -j DROP 最彻底;若必须开放,确保 ntpdchronyd 配置了 restrict default kod nomodify notrap nopeer noquery
  • SSDP 和 CharGEN 基本没有合理公网暴露场景,建议直接禁用:-p udp --dport 1900 -j DROP-p udp --dport 19 -j DROP
  • 启用 net.ipv4.conf.all.rp_filter=1(反向路径过滤),能拦截部分伪造源 IP 的包,但不能替代 iptables 规则

验证规则是否生效的实操检查项

别只看 iptables -L -n -v 的包计数,要确认三件事:

  • 执行 iptables -t filter -L INPUT -n -v | grep hashlimit,确认规则在 INPUT 链且位置靠前(行号小)
  • cat /proc/net/ip_tables_names 确保内核加载了 ipt_hashlimit 模块(没加载会静默跳过规则)
  • 模拟攻击测试:用 hping3 -2 -p 123 -i u10000 --flood attacker_ip(每秒 100 包),观察 iptables -L INPUT -n -v 中对应规则的 pkts 计数是否增长,且实际进到应用层的包极少
  • 注意:hashlimit 的统计有轻微延迟(毫秒级),不要用 watch -n 1 看实时计数,改用 iptables -L -n -v -x 抓快照对比

UDP 反射放大攻击的防护粒度很细,--limit 100/s 这种全局速率限制只是幻觉。真实有效的规则必须带源识别、端口绑定、哈希表生命周期控制,且要和系统级防护(rp_filter、服务配置)配合。漏掉任意一环,就可能被绕过。

text=ZqhQzanResources