Opera GX 漏洞允许恶意网站自动安装 Mod 以窃取访问页面数据

Opera GX 漏洞允许恶意网站自动安装 Mod 以窃取访问页面数据

导语:Opera GX 浏览器 GX Mods 的自动安装机制存在缺陷,攻击者可借此实施跨站泄露攻击,在零点击条件下重建用户的敏感页面数据。

研究人员发现 Opera GX(Opera 浏览器面向游戏玩家的版本)存在一个漏洞,允许恶意网站静默安装浏览器扩展(add-on),并利用该扩展从受害者访问的页面中提取特定数据。

在概念验证(PoC)中,攻击者在无需任何点击的情况下,仅凭受害者一次访问就重建出了已登录用户的完整 Gmail 地址。Opera 已修补该漏洞,并表示目前没有证据表明该漏洞曾在野被利用过。该修复已在 Opera GX 版本 130.0.5847.89 中发布,因此使用最新版本的用户已不受影响;用户可以通过 opera://about 确认自己的版本。此次漏洞未分配 CVE 编号。

由于该攻击无需任何点击或确认,因此除了打补丁外没有其他可行的临时缓解方案。Opera 的漏洞赏金团队将该问题评定为 P1(其最高严重等级),并按关键漏洞的最高标准支付了 5,000 美元奖金。

GX Mods 可以让用户通过自定义音效、主题、壁纸以及用于重新调整所访问网站样式的 CSS 来改造 Opera GX 的外观。它们以 .crx 文件形式分发,与浏览器扩展类似,但无法运行 JavaScript,也没有任何权限。漏洞出在它们的安装方式上:Opera 的 mod 流程会自动下载并启用一个 mod,不会弹出任何确认提示。因此,恶意页面可以静默安装 mod,例如通过加载一个指向 .crx 文件的隐藏 iframe。唯一的提示是地址栏下方的一条通知栏,告诉用户已添加了一个 mod,并附带一个"移除"按钮。

这种自动安装行为并非新问题。研究人员 Renwa 早在 2023 年就发现了该问题,并通过将已安装的 mod 升级为完整的扩展来伪造浏览器的地址栏。Opera 在 2023 年 3 月修补了那一具体攻击路径,但保留了底层的自动安装机制,这正是本次新研究所利用的基础。

原文配图

一个静默生效的外观 mod 本身听起来似乎无害。但 mod 的 CSS 会被应用至用户访问的每一个页面,而非仅限于单个页面。普通的 CSS 注入仅限于其落入的页面;而在此场景下,攻击者的样式会触及浏览器打开的每一个站点,研究人员将这种技术称为通用 CSS 注入(universal CSS injection)。CSS 本身无法读取页面内容并将其发送出去,但它可以被诱导逐段泄露某个值。该技巧依赖属性选择器:一条规则可以测试某个元素的属性值(例如隐藏在隐藏字段中的电子邮件)是否以某个给定字母开头,并在匹配时从攻击者的服务器获取背景图片。发起足够多的此类请求,便能逐字符地获知该值。研究人员将这种攻击称为 XS-Leak,即跨站泄露(cross-site leak)的缩写。

为了提取 Gmail 地址,研究人员将攻击目标对准了一个 Google 账户页面 myaccount.google.com/contactemail,该页面的三个 HTML 属性中均包含用户的电子邮件地址。他们在 mod 中打包了约 15 万条 CSS 规则,为地址中每个可能的三字母片段准备一组规则,并让一个重建脚本将匹配结果拼接回来。他们最初尝试使用四字母片段,这需要约 560 万条规则和大约 880 MB 的 CSS;浏览器不堪重负,因此他们缩减为相互重叠但足以重组的三字母片段。整个链式攻击仅需轻轻一推就能完成:受害者访问攻击者的页面,mod 在数秒内自动安装,随后几行 JavaScript 将浏览器重定向到 Google 账户页面;mod 的 CSS 已经在那里加载完成,因此会在页面渲染过程中触发请求并泄露地址,整个过程发生在受害者来得及点击通知栏中的"移除"按钮之前。

Gmail 地址只是概念验证;同样的方法可以提取页面标记中暴露的其他值,例如用户名。研究人员还记录了同一自动安装路径的第二种更粗暴的用途:在隐私(Incognito)模式下加载一个 .crx 文件会导致浏览器崩溃,并转储所有打开的标签页。这一问题同样影响普通 Opera,而不仅仅是 Opera GX,因为任何 .crx 都会触发扩展安装流程,无论其内容如何。Opera 的安全公告仅涉及数据窃取修复,并未提及崩溃问题。

这份报告险些未得到应有的重视。Opera 在 Bugcrowd 上运营其漏洞赏金项目,而分类分析人员难以理解该漏洞的原理,最初将其评定为中等的 P3 级别。研究人员随后以一种非同寻常的直白方式进行了说明:当一位分析人员正在复现攻击时,他们捕获了该分析人员自己的三元组,重建出了该分析人员的 Gmail 地址,并将其粘贴到报告中。Opera 团队随后将严重等级提升至 P1,并按关键等级最高标准支付了 5,000 美元。

Opera 自身的说法则更为审慎。在其安全公告中,该公司表示"相当确信"(quite confident)该漏洞从未在野被利用过,并将该攻击描述为实施起来很复杂:受害者必须先访问恶意站点、安装上新的 mod,并在移除通知出现后忽略它足够长的时间以让重定向生效。


来源信息

来源:The Hacker News

原文链接:https://thehackernews.com/2026/07/opera-gx-flaw-let-malicious-sites-auto.html

作者:info@thehackernews.com (The Hacker News)