返回
官网 Claude 官方博客 精选 收录 2026-08-11 10:19 46

Anthropic如何保障AI原生软件开发流程的安全

Anthropic副CISO Jason Clinton撰文介绍其安全工程团队如何保障由AI主导的软件开发流程安全。目前Anthropic合并的代码中约80%由Claude编写,超过一半代码由内部版本的Claude Tag合并,人类工程师负责指导、设定意图并最终批准。文章详述了针对受攻击或提示注入的智能体、供应链和依赖投毒等威胁的安全策略,包括将安全左移并与开发阶段全面整合等。
推荐理由:本文为数据与AI领域的技术实践,展示了在AI生成代码占比极高的环境下如何实施安全控制,对构建和维护AI Agent相关数据平台的安全体系有直接参考价值。
Data AgentAnthropicClaude

译文 AI 逐段翻译

Anthropic 如何保障其 AI 原生的软件开发生命周期安全

Anthropic 副首席信息安全官 Jason Clinton 详述安全工程团队如何保障一个由 AI 撰写 80% 合并代码的 SDLC 的安全。

在 Anthropic,代码量和部署速度呈指数级增长。我们的软件工程师平均每个季度交付的代码量是 2021 年至 2025 年期间的 8 倍。

我们的审查、监控和其他安全流程需要跟上这一加速的步伐。否则,就会成为瓶颈的公式(阿姆达尔定律)。

我们的软件开发流程也发生了巨大变化。Claude 已从编码助手演变为主要的创建者和审查者。Claude 编写了今天合并到我们代码库中的约 80% 的代码。

超过一半的代码由我们的内部版本Claude Tag合并,而人类工程师则专注于指导、设定意图并拥有最终批准权。

这意味着我们的安全团队必须保卫一个快速扩展的攻击面,并加固一个以非确定性、不断演进的智能体为核心的生命周期。在本文中,我将介绍保障软件开发生命周期(SDLC)安全的策略。

(这旨在与智能体零信任框架结合,我们最近发布了该框架;本文中的所有内容都在实现中使用了该框架的安全设计理念。)

我们设计防御针对的威胁是具体的:一个被攻陷或提示注入的智能体引入恶意更改;供应链和依赖项投毒,智能体将其作为可信输入吸收;以及更常见的应用漏洞类别,现在以更高数量出现。以下每项控制都对应至少其中一个。

我们部署了几个总体策略,以在不显著降低开发速度的情况下实现这一点,包括:

  • 将安全左移并完全集成到代码开发阶段;
  • 使用严格的访问和身份边界来限制爆炸半径;
  • 在生产前后结合自动确定性和智能体审查;以及
  • 在最高杠杆点将人类引入循环。

在本文中,我们将介绍我们在软件开发生命周期的特定阶段实施的安全流程及其背后的核心原则。这些原则更为持久,因为随着模型能力的演进,安全团队必须重新审视,并常常重新发明他们的流程。

不断演进的软件开发生命周期

我们的开发团队已经详细介绍了他们的软件开发生命周期的变化,因此在深入每个阶段之前,这只是一个简短的入门。

在高层次上,我们的软件开发生命周期是压缩的。它更多由原型和内部采用(吃自己的狗粮)驱动,而不是冗长的规划周期。创意来自组织的各个角落,传统角色(前端、后端、设计)模糊不清。审查和批准仍然有人员参与,但也由智能体循环驱动。

虽然每个阶段都被 Claude Code 和 Claude Tag 从根本上改变和加速,但每个阶段的名称和用途对于来自更传统组织的开发人员来说并不陌生。这些是自然的门禁,我们也将其作为 AI 原生 SDLC 安全流程的一部分。

规划

我们最早的安全自动化之一是一个简单的由 Claude Opus 驱动的 PSR(项目安全审查)Web 应用程序。它摄取项目设计文档,并对照MITRE ATT&CK 框架进行分析,以识别潜在漏洞并提出缓解措施。

我们通过将其连接到内部知识索引,显著增强了该系统,该索引在我们的组织范围政策、过去决策和相关系统之间提供了更深入的上下文。

这让我们对潜在风险有了更好的理解,并且它还捕获了 PSR 中缺失的信息。这一实现节省了 AppSec 团队的大部分时间。一旦我们对 Claude 评估风险的准确性有了信心,如果 Claude 认为启动风险足够低,我们就允许团队批准自己的项目。

在这里,我们看到了对 AI 原生 SDLC 的第一个关键适应之一。PSR 最初旨在在漫长且昂贵的编码过程之前捕获安全问题。在这个阶段捕获问题节省了数月的重新开发。

如今,主要功能的多个原型可以在数小时内创建,使详细架构审查成为一个不那么关键的门禁。将我们的 PSR 应用程序连接到知识索引可以捕获否则可能遗漏的上下文,而不会制造不必要的速度障碍。创建一个 Claude Code 技能使 Claude 能够进一步扩展并在任何地方捕获额外上下文。

持久原则:将安全智能体连接到组织上下文。随着规划周期压缩,将这些智能体带到上下文已经存在的地方——聊天线程、以前的审查、代码库——比在可能不再需要的阶段强制详细的文档要有效得多。无论哪种方式,智能体都需要代码之外的上下文。

未找到项目。

上一页

0/5

下一页

获取 Claude Code

或阅读文档

试用 Claude Code

试用 Claude Code

开发者文档

开发者文档

电子书

代码

AI 原生工程组织中的安全专业人员拥有一个新的杠杆:他们可以直接影响代码的创建方式,帮助从源头预防漏洞。

以前,团队观察重复出现的漏洞并制定安全编码指南来解决它们,但那些指南难以执行,且很少标准化。

在Anthropic,这些指南被编码在CLAUDE.md文件和组织级技能引用中,以便代码在生成时立即遵循这些最佳实践。这是闭环的一部分。一旦代理发现一个错误类别,相关文件就会被更新,以防止它在未来的代码中再次发生。

当然,这并不意味着所有代码都是完美的。我们的团队一开始就在CLAUDE.md文件中指示代理在开启PR之前运行/security-review作为最后一步。这个普遍可用的命令是我们团队内部审查工作流的产品化版本,它会查找潜在攻击者可控输入进入的地方,扫描可疑链接,然后验证其发现。

如今,这些审查在Claude生成代码时进行。一旦安装了安全指南插件,Claude会在进行中审查对话和代码。它在生成代码的同一会话中提出安全改进建议并解决常见漏洞。

在PR时的其他提示推动内部非技术团队将他们的应用托管在我们的低代码应用托管平台上,避免传统上困扰安全团队的影子IT。

我们的一些客户选择将/security-review与PreToolUse钩子集成,这使得这一步成为一个更严格的关口。这也有效,但我们的团队选择在周期的测试/CI阶段纳入我们的硬代码审查关口。

除了塑造和审查代码之外,控制爆炸半径是我们在这一阶段的主要关注点之一。我们通过围绕身份设置硬边界(在监控部分有更多内容)以及让我们的开发者在虚拟机上编码来实现这一点。

将我们的编码迁移到远程虚拟机是一个相对轻松的转变,并且与仅使用笔记本电脑相比,给了我们更多的控制权和可见性。这些虚拟机上的代理流量是出站白名单的。

这些严格的出站控制尤其重要,当代理读取可能携带提示注入负载的不可信输入时。注入的指令无法到达互联网上的任意目的地:泄露路径仅限于一小部分受监控的服务。

这里你再次看到为AI原生SDLC的明确适应。远程编码以前主要用于控制IP,而今天我们看到更成熟的AI编码团队采用这些环境来作为控制代理的手段。

持久原则:在AI原生工程组织中,左移意味着在漏洞发现和更新指令之间闭环,以定制Claude生成代码的方式。通过适当的硬边界限制爆炸半径(最小代理原则)和代理可以访问的内容。

测试(CI)

根据我的经验,测试或CI阶段很快成为AI原生转型中的工程团队最痛苦的瓶颈。在Anthropic,一旦大多数开发人员使用代理编码工具并同时运行多个代理,很快就变得明显,团队只能以人类审查代码的速度前进。

我们要明确:人类责任仍然是我们过程的核心。我们做的是通过结合自动化代理和确定性审查来加速审查过程,同时将人工审查保留给受监管或真正关键的代码。

从历史上看,人工代码审查一直被视为标准,然而经验证据表明它并不完美。安全漏洞经常在全世界范围内随软件发布。我们的审查过程能够审查更多代码并捕捉特别复杂的问题,有助于降低这些风险。

获得实质性审查评论的PR比例从16%增长到54%,因为我们要求代理写出其发现有效的证明,从而对发现建立了信心。我们还确定大约过去claude.ai事件中三分之一的安全漏洞本会被我们现在实施的自动化过程捕获

我们不是唯一发现这一点的组织。Intercom分享他们自动批准19%的PR。部署量翻倍,而因破坏性代码变更导致的停机时间下降了35%。CircleCI在构建Chunk时得出了类似的结论,Chunk是一个基于Claude的自主代理,解决CI/CD维护问题,并且在人类看到之前验证自己的修复。这种方法使代理任务转化为已完成PR的比率翻倍。

当在Anthropic打开一个PR时,多个代理自动审查它。每个审查代理都设计为特定狭窄焦点,并利用RAG获取额外的上下文和关于过去事件的记忆。

这比一个大型提示或超级安全代理有效得多,原因有几个:

  • 它们不共享偏见和盲点
  • 如果一个被攻破或犯错,可以被其他审查者发现
  • 精力不会在多个焦点领域过于分散

要明确的是,代理不会不受检查地将代码合并到生产环境。我们按风险对代码库进行分级,并就有意决定哪些部分自动化。整个代码库都有严格的人工批准流程。

对于由Claude审查和合并的代码,人类责任仍然是核心。每次批准都会记录其背后的信号和推理,并进行风险加权抽样供人类审查。另一轮测试侧重于不变量,如“用户A永远无法读取用户B的数据”,并触发额外的人工审查。我们还将代理扫描与SAST工具结合,这些工具直接发布在PR上。

大多数扫描方法,无论代理还是确定性,都是基于消费的。随着代码吞吐量的增加,成本会增加,团队需要决定适合他们的覆盖水平。

在Anthropic,我们接受这里的成本会随着代码速度的增加而增长,但预计单位成本会下降。今天的模型在编码方面比几年前的所有模型都要好得多,我们预计这种模式将继续。

持久原则自动化审查是一种不同类型的风险,通过不同的方式控制(通过多个门禁和具有独立上下文窗口的代理)。人类保持在环路中,但根据代码库的性质,可能在生命周期的不同位置。

部署(CD)

Anthropic维护一个强大的暂存环境,我们在其中执行常见的安全最佳实践,例如针对重大发布的定期外部渗透测试和定期DAST扫描,以捕获静态扫描遗漏或无法看到的逻辑错误。

与其他SDLC阶段一样,AI给安全团队带来了新的挑战和解决方案。一方面,到达这个阶段的漏洞更少。另一方面,确实存在的漏洞是最微妙且难以捕捉的。

加上更大规模的代码更频繁地发布,定期动态测试似乎不再那么动态了。

好消息是,AI模型在多步骤、跨组件的推理方面表现更好,可以捕捉更大比例的这些复杂漏洞。例如,在二月份,我们披露Claude发现并帮助修复了超过500个高危OSS漏洞

在Anthropic,我们正在暂存环境中实施持续的人工智能驱动的DAST扫描。这些扫描在系统级别寻找漏洞,即两个或多个服务之间的假设不正确的地方。如今有许多供应商提供这些能力。

持久原则:动态测试应与部署节奏相匹配。

监控

任何优秀的安全团队都知道,代码推送到生产后,工作并没有完成。我们可以假设任何漏洞都会被日益复杂的攻击者迅速识别。

我们的安全团队已经实施了标准实践的项目,例如公开漏洞赏金计划、红队模拟攻击,以及定期扫描我们的依赖项、秘密、供应链、云状态和容器中的漏洞。

Claude在这些方面扮演重要角色,但我们将重点放在由于我们AI原生的SDLC而带来的监控工作的更大变化:警报分类和代码迁移。

当Anthropic发出警报时,Claude开始:

  • 审查生产日志
  • 根因分析错误;
  • 撰写事后分析报告;在某些情况下
  • 编写代码更改来修复错误。

这个代理不能做的是自动部署修复。它是一个单一用途的系统账户代理,具有三个权限:可以写入新文档、在公司渠道发布消息以及访问生产日志。

修复要么需要来自单独的代理-人类审查系统。原因回到了管理身份、权限和硬边界:将代码推送到生产时,限制爆炸半径很重要。分离代理至关重要,因为一个(或多个)代理充当对另一个的检查。

这也是CISO的重要教训,而且是我必须艰难学会的。在考虑代理的硬边界时,您需要包括它访问其他代理的能力。

在模型升级后,事件响应代理主动通过Slack联系了另一个Claude实例。它要求可以编写代码的代理推送修复。这被设计的人类审查门禁捕获,但这次经历教会我们围绕访问和行动划边界,而不是围绕模型的指令或我们认为模型能做什么。今天在Anthropic,代理间通过Slack通信是常态,我们深入思考代理身份模型

第二个重大变化是我们的团队如何处理迁移。每个安全工程团队都经历过这样的时刻:他们意识到必须进行代码迁移来修复公司运营方式的系统性缺陷。过去,CISO需要开始游说,并请求每个部门工程资源的一小部分用于多个季度来解决。

迁移的经济成本已经下降,跨公司协调的成本也下降了。Claude自动化迁移过程,数万行代码,在几天内

持久原则:给每个代理一个单一用途的身份,拥有其工作所需的最低权限。如果你让代理协调,让它们通过与人类相同的渠道进行。

治理

我们已经自动化了许多安全流程,但人类仍然是确保安全软件开发生命周期不可或缺的一部分。但我们的注意力不再集中在审查代码和错误报告上,而是集中在Claude标签、循环和仪表板上。

这强调了强有力治理的重要性。如果技能过时,发现的漏洞类从未回到CLAUDE.md,或者代理的决策未采样,整个结构就会退化。我们通过以下方式避免这种情况:

  • 按风险对代码库进行分层,然后基于该级别自动化审查。
  • 影子模式针对所有新的AI审查员。新代理发布评论供人类批准,直到赢得信任。我们的团队还对他们进行“红队”测试,尝试插入恶意更改。
  • 抽样一定比例的自动批准。
  • 观察我们的关键指标。我们维护并密切监控一个仪表板,汇总所有安全流程和工作流的关键指标。
  • 将每个代理操作路由到SIEM。每次自动批准、工具调用和代理间消息都会记录其使用的信号并进入我们的SIEM,因此任何决策事后都是可归属和可审计的。我们使用这些数据并将这些代理视为一种新型内部威胁,当它们行为不端时发出警报。

持久原则:安全工程师的工作从监控漏洞演变为监控循环。

有关这些控制背后的评估框架,请参阅CISO的agentic AI指南

随着模型的发展保持AI SDLC的安全

软件开发生命周期及其加固方式的演进速度之快,几乎无法言喻。模型能力每月都在进步,既带来新的挑战,也带来新的解决方案。

今天不太有效或不太经济可行的方案,很可能很快就会改变。你的团队应该提出的正确问题不是“我们能否负担全面扫描?”,而是“如果扫描近乎免费,我们会运行什么?”为此做好准备。

本文由Anthropic副首席信息安全官Jason Clinton撰写。他感谢Michael Segner对本文的贡献。

常见问题解答

未找到项目。

相关文章

探索更多产品新闻和面向使用Claude的团队的最佳实践。

2026年8月11日

合规API覆盖扩展至Claude Cowork和Claude Code

企业AI

合规API覆盖扩展至Claude Cowork和Claude Code

合规API覆盖扩展至Claude Cowork和Claude Code

2026年6月5日

Claude Cowork产品指南

企业AI

Claude Cowork产品指南

Claude Cowork产品指南

2026年5月22日

Anthropic财务团队如何使用Claude塑造数字背后的叙事

企业AI

Anthropic财务团队如何使用Claude塑造数字背后的叙事

Anthropic财务团队如何使用Claude塑造数字背后的叙事

2026年8月7日

Anthropic业务发展团队如何使用Claude大规模处理入站和出站业务

企业AI

Anthropic业务发展团队如何使用Claude大规模处理入站和出站业务

Anthropic业务发展团队如何使用Claude大规模处理入站和出站业务

使用Claude转变您组织的运营方式

查看定价

查看定价

联系销售

联系销售

获取开发者新闻通讯

产品更新、操作指南、社区亮点等。每月发送至您的邮箱。

谢谢!您已成功订阅。

抱歉,您的提交出现问题,请稍后重试。

分享这条资讯
分享海报
保存图片
iOS 也可以长按图片保存