Cursor的AI编程智能体在YOLO模式下可以自动运行。据Backslash Security称,用户可能需要三思而后行。
如果使用YOLO一词——你只活一次——还不足以警告该公司对计算机安全的处理方式,那么位于以色列特拉维夫的Backslash表示,Cursor用于防止其智能体删除数据的所谓安全措施之一"严重不足,甚至完全无用"。
YOLO模式,或称自动运行模式,允许Cursor智能体执行多步骤编程任务,无需在每个步骤都获得人工批准。该模式配备了几项设置,旨在限制可能造成的损害范围。这些设置包括:允许列表(使特定命令对智能体可用)、拒绝列表(指定智能体不应调用的命令),以及防止文件被删除的复选框。
正如企业家Jason Lemkin最近使用Replit AI编程工具的经历所显示的,基于大语言模型的代码帮助如果使用时缺乏足够的谨慎,可能会做出删除生产数据库等激烈行为。
Cursor提供拒绝列表试图防范此类问题。例如,通过将"rm"命令添加到拒绝列表,Cursor智能体应该无法使用该命令删除文件。因此,一些Cursor用户采用了冗长的拒绝列表。
但据Backslash称,拒绝列表的实现可以被轻易绕过。
应用安全分析师Mustafa Naamneh和Micah Gold在博客文章中表示:"我们发现了不少于四种方式,被入侵的智能体可以绕过Cursor拒绝列表并执行未经授权的命令。"
该公司表示,拒绝列表无法阻止混淆命令。因此,即使"curl"在拒绝列表中,智能体也会忠实地执行以Base64编码的命令echo JChjdXJsIGdvb2dsZS5jb20pCgoK | base64 -d | zsh,该命令等同于echo $(curl google.com)。
如果命令包含在子shell中(如bash -c "curl google.com"),或者写入shell脚本中(如echo curl google.com > curl.sh && chmod +x curl.sh && ./curl.sh),拒绝列表也会运行被禁止的命令。
最后,在bash环境中可以通过使用双引号或多组引号来绕过拒绝列表,这样就无法明确阻止所有潜在的攻击变体。
Naamneh和Gold表示:"Cursor的拒绝列表不可靠。虽然它可能阻止智能体天真地运行某些Linux命令,但无法阻止被入侵的智能体运行它想要的任何命令。"
安全公司表示,智能体执行任意命令的能力意味着Cursor针对自动运行/YOLO模式事故的其他防御措施(如文件删除预防)都是无用的。
此类命令如何到达Cursor智能体?据Naamneh和Gold称,开发者可能会"从随机GitHub存储库导入rules.mdc文件——可重用的智能体指令——而不对其进行审核"。
Backslash Security联合创始人兼首席技术官Yossi Pik告诉The Register,Cursor智能体执行风险命令还有其他方式。例如,智能体可以处理来自共享代码库的注入文本,如README或代码注释。或者智能体可以从包含恶意指令的外部站点获取并执行内容。
Pik解释说:"智能体只需要处理包含注入命令的文件、规则或响应——无论是本地的、共享的还是远程获取的。攻击成功并不需要网页。"
你只活一次,但遗憾却是永恒的。
Cursor没有立即回应评论请求。据报告此问题的Backslash称,Cursor打算在1.3版本中弃用拒绝列表功能,但在本文发布时该版本尚不可用。
好文章,需要你的鼓励
很多人担心被AI取代,陷入无意义感。按照杨元庆的思路,其实无论是模型的打造者,还是模型的使用者,都不该把AI放在人的对立面。
MIT研究团队提出递归语言模型(RLM),通过将长文本存储在外部编程环境中,让AI能够编写代码来探索和分解文本,并递归调用自身处理子任务。该方法成功处理了比传统模型大两个数量级的文本长度,在多项长文本任务上显著优于现有方法,同时保持了相当的成本效率,为AI处理超长文本提供了全新解决方案。
谷歌宣布对Gmail进行重大升级,全面集成Gemini AI功能,将其转变为"个人主动式收件箱助手"。新功能包括AI收件箱视图,可按优先级自动分组邮件;"帮我快速了解"功能提供邮件活动摘要;扩展"帮我写邮件"工具至所有用户;支持复杂问题查询如"我的航班何时降落"。部分功能免费提供,高级功能需付费订阅。谷歌强调用户数据安全,邮件内容不会用于训练公共AI模型。
华为研究团队推出SWE-Lego框架,通过混合数据集、改进监督学习和测试时扩展三大创新,让8B参数AI模型在代码自动修复任务上击败32B对手。该系统在SWE-bench Verified测试中达到42.2%成功率,加上扩展技术后提升至49.6%,证明了精巧方法设计胜过简单规模扩展的技术理念。