找回密码
立即注册
搜索
发回帖 发新帖

6778

积分

0

好友

852

主题
发表于 昨天 03:26 | 查看: 14| 回复: 0

微软在 2026 年 10 月补丁日中披露了 Windows 内核态驱动提权漏洞 CVE-2026-83834。研究员 z0v3r1n 在 GitHub 上公开了首个 Windows 利用程序,并把它称为自己的“第一枚 Windows 利用程序”。下面按官方模板拆解漏洞标识、影响范围、补丁清单与利用流程,文末附 POC 下载地址。

漏洞标识与风险速览

项目 内容
漏洞编号 CVE-2026-83834
类型 释放后重用(UAF)+ 检查-使用竞态(TOCTOU)
CWE CWE-416 / CWE-367
CVSS 3.1 7.0 HIGH,CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C
微软评级 Important(重要),处置建议标注 "Exploitation More Likely"
攻击前提 本地、低权限、无需用户交互,需赢得竞态窗口(AC:H)
影响结果 提权至 SYSTEM(本地权限提升)
公开状态 截至 KEV 2026.10.30 版本,未被 CISA 列入已知利用目录

风险等级:🔴 高。虽然 CVSS 基线分数只有 7.0,但微软单独标注了“更可能被利用”,再加上公开 POC 已经出现,实际威胁要比分数本身高出一截。

影响实体与补丁清单

受影响组件为 Windows 内核态驱动(Frame Server 媒体流路径,mskssrv.sys)。除了 Windows 10/11 客户端之外,Windows Server 2016/2019/2022/2025 也在影响范围内,服务器环境需要重点排查。

产品 修复版本 KB 编号
Windows 10 1607 / Server 2016 10.0.14393.9612 KB5126868
Windows 10 1809 / Server 2019 10.0.17763.9376 KB5126651
Windows 10 21H2 / 22H2 10.0.19044.7807 / 10.0.19045.7807 KB5126657
Windows 11 23H2 10.0.22631.7652 KB5126653
Windows 11 24H2 / 25H2 / 26H2 10.0.26100.9711 / 10.0.26200.9711 / 10.0.26300.9711 KB5127648
Windows 11 26H1 10.0.28000.3231 KB5127646
Windows Server 2025 10.0.26100.33650 KB5126646

⚠️ 这些补丁都是累积更新,官方标注 RestartRequired: Yes,安装后需要重启才能生效。生产环境请提前评估重启窗口和旧版应用的兼容性。

漏洞原理

漏洞出在 FSRendezvousServer::PublishRx 和 FSRendezvousServer::ConsumeTx 这两个函数里,它们犯的是完全相同的错误模式:先获取服务器互斥锁,确认目标 FSStreamReg 对象仍然挂在链表上,然后释放互斥锁,再去拿这个对象自身的锁。两次加锁之间没有任何引用计数或生命周期保护。

问题就出在这里——由于全程没有持有对 FSStreamReg 的引用,服务器互斥锁释放与对象锁获取之间存在一个极窄的窗口:此刻另一个线程调用 FSRendezvousServer::Close() 释放该对象,睡眠线程随后拿到的是已经被释放的内存,形成释放后重用(UAF)。攻击者通过对这块内存的并发读写获得对内核对象的控制,进而完成提权。

CVE-2026-83834竞态窗口时序与UAF触发流程关系图

利用流程

公开 POC 走的是“竞态 + 内核池喷洒 + 令牌窃取”的经典路线,完整链条如下:

Windows内核提权链:从摄像头设备枚举到Token窃取的完整六步利用流程图

第一步,枚举目标设备。 通过 CM_Get_Device_Interface_ListW 在 KSCATEGORY_VIDEO_CAMERA / KSCATEGORY_VIDEO 类别下枚举摄像头设备路径,再按接口 GUID 3C0D501A-140B-11D1-B40F-00A0C9223196 定位 mskssrv 设备对象。

第二步,泄露内核基址。 POC 内置的 prefetch_leak 汇编例程利用 Intel 平台的缓存预取时序差异(推测执行侧信道)读取 ntoskrnl 基址,为后续内核对象定位做准备。

第三步,内核池喷洒。 持续分配与 FSStreamReg / FS_FRAME_ENTRY 尺寸一致的对象占满内核池,保证 UAF 触发后被释放的内存立刻被攻击者可控数据覆盖。

第四步,并发竞态。 一个线程在循环中下发 IOCTL_PUBLISH_RX(0x2F040C)发布接收流,另一个线程并发 CloseHandle 关闭同一设备句柄以触发 Close() 释放对象。POC 通过线程亲和性把发布线程与 3 个自旋线程固定在同一颗 CPU 上,人为压缩窗口时间,关闭与停止之间的等待窗口大约 40ms。

第五步,命中并覆盖。 反复重试竞态,直到覆盖成功。校验方式非常直接:用 PROCESS_QUERY_INFORMATION | PROCESS_VM_READ 尝试打开 winlogon.exe,能打开就说明 winlogon 的进程对象/令牌已经被成功覆盖。

第六步,令牌窃取提权。 以被篡改的 winlogon 进程句柄作为父进程(PROC_THREAD_ATTRIBUTE_PARENT_PROCESS)创建 cmd.exe,子进程直接继承 SYSTEM 令牌,最终拿到系统最高权限。

POC 下载

  • 项目地址:https://github.com/wkpwn/CVE-2026-83834/
  • 预编译程序:x64/Release/mskssrv-uaf.exe(仓库内已提供,配套 PDB 符号)
  • 源码目录:mskssrv-uaf/,包含 race.h(竞态调度)、spray.h(池喷洒)、prefetch_leak.h(内核基址泄露)、mskssrv.h(IOCTL 与结构体定义)
  • 原始披露:X 平台 @z0v3r1n 推文(2026-10-14),漏洞由其发现并在仓库 README 中致谢

使用条件:需要 x64 Windows,需要以管理员权限运行(利用 SeDebugPrivilege 打开 winlogon 句柄),且系统必须存在摄像头设备接口。

📌 该 POC 属于可以直接完成 SYSTEM 提权的可运行利用程序,仅限在获得书面授权的隔离测试环境中使用。未经授权在生产网或他人设备上运行,可能构成违法入侵行为。下载前请自行完成风险评估与授权确认。

处置方案

首选方案——安装补丁。 按上表 KB 编号分批推送 10 月累积更新,确认客户端与服务器都升级到修复版本,重启后通过 winver 或 Get-ComputerInfo 核对 build 号。

补丁前的临时缓解:

  • 通过应用控制策略(WDAC / AppLocker)限制非受信进程打开 mskssrv 设备接口与下发 0x2F040C / 0x2F0410 IOCTL;
  • 在不需要视频采集的终端上停用 Windows 相机帧服务(WindowsCameraFrameServer / FrameServer),切断驱动暴露面;
  • 启用内核攻击缓解基线:强制 ASLR、启用 Hypervisor-enforced PPL、开启凭据保护相关策略,压缩 UAF 的可利用价值。

检测建议:

  • EDR 侧关注 mskssrv.sys 设备句柄的短时间高频创建与关闭,以及同一进程内并发 IOCTL 发布/消费的异常模式;
  • 监控 winlogon.exe 出现非预期子进程(尤其 cmd.exe、powershell.exe),这是令牌窃取落地后的直接特征;
  • 对已经打补丁但仍存在异常行为的终端,可以抓取内核对象分配行为确认是否已被利用。

结语

CVE-2026-83834 是一个典型的“低分高危”样本:7.0 的基础分掩盖了 SYSTEM 提权的后果,而 AC:H 的竞态前提也只是提高了利用门槛,并未阻断利用。公开 POC 的出现把利用链路的最后一段抹平了,防守方的时间窗口只剩下打补丁这一件事。建议本周内完成客户端与服务器双线的补丁推送,并对已暴露在外网的服务器终端做一次 winlogon 异常子进程的回溯排查。

版权声明:本文由华盟网原创发布,保留所有权利。配图由华盟网文生图工具生成,版权归华盟网所有。




上一篇:DHS 泄露 4.1 万雇员数据:Okta 单点被破,社工攻击风险蔓延
下一篇:Shannon开源AI渗透测试:源码挖洞PoC实证,可接任意大模型
您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-11-5 01:22 , Processed in 0.065423 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表