CVE

您所在的位置:网站首页 win10远程代码执行漏洞 CVE

CVE

2023-05-29 12:52| 来源: 网络整理| 查看: 265

微软支持诊断工具(MSDT,MicrosoftSupport Diagnostic Tool)是一种实用程序,用于排除故障并收集诊断数据,供专业人员分析和解决问题。当从调用应用程序(例如Word)使用 URL协议调用MSDT时,存在远程代码执行漏洞。成功利用此漏洞的攻击者可以使用调用应用程序的权限运行任意代码。Part1 漏洞状态漏洞细节漏洞POC漏洞EXP在野利用有有有有Part2 漏洞描述‍漏洞名称

Microsoft Windows诊断工具 (MSDT) 远程代码执行漏洞

CVE编号CVE-2022-30190漏洞类型任意代码执行漏洞等级7.8高危(HIGH)公开状态公开漏洞描述

使用URL协议调用MSDT时,可通过构造特殊网页,做到远程代码执行。

时间线

2022-5-30 Microsoft发布

2022-5-31 JohnHammond 公开PoC

2022-6-14  发布更新补丁

受影响版本

未安装相关补丁,或使用缓解措施的:

Win7至Win11

Windows Server2008至2022

分析环境:

kali

Win10 19041

Office 2016

Part3 漏洞复现开启web服务并创建.doc文档。

图片

将生成的文档拷贝至靶机打开,靶机出现windows诊断工具,并运行计算器

图片

查看进程树,WINWORD启动msdt.exe,命令行为"msdt.exe ms-msdt:/id PCWDiagnostic /skip force /param "IT_RebrowseForFile=? IT_LaunchMethod=ContextMenu IT_BrowseForFile=$("要执行的程序")。

msdt.exe是windows支持诊断工具,作用为自动诊断并修正各种windows功能的常见问题。

图片

图片

msdt使用WTP框架,会根据不同参数,使用sdiagnhost提供的接口,通过powershell作出处理。

图片

最终计算器被sdiagnhost.exe启动。

图片

在文档内的关系文件document.xml.rels中,可见指向外部链接的对象。

图片

查看index.html,利用ms-msdt协议,执行程序,并包含一段长度为4098的注释。

图片

分析sdiagnhost,在CScriptedDiagNativeHost::RunScript函数内,出现要使用的powershell脚本路径。

图片

powershell脚本的运行时环境,由Microsoft.Windows.Diagnosis.SDHost.dll提供,通过调试,RunScript()被调用了两次,分别为使用TS_ProgramCompatibilityWizard.ps1和RS_ProgramCompatibilityWizard.ps1脚本。

图片

在执行RS_ProgramCompatibilityWizard.ps1脚本时,包含传入的参数。

图片

在TS_ProgramCompatibilityWizard.ps1内,会获取传入的IT_BrowseForFile,并通过Test-Selection()检测。

图片

在Test-Selection()内,会对参数进行检测,使用test-path检测路径是否存在,并且参数后缀为".exe"或".msi"。

但只要传入路径在根目录外时(如/../../calc.exe),test-path便会返回true。

图片

检测通过后,会使用Update-DiagRootCause,再次调用RunScript()执行RS_ProgramCompatibilityWizard.ps1脚本,运行参数内目标的程序。

图片

也可将文件保存为rft格式,在使用文件预览的情况下,无需打开文件即可触发漏洞。

图片

Part4 修复建议

按照微软给出的缓解措施进行操作,禁用msdt url协议。

https://msrc.microsoft.com/blog/2022/05/guidance-for-cve-2022-30190-microsoft-support-diagnostic-tool-vulnerability/

或根据系统安装链接内相应补丁。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3