CVE-2026-33489CoreDNS在1.14.3之前的版本中存在安全漏洞。其transfer插件在选择ACL规则时使用了字典序比较而非最长后缀匹配,导致在父区域和子区域并存时,错误的ACL规则被应用。未经授权的远程攻击者可利用此漏洞绕过限制,对特定子区域执行区域传输操作(AXFR/IXFR),进而获取敏感的域名解析信息。
该漏洞源于CoreDNS `transfer`插件中`longestMatch()`函数的实现缺陷。该函数旨在为传入的DNS区域传输请求选择最具体的访问控制列表(ACL)规则。然而,代码错误地使用了字典序字符串比较(即简单的字符串大于/小于比较),而非DNS解析中标准的“最长后缀匹配”算法。具体而言,当服务器同时配置了父区域(如`example.org`)和子区域(如`sub.example.org`)时,如果父区域的ACL配置为允许传输,而子区域配置为拒绝传输,由于`example.org`在字典序上可能大于`sub.example.org`,系统可能会错误地选中父区域的宽松规则来处理针对子区域的请求。这导致攻击者无需任何身份认证,即可通过网络向服务器发送AXFR(全量传输)或IXFR(增量传输)请求,从而非法获取受保护子区域的完整解析记录,造成敏感信息泄露。