文档首页> 数据与安全> UDP 反射放大:小请求如何打出大流量

UDP 反射放大:小请求如何打出大流量

发布时间:2025-11-07 18:50        更新时间:2025-11-07 23:13
一份几十字节的小请求,经过特定服务的应答,能膨胀成几十倍甚至上千倍的攻击流量——这就是 UDP 反射放大攻击的原理,也是大流量 DDoS 屡屡得手的主要推手。 攻击分三步。第一步,攻击者伪造受害者的 IP 作为源地址,向公网上开放了特定 UDP 服务的主机发出小请求;第二步,这些服务按协议规定,把远大于请求体积的应答发往被伪造的地址,也就是受害者;第三步,成千上万台这样的主机同时响应,受害者的带宽瞬间被应答洪流淹没,而真正的攻击者全程没有暴露。 常见的反射源都利用了"请求小、回答大"的协议特性。开放在公网的 DNS 解析服务(UDP 53)可被用于放大查询;NTP 服务(UDP 123)的 monlist 命令会返回最近与它通信的主机列表;memcached(UDP 11211)的放大倍数尤其夸张,历来是重点封禁对象;SSDP(UDP 1900)则常见于家用路由器与各类智能设备。这些服务本身没有错,错在暴露位置——攻击者挑选目标只看一点:应答体积除以请求体积的比值越大越好,与服务原本的正当用途无关。 对普通站长来说,能做的是管好自己的服务器,不让它变成反射源:公网机器上的 memcached 绝不监听 0.0.0.0,启动参数绑定 127.0.0.1 并用 -U 0 关闭 UDP;NTP 在配置里加 noquery 限制,关闭 monlist;自建 DNS 只对内网提供递归解析。防火墙层面采用默认拒绝策略,只放行业务必需的 UDP 端口。 至于反射洪流本身,单机无法招架,只能依赖网络入口处理。服务商在运营商层面实施出向过滤,阻止伪造源地址的包离开网络,并对常见放大端口做封禁;高防服务器在此基础上,把反射流量在清洗中心滤掉后再回注业务。 不确定自己的机器有没有对外提供这些服务,执行 ss -ulnp 一条命令就能看清全部 UDP 监听,发现异常尽早处理。