0x00 前言
Google Chrome是一款由Google公司开发的网页浏览器。该浏览器基于开源内核(如WebKit)编写,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。
WebKit是一种开放源代码的浏览器内核,由开源Web浏览器和开发者社区开发。一种浏览器引擎,可以读取HTML、CSS和内嵌的JavaScript脚本,并负责将其转换成一种易于的图形界面,可以响应用户输入。
由于Chromium浏览器的兴起,Webkit的使用也扩大到Android系统,它也成为越来越多浏览器和应用程序的基础。
0x01 漏洞描述
WebKit默认使用的xsl库(Libxslt),调用document()加载的文档里面包含对外部实体的引用。
攻击者可以创建并托管包含XSL样式表的SVG图像和包含外部实体引用的文档。
当受害者访问SVG图像链接时,浏览器会解析XSL样式表,调用document() 加载包含外部实体引用的文档,读取受害者机器的任意文件。
0x02 CVE编号
CVE-2023-4357
0x03 影响版本
Google Chrome < 116.0.5845.96
依赖Chromium(WebKit)内核的组件,如vscode、微信、Safari等。
0x04 漏洞复现
Chromium版本:Chromium 114 x64
c.html:
c2.svg:
c3.xml:
访问c.html读取本地文件:
0x05 数据外带(来源于网络)
0x05 其他环境
微信:
Mac Safari浏览器:
微信:
0x06 参考链接
https://bugs.chromium.org/p/chromium/issues/detail?id=1458911