WPS Office从路径穿越到远程代码执行漏洞(CVE-2024-7262)分析与复现
2024-10-8 17:47:18 Author: www.4hou.com(查看原文) 阅读量:18 收藏

盛邦安全 技术 刚刚发布

1488

收藏

导语:WPS Office从路径穿越到远程代码执行漏洞(CVE-2024-7262)分析与复现

漏洞概述

WPS Office程序promecefpluginhost.exe存在不当路径验证问题,允许攻击者在Windows上加载任意Windows库文件。该漏洞已被APT-C-60攻击者利用,当用户打开MHTML格式的文档时,只需单击一个恶意制作的超链接,即可执行攻击者指定的恶意库文件,实现远程代码执行。

影响范围

WPS Office版本12.2.0.13110-12.2.0.16412

复现环境

操作系统:Win10 10.0.18363.592
WPS Office版本:WPS Office 12.2.0.13110

分析过程

WPS程序安装后注册了一个名为 ksoqing 的自定义URL协议,注册表路径为:计算机\HKEY_CLASSES_ROOT\ksoqing\shell\open\command,其内容为"C:\Users\【用户名】\AppData\Local\Kingsoft\WPS Office\12.2.0.13110\office6\wps.exe" /qingbangong "%1"。即访问以ksoqing 开头的URL协议时,将启动wps.exe程序,并传递/qingbangong参数,%1则被替换为以ksoqing 开头的协议链接,一并作为wps启动的参数。

1.png

此时wps.exe程序解析参数/qingbangong,并将ksoqing链接内容一并发送到 C:\Users\【用户名】\AppData\Local\Kingsoft\WPS Office\12.2.0.13110\office6\wpscloudsvr.exe

2.png

wpscloudsvr.exe中的qingbangong.dll解析自定义URL链接内容。当type参数为ksolaunch时,将启动launchname参数指定的程序,参数使用base64编码。

3.png

launchname参数指定的程序启动时,wpscloudsvr.exe会将URL链接中的cmd参数使用base64解码,然后传递给它。

4.png

如果launchname参数指定的是promecefpluginhost.exe,该程序启动后,将加载ksojscore.dll,然后解析命令行中的-JSCefServicePath。

5.png

这个参数可以指定一个文件名,这个文件会被kso_qt::QLibrary::load函数加载到内存执行。默认情况下,如果只是指定一个文件名,会按照DLL搜索顺序搜索和加载这个文件,比如加载同EXE目录下指定的DLL文件。但是这个参数未做任何过滤,可以指定“..\”包含目录的路径,存在路径穿越漏洞,可以加载任意指定的DLL文件,最终实现任意代码执行。

6.png

使用路径穿越的漏洞可以加载指定DLL文件,但这还不够。APT-C-60攻击者使用MHTML格式的xls电子表格文件,利用其特性,实现下载远程DLL文件的目的。WPS支持MHTML格式的文档,这种文档可以包含 HTML、CSS 和 JavaScript 等文件,方便在浏览器中显示文档。

文档中可以使用img标签,指定远程DLL文件。

7.png

当文档被打开时,wps使用_XUrlDownloadToCacheFile函数下载文件到temp目录下的wps\INetCache目录中。

8.png

下载后的文件名,使用的是下载链接(UNICODE编码)的MD5值。

9.png

最终配合上述路径穿越漏洞,在-JSCefServicePath参数中指定下载的文件名,实现远程代码执行。这里还有一个小技巧,因为下载后的文件名并没有.dll后缀,而在加载的时候如果没有指定.dll后缀,会自动补上该后缀再加载。为了避免在加载的时候找不到指定文件导致失败,在-JSCefServicePath参数中指定下载的文件名时,需要在文件名最后额外加个“.”。

10.png

漏洞复现

新建xls格式的文档,添加超链接,超链接可任意,并另存为MHTML格式的文档。

11.png

根据远程DLL的下载链接,使用poc.py计算下载后的文件名,并最终生成ksoqing协议链接。

12.png

将ksoqing链接替换导出的MHTML格式文档中的超链接。

15.png

再根据远程DLL的下载链接,添加img标签,实现远程下载DLL文件。

13.png

开启远程DLL下载服务,然后打开MHTML文档,点击超链接,触发漏洞。

14.png

参考链接

ddpoc链接:

https://www.ddpoc.com/DVB-2024-8279.html

https://www.welivesecurity.com/en/eset-research/analysis-of-two-arbitrary-code-execution-vulnerabilities-affecting-wps-office/

https://nvd.nist.gov/vuln/detail/CVE-2024-7262

https://avd.aliyun.com/detail?id=AVD-2024-7262

原文链接

如若转载,请注明原文地址

  • 分享至

取消 嘶吼

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟


文章来源: https://www.4hou.com/posts/5MWx
如有侵权请联系:admin#unsafe.sh