近日,网络安全公司Cisco Talos披露了腾讯微信(WeChat)应用程序中存在的一个高危安全漏洞。该漏洞允许攻击者通过微信发送的恶意链接执行远程代码,从而控制用户的设备。
漏洞详情:
- 微信存在一个类型混淆漏洞(CVE-2023-3420),该漏洞可能允许攻击者执行远程代码。
- 尽管该问题已于2023年6月在V8引擎中披露并修复,但微信的WebView组件并未更新,直到2024年4月Cisco Talos研究人员向腾讯报告时,该组件仍存在漏洞。
- Cisco Talos研究人员确认,截至2024年6月14日前在谷歌Play商店上安卓设备可用的最新版本8.0.42的微信,都受到了此问题的影响。但由于动态WebView加载机制,Talos无法确认所有版本是否都已修复。
技术分析:
- 微信使用自定义WebView组件而非依赖内置的Android WebView。该组件是腾讯维护的XWalk的定制版本,包含一个嵌入式Chromium浏览器,其V8版本为8.6.365.13,发布于2020年10月12日,支持HTML渲染和JavaScript执行。
- 微信在用户首次登录应用后动态下载此组件,允许腾讯部署动态更新。下载后,XWalk WebView位于路径/data/data/com.tencent.mm/app_xwalk_4433/apk/base.apk。库/data/data/com.tencent.mm/app_xwalk_4433/extracted_xwalkcore/libxwebcore.so包含一个带有过时V8版本的嵌入式浏览器环境。
- GitHub Security Labs 在2023年6月对V8版本11.4.183.19的此漏洞(CVE-2023-3420)进行了详细分析。
漏洞触发方式:
- 攻击者通过向受害者发送包含恶意链接的微信消息来触发漏洞。点击微信中的链接会导致在XWalk中加载带有嵌入式JavaScript的网页,从而触发漏洞。
漏洞影响:
- 该漏洞允许攻击者获得对受害者设备的控制权,并执行任意代码。
- CVSSv3评分为8.8,表明该漏洞具有高严重性。
受影响用户如何识别:
- 根据Talos的确认,微信版本8.0.42受到影响。使用受影响自定义浏览器(MMWEBID/2247)的微信,请求的用户代理中包含自定义浏览器的版本信息。
用户应对措施:
- 建议用户更新至微信的最新版本,并确认XWalk也已更新(在测试中,应用在发布更新后不会立即自动更新到最新版本)。
- 另外,如果用户使用的是受影响的版本,请不要点击微信中发送的任何链接。如果必须阅读链接,请从微信聊天中复制链接,并在应用程序外部的更新网络浏览器中打开。建议微信用户对微信中发送的URL链接保持警惕。在点击URL链接之前,验证它是否来自可信来源。
Talos有关漏洞报告时间线:
- 2024年4月30日:Talos在研究进行中向供应商披露。
- 2024年5月31日:腾讯确认收到报告,并确认他们了解该漏洞并正在修补。
- 2024年6月14日:在Play商店发布了微信8.0.48的新版本。然而,测试设备上的应用程序并未自动更新。
- 2024年6月27日:Talos通知供应商打算发布此报告。
参考链接:
https://blog.talosintelligence.com/vulnerability-in-tencent-wechat-custom-browser-could-lead-to-remote-code-execution/
声明:本文来自白泽安全实验室,稿件和图片版权均归原作者所有。所涉观点不代表东方安全立场,转载目的在于传递更多信息。如有侵权,请联系rhliu@skdlabs.com,我们将及时按原作者或权利人的意愿予以更正。