WPS Office从路径穿越到远程代码执行漏洞(CVE-2024-7262)分析与复现
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_ROOTksoqingshellopencommand,其内容为 "C:Users【用户名】AppDataLocalKingsoftWPS Office12.2.0.13110office6wps.exe" /qingbangong "%1"。即访问以 ksoqing 开头的 URL 协议时,将启动 wps.exe 程序,并传递 /qingbangong 参数,%1 则被替换为以 ksoqing 开头的协议链接,一并作为 wps 启动的参数。
此时 wps.exe 程序解析参数 /qingbangong,并将 ksoqing 链接内容一并发送到 C:Users【用户名】AppDataLocalKingsoftWPS Office12.2.0.13110office6wpscloudsvr.exe
wpscloudsvr.exe 中的 qingbangong.dll 解析自定义 URL 链接内容。当 type 参数为 ksolaunch 时,将启动 launchname 参数指定的程序,参数使用 base64 编码。
launchname 参数指定的程序启动时,wpscloudsvr.exe 会将 URL 链接中的 cmd 参数使用 base64 解码,然后传递给它。
如果 launchname 参数指定的是 promecefpluginhost.exe,该程序启动后,将加载 ksojscore.dll,然后解析命令行中的 -JSCefServicePath。
这个参数可以指定一个文件名,这个文件会被 kso_qt::QLibrary::load 函数加载到内存执行。默认情况下,如果只是指定一个文件名,会按照 DLL 搜索顺序搜索和加载这个文件,比如加载同 EXE 目录下指定的 DLL 文件。但是这个参数未做任何过滤,可以指定 ".." 包含目录的路径,存在路径穿越漏洞,可以加载任意指定的 DLL 文件,最终实现任意代码执行。
使用路径穿越的漏洞可以加载指定 DLL 文件,但这还不够。APT-C-60 攻击者使用 MHTML 格式的 xls 电子表格文件,利用其特性,实现下载远程 DLL 文件的目的。WPS 支持 MHTML 格式的文档,这种文档可以包含 HTML、CSS 和 JavaScript 等文件,方便在浏览器中显示文档。
文档中可以使用 img 标签,指定远程 DLL 文件。
当文档被打开时,wps 使用 _XUrlDownloadToCacheFile 函数下载文件到 temp 目录下的 wpsINetCache 目录中。
下载后的文件名,使用的是下载链接(UNICODE 编码)的 MD5 值。
最终配合上述路径穿越漏洞,在 -JSCefServicePath 参数中指定下载的文件名,实现远程代码执行。这里还有一个小技巧,因为下载后的文件名并没有 .dll 后缀,而在加载的时候如果没有指定 .dll 后缀,会自动补上该后缀再加载。为了避免在加载的时候找不到指定文件导致失败,在 -JSCefServicePath 参数中指定下载的文件名时,需要在文件名最后额外加个 "."。
漏洞复现
新建 xls 格式的文档,添加超链接,超链接可任意,并另存为 MHTML 格式的文档。
根据远程 DLL 的下载链接,使用 poc.py 计算下载后的文件名,并最终生成 ksoqing 协议链接。
将 ksoqing 链接替换导出的 MHTML 格式文档中的超链接。
再根据远程 DLL 的下载链接,添加 img 标签,实现远程下载 DLL 文件。
开启远程 DLL 下载服务,然后打开 MHTML 文档,点击超链接,触发漏洞。
参考链接
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
原文链接
-
- “禁区”变“景区”?人满为患的哀牢山发布安全提示
-
2024-10-14 21:19:09
-
- 以色列已作出关键决定,美国知道多少细节?
-
2024-10-14 21:16:53
-
- 重阳节的小知识:为啥又叫菊花节?重阳糕长啥样?
-
2024-10-14 21:14:37
-
- 攻克“全线之最” !广州两条地铁新线完成多个节点目标
-
2024-10-14 21:12:22
-
- 明天将迎银证转账首个高峰!转账最早提到7点半,储蓄存款真要大搬家了?
-
2024-10-14 21:10:07
-
- 继续狙击英伟达, AMD子弹已上膛
-
2024-10-14 21:07:51
-
- 以军和联合国部队干起来了
-
2024-10-14 21:05:35
-
- 没见过世面的老美,居然让字节跳动版“小红书”海外爆火了
-
2024-10-14 21:03:19
-
- 《明星见面日》HaoGirls陈盈燕&郑丞丞:拼人设?靠实力?赌运气
-
2024-10-06 22:47:45
-
- 实不相瞒:心理不健康的人,会有这5种表现,你有吗?
-
2024-10-03 07:42:06
-
- 接吻时伸舌头,掌握这些技巧,让你热恋不断
-
2024-10-03 07:39:51
-
- 从《人民的名义》中“大风厂”事件看:朝中有人好做官
-
2024-10-03 07:37:35
-
- 八款自制美味家庭小吃,做法简单还嘎嘎好吃
-
2024-10-03 07:35:19
-
- lifeline这首歌乐曲,给了无数人求生的希望,女孩最后的5分13秒
-
2024-10-03 07:33:04
-
- 咸阳名校:西工大启迪中学
-
2024-10-03 07:30:48
-
- 上海最美女主持,和老公结婚多年恩爱,一家五口很幸福,人生赢家
-
2024-10-03 07:28:33
-
- 欧洲中世纪的鸟人医生是干什么的?鸟嘴服是怎么样的?
-
2024-10-03 07:26:17
-
- 古墓丽影中的性感女神-劳拉·克劳馥
-
2024-10-03 07:24:01
-
- 核心宽基ETF持续放量“吸金”,全市场千亿元量级规模ETF已达5只
-
2024-09-28 16:11:10
-
- 新世界发展郑志刚:主动辞任,将更多投入社会公职
-
2024-09-28 16:08:53