解析Opera Neon浏览器的提示注入安全漏洞

本文详细披露了在Opera Neon浏览器中发现的一处间接提示注入漏洞。攻击者可通过网页中隐藏的HTML元素注入恶意指令,诱使AI助手跨域泄露用户的敏感信息,如邮箱地址。文章剖析了攻击原理、披露时间线,并探讨了其对AI浏览器安全的深远影响。

提示注入漏洞在Opera Neon | Brave

这是关于代理式浏览器安全与隐私挑战系列文章的第三篇。此项漏洞研究由Artem Chaikin(高级移动安全工程师)进行,并由Artem和Shivan Kaul Sahib(隐私与安全副总裁)共同撰写。

继我们上周关于AI浏览器额外漏洞的博客文章之后,我们现在分享在Opera Neon中发现的一处提示注入攻击的详细信息。我们已负责任地向Opera披露了此漏洞,但应Opera的要求暂未公开分享,以便给他们时间修复漏洞。

正如我们在关于各种浏览器中易受攻击的博客文章中所说,间接提示注入是所有代表用户执行操作的AI浏览器面临的一个严重且尚未解决的安全问题。令人欣慰的是,现在看到其他浏览器也承认了这一点,我们很高兴能帮助推动这方面的进展。一如既往,我们感谢对我们的安全研究的深思熟虑的反馈,以及浏览器厂商为保护所有Web用户安全所做的(并将继续做的)更改。

Opera Neon中通过隐藏HTML元素进行提示注入

Opera Neon的AI助手会处理网页内容以回答用户查询,但在为其大型语言模型(LLM)构建提示时,未能恰当地将页面内容视为不可信内容。攻击者可以将恶意指令嵌入到隐藏的HTML元素和其他非渲染标记中,这些内容对用户不可见,但AI助手却可以完全访问。

在此次攻击中,我们演示了从用户的Opera账户页面提取其电子邮件地址并泄露给第三方。然而,如果用户恰好登录了他们的银行账户,同样的攻击可用于提取其他更敏感的信息,如信用卡详细信息。

攻击演示: [这是一段Vimeo视频。您需要启用JavaScript才能观看。]

攻击原理:

  1. 设置: 攻击者将恶意指令嵌入到网站的HTML中,包括隐藏在视觉渲染之外、透明度为零的元素。在我们的攻击中,隐藏的指令被嵌入到一个样式为“opacity: 0”(即对用户隐藏)的 <span> 元素中。
  2. 触发: 用户导航到攻击者的网页,并要求AI助手总结或分析页面内容。
  3. 注入: 浏览器提取并处理整个HTML结构,包括嵌入在HTML中的隐藏恶意指令。
  4. 利用: 注入的指令指示AI恶意使用其浏览器工具。在我们的攻击中,指令要求AI前往用户的Opera账户页面,提取用户的电子邮件地址,并将其泄露到攻击者的服务器。浏览器欣然执行了这个请求。

披露时间线

Opera Neon仍处于早期访问阶段,尚未对公众开放。我们一直与他们的安全团队协调进行负责任的披露,仅在确认他们的修复有效后才发布此信息。

  • 2025年10月14日: 通过Bugcrowd向Opera报告了“通过隐藏HTML元素进行提示注入”问题。
  • 2025年10月17日: Opera以“不适用”为由关闭了该问题。
  • 2025年10月20日: Opera联系Brave,称漏洞报告被意外驳回,并要求Brave在他们调查期间暂时不要公开披露。我们照办了。
  • 2025年10月21日: Opera联系Brave并确认他们已部署修复程序。我们的后续测试证实该漏洞似乎已被修补。
  • 2025年10月23日: Opera在博客文章中公开发布了我们发现的漏洞的详细信息。

影响与启示

在使用AI浏览器时,仅仅要求总结一个含有隐藏指令的网站,就可能导致跨域信息泄露:攻击者网站 → auth.opera.com → 攻击者网站,正如我们在这次攻击中所展示的那样。这类似于我们之前能够当用户总结Reddit帖子时,从他们的Perplexity账户页面提取Comet用户的电子邮件地址。控制浏览器的AI代理实际上被当作是“你”。它可以读取你已经登录的页面,提取数据,并在不同网站之间执行操作,即使这些网站本应彼此隔离。

当你考虑到在浏览器中所做的一切时,这是非常可怕的。银行、工作和电子邮件是显而易见的例子,但请想想你在网上做的其他所有事情:你阅读的文章和访问的网站。浏览器能看到你在网上做的一切,并在很多方面准确地代表了你这个人。这从未如此清晰地表明,网络上的隐私至关重要。这正是为什么Brave是一款用户优先、默认注重隐私的浏览器,我们专注于阻止第三方跟踪器和广告,并拥有全套隐私功能。

如前所述,我们正与我们的研究和安全团队一起认真研究如何将代理模式浏览安全地带给我们的一亿用户,我们将在未来几周内公布更多信息。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计