Windows任务计划权限提升漏洞分析(CVE-2025-60710)
字数 3456 2025-11-21 12:26:28

Windows任务计划权限提升漏洞分析(CVE-2025-60710)教学文档

1. 漏洞概述

CVE-2025-60710是微软于2025年11月补丁星期二发布的一个Windows任务计划权限提升漏洞。该漏洞最初表现为任意文件删除漏洞,但通过特定技术手段可升级为任意代码执行,最终实现从普通用户权限提升到SYSTEM权限。

1.1 影响版本

  • Windows 11 25H2 10.0.26200.0(修复前版本)
  • 修复版本:10.0.26200.7171
  • 注意:Windows 10系统不受此漏洞影响

1.2 漏洞位置

漏洞存在于任务计划:\Microsoft\Windows\WindowsAI\Recall\PolicyConfiguration
相关进程:taskhostw.exe(Windows任务计划调度程序)

2. 漏洞原理分析

2.1 核心漏洞机制

当执行PolicyConfiguration任务计划时,taskhostw.exe会搜索路径:
C:\Users\%username%\AppData\Local\CoreAIPlatform.00\UKP\

在该路径下,程序会匹配模式为{????????-????-????-????-????????????}的目录(即GUID格式的目录名),然后以NT AUTHORITY\SYSTEM权限删除这些目录。

关键问题:程序没有正确验证这些"目录"是否是真实的目录,还是符号链接或快捷方式。攻击者可以创建指向其他位置的快捷方式,利用SYSTEM权限删除任意文件或目录。

2.2 触发机制

漏洞通过Windows通知功能(WNF)的多个事件触发:

| 触发ID | WNF State Name | 功能描述 |
|--------|----------------|----------|
| RecallPolicyCheckUpdateTrigger | 7508BCA32C079E41 | 检查Recall Policy配置更新 |
| AADStatusChangeTrigger | 7508BCA32C0F8241 | 检查Azure AD状态改变 |
| DisableAIDataAnalysisTrigger | 7528BCA32C079E41 | 关闭AI数据分析 |
| UserLoginTrigger | 7510BCA338038113 | 监测用户登录 |

通过调用ZwUpdateWnfStateData()函数触发相应WNF事件即可激活漏洞。

3. 关键技术概念

3.1 File Opportunistic Lock(FileOpLock,文件机会锁)

3.1.1 基本概念

FileOpLock是Windows文件系统中的异步通知机制,允许进程对文件/目录"提前占位"并获取访问通知。

3.1.2 工作原理

  1. 进程A对目标文件/目录设置FileOpLock
  2. 当进程B(如SYSTEM进程)尝试访问该资源时,Windows内核会:
    • 暂停进程B的访问操作
    • 立即通知进程A(触发回调函数)
    • 进程A在回调函数中可进行任意操作(如替换目标)
    • 操作完成后,进程B继续执行(此时访问的是已被修改的目标)

3.1.3 在漏洞利用中的作用

FileOpLock为攻击者提供了"时间差攻击"的机会,在SYSTEM进程执行删除操作的瞬间篡改目标。

3.2 MSI回滚机制

3.2.1 MSI安装机制

  • MSI(Windows Installer)文件是Windows软件安装包格式
  • Msiexec.exe程序处理,核心组件为Msi.dll
  • 支持安装失败时的回滚操作,保证系统稳定性

3.2.2 回滚目录:C:\Config.Msi

  • 由Windows Installer服务专门控制的系统级目录
  • 普通用户无法手动创建可被MSI服务使用的该目录
  • 涉及目录的属主和DACL(自主访问控制列表)权限控制

3.2.3 DACL(自主访问控制列表)

  • Windows中控制资源访问权限的核心机制
  • 包含多个ACE(访问控制项)
  • 每个ACE包含:安全标识符(SID,即属主)和访问掩码(具体操作权限)

4. 漏洞利用技术

4.1 利用方式1:任意文件删除

4.1.1 利用步骤

  1. 创建目标目录:在C:\Users\%username%\AppData\Local\CoreAIPlatform.00\UKP\下创建符合GUID模式的目录
  2. 设置FileOpLock:通过FileOpLock::CreateLock()获取目录的Oplock,定义回调函数cb0
  3. 触发漏洞:通过ZwUpdateWnfStateData()触发WNF事件(如RecallPolicyCheckUpdateTrigger)
  4. 拦截并篡改:当SYSTEM进程准备删除目录时,触发回调函数cb0,将目录替换为指向目标位置的快捷方式
  5. 完成删除:SYSTEM进程删除攻击者指定的目标

4.1.2 技术要点

  • 利用FileOpLock的异步通知机制实现精确的时间控制
  • 通过符号链接重定向删除操作

4.2 利用方式2:从任意文件删除到任意代码执行

4.2.1 阶段1:获取合法的C:\Config.Msi目录

  1. 准备一个MSI安装包
  2. 调用MSI安装包,在目标路径创建文件(如dummy.txt
  3. 同时开启线程执行卸载操作,触发MSI服务创建C:\Config.Msi目录和.rbf备份文件
  4. 通过Oplock阻止.rbf文件的删除
  5. 强制删除.rbf文件,留下空的C:\Config.Msi目录

4.2.2 阶段2:删除SYSTEM权限的目录

  • 利用漏洞利用方式1的技术,删除合法的C:\Config.Msi目录

4.2.3 阶段3:实现代码执行

  1. 创建具有宽松访问权限的C:\Config.Msi目录
  2. 调用MSI安装包并传入参数ERROROUT=1,触发MSI回滚机制
  3. 监控回滚脚本(.rbs)的创建过程
  4. 将MSI创建的.rbs文件替换为恶意文件:
    • .rbf文件:实际为恶意DLL文件
    • .rbs文件:包含将DLL释放到系统位置(如C:\Program Files\Common Files\microsoft shared\ink\HID.DLL)的指令
  5. 利用DLL劫持:TabTip.exe程序会加载同目录下的HID.DLL,从而执行恶意代码

4.2.4 技术难点突破

  • 普通用户创建的C:\Config.Msi目录无法被MSI服务使用,必须通过特定流程获取合法的目录
  • 利用MSI回滚机制的文件操作特性实现文件写入系统保护区域
  • 通过DLL劫持技术绕过权限限制实现代码执行

5. 漏洞复现要点

5.1 环境要求

  • Windows 11 25H2 10.0.26200.0(未打补丁版本)
  • 普通用户权限
  • 必要的开发工具和编译环境

5.2 代码资源

参考实现代码已备份至:https://github.com/ybdt/evasion-hub/tree/master/05-Privilege%20Escalation/CVE-2025-60710-main

5.3 复现结果

成功利用后,将弹出具有NT AUTHORITY\SYSTEM权限的命令行窗口。

6. 防护建议

6.1 立即措施

  • 安装微软2025年11月发布的安全更新(KB号对应版本10.0.26200.7171)
  • 验证补丁安装情况:检查系统版本号

6.2 长期防护

  • 定期更新Windows系统安全补丁
  • 限制普通用户对系统关键目录的写入权限
  • 监控异常的计划任务执行行为

7. 技术总结

CVE-2025-60710是一个典型的权限提升漏洞链,展示了如何将简单的文件删除漏洞通过复杂的技术组合升级为完整的代码执行漏洞。该漏洞利用涉及多个Windows核心机制:

  1. 任务计划权限模型缺陷:SYSTEM权限操作缺乏足够的路径验证
  2. 文件系统异步机制:FileOpLock提供精确的时间控制能力
  3. 安装服务特性利用:MSI回滚机制被滥用于文件写入
  4. DLL加载顺序劫持:利用系统程序的DLL搜索机制

这种多层技术组合的漏洞利用方式在现代Windows安全研究中具有典型意义,值得安全研究人员深入分析和学习。

Windows任务计划权限提升漏洞分析(CVE-2025-60710)教学文档 1. 漏洞概述 CVE-2025-60710 是微软于2025年11月补丁星期二发布的一个Windows任务计划权限提升漏洞。该漏洞最初表现为任意文件删除漏洞,但通过特定技术手段可升级为任意代码执行,最终实现从普通用户权限提升到SYSTEM权限。 1.1 影响版本 Windows 11 25H2 10.0.26200.0(修复前版本) 修复版本:10.0.26200.7171 注意 :Windows 10系统不受此漏洞影响 1.2 漏洞位置 漏洞存在于任务计划: \Microsoft\Windows\WindowsAI\Recall\PolicyConfiguration 相关进程: taskhostw.exe (Windows任务计划调度程序) 2. 漏洞原理分析 2.1 核心漏洞机制 当执行 PolicyConfiguration 任务计划时, taskhostw.exe 会搜索路径: C:\Users\%username%\AppData\Local\CoreAIPlatform.00\UKP\ 在该路径下,程序会匹配模式为 {????????-????-????-????-????????????} 的目录(即GUID格式的目录名),然后以 NT AUTHORITY\SYSTEM权限 删除这些目录。 关键问题 :程序没有正确验证这些"目录"是否是真实的目录,还是符号链接或快捷方式。攻击者可以创建指向其他位置的快捷方式,利用SYSTEM权限删除任意文件或目录。 2.2 触发机制 漏洞通过Windows通知功能(WNF)的多个事件触发: | 触发ID | WNF State Name | 功能描述 | |--------|----------------|----------| | RecallPolicyCheckUpdateTrigger | 7508BCA32C079E41 | 检查Recall Policy配置更新 | | AADStatusChangeTrigger | 7508BCA32C0F8241 | 检查Azure AD状态改变 | | DisableAIDataAnalysisTrigger | 7528BCA32C079E41 | 关闭AI数据分析 | | UserLoginTrigger | 7510BCA338038113 | 监测用户登录 | 通过调用 ZwUpdateWnfStateData() 函数触发相应WNF事件即可激活漏洞。 3. 关键技术概念 3.1 File Opportunistic Lock(FileOpLock,文件机会锁) 3.1.1 基本概念 FileOpLock是Windows文件系统中的异步通知机制,允许进程对文件/目录"提前占位"并获取访问通知。 3.1.2 工作原理 进程A对目标文件/目录设置FileOpLock 当进程B(如SYSTEM进程)尝试访问该资源时,Windows内核会: 暂停进程B的访问操作 立即通知进程A(触发回调函数) 进程A在回调函数中可进行任意操作(如替换目标) 操作完成后,进程B继续执行(此时访问的是已被修改的目标) 3.1.3 在漏洞利用中的作用 FileOpLock为攻击者提供了"时间差攻击"的机会,在SYSTEM进程执行删除操作的瞬间篡改目标。 3.2 MSI回滚机制 3.2.1 MSI安装机制 MSI(Windows Installer)文件是Windows软件安装包格式 由 Msiexec.exe 程序处理,核心组件为 Msi.dll 支持安装失败时的回滚操作,保证系统稳定性 3.2.2 回滚目录:C:\Config.Msi 由Windows Installer服务专门控制的系统级目录 普通用户无法手动创建可被MSI服务使用的该目录 涉及目录的属主和DACL(自主访问控制列表)权限控制 3.2.3 DACL(自主访问控制列表) Windows中控制资源访问权限的核心机制 包含多个ACE(访问控制项) 每个ACE包含:安全标识符(SID,即属主)和访问掩码(具体操作权限) 4. 漏洞利用技术 4.1 利用方式1:任意文件删除 4.1.1 利用步骤 创建目标目录 :在 C:\Users\%username%\AppData\Local\CoreAIPlatform.00\UKP\ 下创建符合GUID模式的目录 设置FileOpLock :通过 FileOpLock::CreateLock() 获取目录的Oplock,定义回调函数 cb0 触发漏洞 :通过 ZwUpdateWnfStateData() 触发WNF事件(如RecallPolicyCheckUpdateTrigger) 拦截并篡改 :当SYSTEM进程准备删除目录时,触发回调函数 cb0 ,将目录替换为指向目标位置的快捷方式 完成删除 :SYSTEM进程删除攻击者指定的目标 4.1.2 技术要点 利用FileOpLock的异步通知机制实现精确的时间控制 通过符号链接重定向删除操作 4.2 利用方式2:从任意文件删除到任意代码执行 4.2.1 阶段1:获取合法的C:\Config.Msi目录 准备一个MSI安装包 调用MSI安装包,在目标路径创建文件(如 dummy.txt ) 同时开启线程执行卸载操作,触发MSI服务创建 C:\Config.Msi 目录和 .rbf 备份文件 通过Oplock阻止 .rbf 文件的删除 强制删除 .rbf 文件,留下空的 C:\Config.Msi 目录 4.2.2 阶段2:删除SYSTEM权限的目录 利用漏洞利用方式1的技术,删除合法的 C:\Config.Msi 目录 4.2.3 阶段3:实现代码执行 创建具有宽松访问权限的 C:\Config.Msi 目录 调用MSI安装包并传入参数 ERROROUT=1 ,触发MSI回滚机制 监控回滚脚本( .rbs )的创建过程 将MSI创建的 .rbs 文件替换为恶意文件: .rbf 文件:实际为恶意DLL文件 .rbs 文件:包含将DLL释放到系统位置(如 C:\Program Files\Common Files\microsoft shared\ink\HID.DLL )的指令 利用DLL劫持: TabTip.exe 程序会加载同目录下的 HID.DLL ,从而执行恶意代码 4.2.4 技术难点突破 普通用户创建的 C:\Config.Msi 目录无法被MSI服务使用,必须通过特定流程获取合法的目录 利用MSI回滚机制的文件操作特性实现文件写入系统保护区域 通过DLL劫持技术绕过权限限制实现代码执行 5. 漏洞复现要点 5.1 环境要求 Windows 11 25H2 10.0.26200.0(未打补丁版本) 普通用户权限 必要的开发工具和编译环境 5.2 代码资源 参考实现代码已备份至:https://github.com/ybdt/evasion-hub/tree/master/05-Privilege%20Escalation/CVE-2025-60710-main 5.3 复现结果 成功利用后,将弹出具有 NT AUTHORITY\SYSTEM权限 的命令行窗口。 6. 防护建议 6.1 立即措施 安装微软2025年11月发布的安全更新(KB号对应版本10.0.26200.7171) 验证补丁安装情况:检查系统版本号 6.2 长期防护 定期更新Windows系统安全补丁 限制普通用户对系统关键目录的写入权限 监控异常的计划任务执行行为 7. 技术总结 CVE-2025-60710是一个典型的权限提升漏洞链,展示了如何将简单的文件删除漏洞通过复杂的技术组合升级为完整的代码执行漏洞。该漏洞利用涉及多个Windows核心机制: 任务计划权限模型缺陷 :SYSTEM权限操作缺乏足够的路径验证 文件系统异步机制 :FileOpLock提供精确的时间控制能力 安装服务特性利用 :MSI回滚机制被滥用于文件写入 DLL加载顺序劫持 :利用系统程序的DLL搜索机制 这种多层技术组合的漏洞利用方式在现代Windows安全研究中具有典型意义,值得安全研究人员深入分析和学习。