CVE-2026-33602CVE-2026-33602 是 PowerDNS dnsdist 组件中的一个安全漏洞。该漏洞由于对 UDP 响应数据的处理逻辑存在缺陷,导致恶意后端服务器可以发送特制的 UDP 响应包。攻击者利用查询 ID 与最大配置值相差 1 的特性,触发越界写入错误,进而导致应用程序崩溃或服务不可用,造成拒绝服务。此漏洞无需用户交互即可被利用。
该漏洞的根源在于 PowerDNS dnsdist 在处理来自后端的 DNS 响应时,未对查询 ID (Query ID) 进行严格的边界检查。当 dnsdist 配置了最大查询 ID 值(如 max-outstanding)时,攻击者控制的恶意后端可以发送一个特制的 UDP 数据包。该数据包中的查询 ID 被构造为当前配置的最大 ID 值加 1(off-by-one)。由于程序在验证该 ID 时存在逻辑缺陷,导致将其作为数组索引进行操作时发生越界写入。这种越界写入破坏了堆栈或堆内存的完整性,虽然主要后果是导致服务进程崩溃(拒绝服务),但理论上也可能引发其他未定义行为。攻击向量为网络(AV:N),无需认证(PR:N),且不需要用户交互(UI:N),这使得攻击者只要能向 dnsdist 发送数据包即可尝试利用。