在我允许智能体使用我的已登录浏览器之前决定的四个必要条件,以及我仍然控制不佳的一个

Reddit r/AI_Agents 工具

摘要

作者详细说明了四种安全措施,以实现AI智能体使用已登录浏览器,包括防止输入伪造、审批层、数据标记和安全通道,同时承认在控制cookie值方面存在弱点。

事先声明:这涉及到我编写并维护的一个开源工具。链接放在第一条评论中,不在这里。问题:我希望Claude Code和Cursor使用我已登录的Chrome浏览器,而不是一个没有cookie的无头实例。一旦这样做,智能体只需一条错误指令就可能在我的支付页面上点击购买。以下是我在此过程中确定的检查清单。输入页面无法区分是否来自我的操作。合成的dispatchEvent调用带有isTrusted为false的标记,而原生表单提交、拖放、canvas应用和反机器人检查会拒绝它们。我将每个点击和按键操作都转移到了DevTools Protocol Input领域。代价是:Chrome始终显示一个"onbridge开始调试此浏览器"的栏。我认为这个栏是一个功能,是屏幕上智能体无法隐藏的东西。一个智能体无法触及的审批层。操作被分类为读取、导航、写入、敏感操作(如cookies、执行、上传、下载)和破坏性操作(如标记为购买、支付、结账、删除、发送、提交、转移、部署、合并等的写入操作)。默认模式在侧边栏中通过点击控制敏感和破坏性操作。任何MCP工具都无法更改模式。25秒内无响应视为拒绝,如果在提示和审批之间页面发生了导航,则审批无效。页面文本标记为数据。页面影响的所有内容都用带有随机每结果id的标签包裹,并注明只有具有该id的结束标签才能结束它。主体中的伪造结束标签会被处理。我测试了28个植入的有效载荷。这本身并不足够,所以才有了第二项措施。一个不是开放端口的通道。桥接器仅绑定到127.0.0.1,检查Origin头与固定扩展id的匹配,并运行ECDH P-256到HKDF再到AES-256-GCM,每次连接使用新的密钥对。每个服务器一个活跃会话;第二个连接将被拒绝。我仍然控制不佳的是:cookie值。审批仅由操作类别决定,因此在无提示模式下,get_cookies with includeValues会在未询问的情况下返回值。我的README过度强调了这一点,我需要修正它。当你的智能体接触真实账户时,你控制什么?特别是:是否有人基于读取的值而非调用的操作进行控制?
查看原文

相似文章

证明你是机器人:面向代理的验证码

Hacker News Top

Browser Use 推出了基于反向验证码的代理原生注册机制,旨在阻止人类进入,而让 AI 代理进入。代理通过解决混淆的数学题来获得 API 密钥访问权限和免费套餐福利。

向智能体提示“谨慎处理链接”毫无作用

Reddit r/AI_Agents

测试中,AI智能体面对钓鱼链接毫无戒备地进行了访问。文章详细介绍了四项实用安全检查措施以预防此类威胁,强调应在工具层面实现稳健的智能体安全防护。