Anthropic 近期将 Claude Code 的 Auto Mode 设为默认,并强调该模式能有效防御提示注入攻击。但安全研究者 Johann Rehberger 发现了一种新的绕过方式:在部分测试中,攻击可诱导 Claude Code 下载并解压一个 zip 压缩包,再执行其中经过伪装的代码。该攻击被其描述为约 80% 成功率。
攻击如何绕过 Auto Mode
根据 Simon Willison 引述, Rehberger 的方法并非直接让模型执行明显恶意命令,而是利用开发环境中常见的模块加载机制。攻击者让 Claude Code 下载并解压 zip 文件,随后运行一段导入 base64 的代码。表面上看,这只是调用标准库,但由于压缩包中同时释放了名为 struct.py 的本地文件,Python 会优先导入同目录下的同名文件,从而执行攻击者预置的代码。
- 攻击入口:诱导 Claude Code 下载并解压 zip 压缩包。
- 伪装方式:代码看似只导入 base64 标准库。
- 实际效果:本地 struct.py 被导入并执行,形成恶意代码运行路径。
- 研究者称,该方式在其测试中约有 80% 成功率。
这一路径的关键在于,它没有呈现出典型的高危命令特征,而是把恶意执行隐藏在看似正常的开发操作里。对于自动模式所依赖的安全判断机制而言,这类攻击更难被识别。
安全机制为何反而阻止了清理
更值得关注的是,Claude Code 在部分运行中并非完全没有察觉异常。素材显示,当模型发现自身已经被攻破后,曾尝试终止恶意进程。但 Auto Mode 拒绝了这一清理命令,导致安全机制在错误的时间点阻止了正确的补救动作。
也就是说,分类器允许了恶意进程的创建,却拦截了后续停止该进程的操作。原本用于降低风险的防护层,在这个案例中反而成为故障链的一部分。
这暴露出编码智能体自动化模式的一个现实难题:安全系统不仅要判断某条命令是否危险,还要理解当前上下文是否已经从正常开发转入事故处置。若模型正在尝试止损,而防护机制仍按常规规则拦截,就可能放大风险。
对自动编码智能体意味着什么
Anthropic 将 Auto Mode 设为默认,显示出其希望让编码智能体承担更多连续操作,包括读取文件、运行命令、处理外部资源等。但 Rehberger 的研究提醒行业,自动化程度越高,外部输入与本地执行之间的边界就越需要严格控制。
Simon Willison 在文中认同研究者的结论:如果智能体可能面对对抗性攻击,唯一安全的运行方式是将其放入沙箱。沙箱可以限制文件写入、网络访问、进程创建和系统命令执行,使模型即使被诱导,也无法直接影响宿主环境。
这一案例并未否定 Claude Code 的能力,也不意味着自动模式没有价值。它更准确地说明,编码智能体正在从“辅助补全”走向“代理执行”,其风险也从生成错误代码,扩展到被外部输入操控后执行非预期操作。
对于使用 AI 编码工具的开发者和企业而言,这次事件提供了一个清晰的提醒:不要只关注模型是否聪明,也要关注它运行在什么权限之下。自动模式可以提升了效率,但真正决定安全下限的,仍然是执行环境、权限隔离和人工审核机制。
原创文章,作者:点点,如若转载,请注明出处:https://www.dian8dian.com/claude-code-zi-dong-mo-shi-bei-rao-guo-bian-ma-zhi-neng-ti