周三下午三点,你打开Chrome检查Gmail,顺手点开同事发来的Google文档链接。文档一切正常,评论里还挂着下周会议的讨论。但就在你看完文档的瞬间,你的收件箱里自动生成了三封已发送邮件,日历上多出一场陌生人的会议邀请。而这一切,不需要你点击任何“允许”按钮——发动攻击的,只是一段六行JavaScript,藏在你安装的某个待办事项扩展里。
这不是虚构的渗透测试。2026年7月7日,安全研究机构Manifold在最新版Claude for Chrome扩展(v1.0.80)中复现了这种攻击。两个月前,研究员就向Anthropic报告了两个漏洞,但至今未得到修补。即便扩展已经历了八次版本迭代,那六行致命的代码依旧原封不动地躺在content script里。
![]()
第一个漏洞藏在Claude的内容脚本中。脚本原本会监听某个引导按钮的点击,一旦有人点击,就把一套预置提示词转发给Claude的侧边栏执行。问题出在事件处理函数:它没有检查点击是否真的由用户触发——也就是没有验证event.isTrusted属性。只要另一款浏览器扩展拥有claude.ai域名的脚本权限(这在Chrome生态里是再寻常不过的权限),攻击者就能伪造一次点击,六行JavaScript足矣。在用户毫无感知的情况下,Claude会静默执行九种硬编码提示中的任意一种。
这九个提示并非无害的演示。其中三条指令直接触碰用户的隐私核心:阅读Gmail并与邮件交互,比如自动点击取消订阅链接;打开用户最近使用过的Google文档,提取所有评论;扫描Google日历并创建会议。在Claude的默认“执行前询问”模式下,用户还会看到一个审批弹窗。可一旦开启了“无需询问”模式,攻击就变成完全静默——CVSS评分定在9.6,属于“危急”级别。
第二个问题则是一种架构级别的隐患。Claude的侧边栏在加载任何包含?skipPermissions=true的URL时,会直接进入一个不带任何同意提示的特权模式。虽然页面中会显示一条警告横幅,但这条横幅是在特权模式已经激活之后才弹出的,与其说是安全护栏,不如说是一则“事后通知”。目前,只有扩展自身能够构造这个带参数的URL,所以该问题暂不能被外部直接利用。但Manifold的研究员警告,这是一枚滴答作响的定时炸弹:未来任何新消息传递逻辑、跨站脚本缺陷,或者哪怕一次回归错误,只要让外部代码有能力构建这种URL,攻击者就能瞬间获得静默的、完全账户级别的访问权限。
这两个问题恰好落入OWASP大语言模型应用十大风险中的两项:提示词注入(LLM01)和过度自主行动(LLM06)。可修复方案其实非常直观——在点击事件中检查isTrusted,同时移除基于URL参数升级权限的机制。但截至7月7日,两项修复都未出现在发布版本里。Anthropic甚至在6月9日前就将底层的追踪工单标记为“已解决”。
按照时间线复原,事情是这样的。2026年5月,Manifold的研究员首次向Anthropic报告了这两处缺陷。一天之内,Anthropic便确认收到报告,却随即关闭了工单。他们的解释是:模拟点击的问题已被另一份内部报告覆盖,而URL参数升级权限的缺陷“不存在外部可触达的风险”。研究员Ax Sharma在7月7日进行了再次验证,比对代码后发现,被标记的问题代码与最初上报时字节级完全一致。
这并不是Claude浏览器扩展第一次出现修补不完整的情况。早在“ClaudeBleed”事件中,就已经上演过类似剧情:公布的修复在事后被证明并未根除问题。这次漏洞的复现,再次让外界对AI浏览器扩展在第三方脚本与高权限自主行为之间的信任边界打上问号。
如果用攻击者的视角重新审视整个链路,你会发现利用第一个漏洞的成本低得惊人。任意一款在Chrome应用商店上架的扩展,只要声明了它对claude.ai的脚本注入权限,就能监听该域名下的页面生命周期。当受害者在claude.ai页面停留时,恶意扩展调用dispatchEvent,向引导按钮派发一次模拟点击,事件对象中被刻意设置isTrusted: false——而Claude的内容脚本对此照单全收。紧接着,预置提示词被送入侧边栏,Claude按照“阅读Gmail”“读取文档评论”“创建日历项”的指令行事。整个过程没有任何弹窗、震动或权限变更请求。
至于第二个漏洞,它为未来的组合攻击预留了一扇后门。一旦某种方式让外部攻击者构建出?skipPermissions=true的URL——比如通过一个openRedirect或DOM型XSS——那么特权模式就会零交互激活。此时Claude扩展将拥有与用户几乎同等的操作权,且不再询问是否允许执行MCP(模型上下文协议)工具。研究员将此形容为“权限格栅上留了一扇用门帘遮挡的洞”,门帘上写着的警告,对自动化脚本毫无威慑力。
在行业层面,这次发现的冲击点并不在于漏洞本身的技术精巧,而在于它映射出一种普遍忽视:当浏览器扩展开始充当AI助手时,原本为网页交互设计的同源策略和事件信任模型已经捉襟见肘。Chrome扩展的权限声明机制依然建立在“用户知情同意”的理想前提下,而AI代理的自主行动能力却要求完全不同的权限隔离。Claude的漏洞只是最先被摆上台面的例子。
Anthropic对漏洞的态度也耐人寻味。一边是将内部工单标记为“Resolved”,一边是公开版本中问题依旧。研究人员提出,这种做法可能导致外界误判风险已经消除,从而降低社区对问题持续关注的动力。Sharma在验证后的公开笔记中写到:“代码是唯一的真相,标签不是。”这句话在当天就被安全社区的开发者大量转发。
对于普通用户而言,自我保护措施目前收效有限。关闭“无需询问”模式可以阻止静默攻击,但在默认的“执行前询问”模式下,恶意操作依然会弹出审批框——而利用社会工程学或按键劫持绕过的可行性并不为零。此外,限制扩展权限、卸载不必要或来源不明的Chrome扩展,能减小被其他扩展滥用的风险面。但最根本的修补权力,依然握在Anthropic手中。
回看整个时间线:5月首次报告,6月工单被标记解决,7月初代码纹丝未动。Manifold研究员在这段时间里反复验证、复现,每一次都在同一个content script文件里看到同一行缺失的isTrusted校验。这一细节令人联想到ClaudeBleed事件的遗留问题——当时承诺的彻底修正,后来被发现需要额外补丁。今天,浏览器扩展是否值得被赋予读取邮件、操作文档和创建日历事件的能力,这个根本性的授权边界问题再次被推到前台。
OWASP在LLM应用风险文档中曾指出,过度自主行动与提示词注入一旦结合,就会形成可蠕虫化的攻击面。Claude for Chrome的两个漏洞,恰好演示了这种结合的初始形态:提示注入负责选定任务,过度自主行动负责无审批执行。尽管当前攻击面还局限在拥有claude.ai脚本权限的扩展中,但跨扩展通信、web可访问资源与第三方脚本引入的路径正在快速膨胀。研究者反复强调的那枚“定时炸弹”,正是对此种膨胀的预言。
业界在关注Anthropic后续动作的同时,也开始审视其他具备自主行动能力的AI扩展。当AI代理能替你回邮件、排日程、读文档时,用户给予的已不再是单纯的浏览权限,而是数字身份的部分控制权。这次漏洞暴露的真实风险不是六行代码有多高明,而是那句“已解决”标签在真实代码面前,可以脆弱得不堪一击。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.