Debian 13.7稳定版更新为dnsmasq修复两个内存安全问题:CVE-2026-12725缓冲区溢出和CVE-2026-12969越界读取。dnsmasq常用于轻量DNS缓存、DHCP服务和虚拟化网络,因此问题不只影响把它直接配置成公网DNS服务器的场景。
Debian安全跟踪器已将trixie中的2.91-1+deb13u2标为CVE-2026-12725已修复版本。管理员应以当前镜像的候选包和安全跟踪状态为准,不要只看服务仍能解析域名就判断无需更新。

两个漏洞的触发路径并不相同
CVE-2026-12725位于DNSSEC回复日志处理路径,需要同时启用DNSSEC验证与查询日志,并遇到包含不支持算法或摘要类型的DS或DNSKEY回复。恶意DNS响应可能让dnsmasq写出内部日志缓冲区边界并导致进程崩溃。
CVE-2026-12969则与精心构造的NXDOMAIN响应有关,能够造成堆上的越界读取。两项问题都由DNS响应触发,但配置前提和内存错误类型不同。
不是公网监听才有远程输入风险
dnsmasq即使只监听本机或内网,也会代表客户端向上游DNS服务器查询。攻击者只要能够控制被查询的DNS区域或影响返回内容,就可能把特制响应送入解析路径。
“没有把53端口开放到公网”不能单独排除风险。需要同时确认服务器是否运行dnsmasq、是否启用DNSSEC验证与查询日志,以及业务是否会查询不受信任的域名。
虚拟化宿主机也可能间接使用dnsmasq
libvirt默认网络、开发环境和部分容器网络会调用dnsmasq为内部网络提供DNS或DHCP。管理员可以使用pgrep -a dnsmasq查看运行实例,再结合进程参数识别它属于系统服务还是虚拟化网络。
只检查systemctl status dnsmasq可能漏掉由其他服务拉起的独立进程。资产盘点应覆盖所有dnsmasq进程,而不是只看同名systemd单元。
升级时要核对实际安装的二进制包
先执行apt update,再使用apt policy dnsmasq dnsmasq-base查看已安装版本与候选版本。Debian中的完整服务和基础二进制可能拆分在不同包中,只升级一个元包未必能说明核心二进制已经更新。
可按服务器原有的软件包管理策略完成升级,并在维护窗口重启相关dnsmasq实例。不要为了临时规避漏洞而盲目关闭DNSSEC验证,这会削弱对伪造DNS数据的防护。
更新后的验收要覆盖解析和进程版本
升级后可再次查看包版本与pgrep -a dnsmasq输出,确认所有旧进程都已重建。随后测试正常域名、NXDOMAIN结果以及依赖该服务的虚拟机或容器网络,避免只验证单个缓存命中请求。
合格的验收结果是修复版软件包已安装、旧进程已退出,并且DNS与DHCP业务都恢复正常。如果镜像尚未同步新包,应保持监控并切换到可信Debian镜像,而不是安装来源不明的二进制。


