文章总结: CVE-2026-41096是WindowsDNS客户端严重RCE漏洞(CVSS9.8),但实际攻击面有限。通过DLL代理分析发现,默认Windows11系统无程序调用DnsQueryRawAPI,仅WSL服务会触发。漏洞利用需目标启用WSL且攻击者控制DNS服务器,可用于权限提升或远程代码执行。 综合评分: 75 文章分类: 漏洞分析,威胁情报,恶意软件,渗透测试
CVE-2026-41096 Windows DNS 客户端漏洞在真实环境中的攻击面
Ots安全
2026年6月6日 18:03 广东
在小说阅读器读本章
去阅读
威胁简报
恶意软件
漏洞攻击
一、引言
CVE-2026-41096是一个影响Microsoft Windows DNS 客户端的严重远程代码执行 (RCE)漏洞。该漏洞于 2026 年 5 月的“补丁星期二”活动中披露,其CVSSv3 评分为 9.8/10 ,表明其严重性极高,因为该漏洞可能在网络复杂度较低的情况下被未经身份验证的攻击者利用。
最近对dnsapi.dll进行的逆向工程和二进制差异比较证实,CVE-2026-41096专门针对DnsQueryRaw API,通过其内部函数DnsRawTruncateMessageForUdp()进行攻击。与标准的 Windows DNS 漏洞相比,这极大地改变了实际的攻击面。(感谢)@m0n1x90)
由于该漏洞被限制在DnsQueryRaw之后,而不是经典的DnsQuery或标准 WinSock 查找 API 之后,因此最初报道的“零点击,每台 Windows 机器都易受攻击”的说法是不准确的。
DnsQueryRaw是一个相对专门的 API,在较新的 Windows 版本(Windows 11 和 Windows Server 2022+)中引入,允许开发人员直接构建原始 DNS 查询并处理原始网络格式响应。
二、CVE-2026-41096攻击面搜索流程
首先,我创建了一个dnsapi.dll的 DLL 代理,用于记录程序每次调用DnsQueryRaw API 的情况。
Github:TwoSevenOneT/CVE-2026-41096-Attack-Surface
我使用SharpDllProxy为DNSAPI.DLL创建了一个 DLL 代理。
然后我通过以下方式将其放入 Windows 的 System32 文件夹中:
我使用以下命令将 Windows 启动到高级启动模式:
shutdown /r /o /f /t 0
然后我打开 CMD 的高级启动选项,并将 DLL_Proxy 文件复制到原有的dnsapi.dll文件中替换它(你应该将原有的 dnsapi.dll 文件复制到其他地方作为备份)。
然后我重启进入 Windows 系统,看看是否有任何服务或程序调用DNSQueryRaw API。
只有当随 Windows 启动的程序或服务,或者用户登录时使用此 API 时,我们才有机会在真实环境中实现远程代码执行。
在真正的渗透测试中,你无法让目标为你调用此 API,因此你必须通过攻击自动启动的程序来最大限度地提高成功率。
当 Windows 启动时,如果 DLL 代理程序被放置在 System32 文件夹中,Windows 将会弹出类似如下的警告信息:
原因是某些受保护的轻量级进程 (PPL)使用此 DLL,但由于代理 DLL 没有经过数字签名,因此无法加载。
github:TwoSevenOneT/CreateProcessAsPPL
我检查了c:\tmp\ 目录,但没有找到rlog.txt 文件(代理 DLL 会将所有进程名称和 PID 记录到 c:\tmp\rlog.txt 文件中)。现在我需要验证我的 DLL 代理是否真的被使用了。
Check whether the proxied dnsapi.dll was loaded into the process with Process Explorer.
Check whether the proxied dnsapi.dll was loaded into the process using DebugView.
因此,在默认的 Windows 11 专业版中,没有任何程序会调用DNSQueryRaw函数。
然而,在使用适用于 Linux 的 Windows 子系统 (WSL)时,特别是使用以下命令时:
wsl wgetexample.com
我观察到rlog.txt 文件被创建,其内容如下:
wsl trigger dnsqueryraw
因此,我得出结论,攻击面是 wslservice(NT AUTHORITY\SYSTEM)。
场景 1:权限提升
如果机器上启用了WSL ,普通用户可以运行它;我们可以将 DNS 服务器指向我们的服务器,以从普通用户触发漏洞利用,成功后我们将获得NT AUTHORITY\SYSTEM 。
示例:wsl dig @<dns-server-ip> <domain>
场景二:远程代码执行
状况:
- 目标机器正在使用 WSL(每当需要解析域名时,漏洞就会触发)。
- 我们控制了 DNS 服务器(控制本地 DNS 服务器或使用 ARP 欺骗)。
如果满足上述条件,则可触发此 CVE 漏洞,用于远程代码执行 (RCE) 。
我还使用DNSQueryRaw API扫描了 System32 和 Program Files 中的 DLL 和 EXE 导入目录,以查找 PE 文件,但结果并不理想。
以上是我用来查找 CVE-2026-41096(CVSS 评分为 9.8)攻击面的步骤。虽然它的评分很高,但我找不到任何在实践中容易利用的攻击面。
END
公众号内容都来自国外平台-所有文章可通过点击阅读原文到达原文地址或参考地址
排版 编辑 | Ots 小安
采集 翻译 | Ots Ai牛马
公众号 | AnQuan7 (Ots安全)
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:Ots安全 《CVE-2026-41096 Windows DNS 客户端漏洞在真实环境中的攻击面》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论