Cursor 构建AI安全代理舰队,终结常见安全困境

4 阅读7分钟

Cursor安全团队利用AI代理舰队解决传统安全痛点,自动化代码库安全监控。他们开源了Agentic Security Review等四种代理模板,以提高安全效率和应对AI攻击。

译自:Cursor built a fleet of security agents to solve a familiar frustration

作者:Frederic Lardinois

Cursor 的安全团队构建了一支人工智能代理队伍,持续监控和保护公司的代码库。他们正在发布这些代理背后的模板和 Terraform,以便其他安全团队也能效仿。

Cursor 的安全主管 Travis McPeak 告诉 The New Stack,这个项目源于一种普遍存在的困扰。传统的安全工具,如代码所有者、代码检查工具和静态分析,跟不上公司代码变更的速度,而公司工程师的代码发布速度与人工智能编码工具的演进速度一样快。

McPeak 说:“我们在安全领域一直面临这种困境,我们所需要关注的需求总是超出我们能处理的范围。所以我们的想法是:如何才能以更集中的方式利用代理来保障安全,并在正确的时间出现在正确的地方?”

“所以我们的想法是:如何才能以更集中的方式利用代理来保障安全,并在正确的时间出现在正确的地方?”

例如,在 Cursor 的规模下,专注于代码所有者功能过于不精确,经常将安全团队引入不相关的拉取请求(Pull Requests),同时却错过了真正重要的更改。代码检查产生了太多误报。Cursor 新方法的核心思想是:代理现在可以从语义上推断代码更改实际做了什么,而不是仅仅根据更传统的关键词或模式规则触发。

这些代理运行在 Cursor Automations 上,这是该公司最近推出的用于常驻编码代理的平台。Automations 建立在 Cursor 的云代理平台之上,并为这些代理提供集成,用于接收 Webhook、响应 GitHub 拉取请求以及监控代码库更改。这些代理在后台持续运行,并在由 PR、Webhook 事件或 cron 计划触发时介入。

McPeak 告诉我们,他的安全团队去年年底获得了 Automations 内部版本的早期访问权限,并成为其首批重度用户之一。为了使这些代理适用于团队的安全工作流程,他们构建了一个定制的 MCP 工具,并将其部署为无服务器 Lambda 函数。

四种安全代理

该团队周一发布了其四种安全代理的蓝图:Agentic Security Review、Vuln Hunter、Anybump 和 Invariant Sentinel。

这些新代理中第一个也是最显眼的可能是 Agentic Security Review,它现在几乎运行在每个拉取请求上,并在必要时可以阻止持续集成。它最初是 Cursor 现有通用代码审查代理 Bugbot 的一个分支。但 McPeak 和他的团队随后根据安全团队的需求对其进行了专门调整。

他说,他想要一个信号足够强以至于能够实际阻止合并的东西。“当它说这是一个问题时,我们有信心可以阻止。”他说,仅仅两个月,它已经在数千个 PR 上运行,并阻止了数百个问题进入生产环境。

第二个代理 Vuln Hunter 每天扫描现有代码库。其思想是,如果 Agentic Security Review 在旧代码编写时就已存在,它就会捕获到现在在生产环境中未被检测到的问题。Vuln Hunter 将代码划分为逻辑段,并指示代理追溯漏洞到其根本原因。正如 McPeak 指出的,除非代理能够证明发现是真实的,否则它不会向安全团队报告。

Anybump 处理依赖项修补。正如 McPeak 指出的,安全工具常常在第三方库中寻找实际未使用的组件中的问题。“在我们做这些事情之前,我们有一个可达性分析服务,它会找出我们是否以一种漏洞对我们有意义的方式实际使用了该组件?”

然后,该代理会跟踪代码路径,运行测试,如果测试通过则打开一个 PR。McPeak 说,这些代理比人类通常愿意做的分析更彻底——而且它们在不中断任何人的工作流程的情况下完成这些工作。

第四个代理 Invariant Sentinel 监控针对团队定义的一系列安全和合规属性的漂移:隐私保障、法律要求和高影响控制。它每天运行,并使用 Automations 的内存功能来跟踪跨运行的状态。

代理的发现

在许多其他问题中,例如,Vuln Hunter 标记了一个缺乏适当输入验证的电子邮件发送服务,该服务可能被用作垃圾邮件中继。它发现了一个被遗忘的即时服务,其访问权限过于宽泛,基础设施团队已经对其失去追踪——“这里所有人都忘记它了,”McPeak 说。它还捕获了一个服务器端请求伪造漏洞,该漏洞需要跨多个服务跟踪请求,这种基于逻辑的问题是静态分析工具难以处理的,因为它依赖于完整的跨服务上下文,而不是单一的代码路径。

McPeak 说,他的工程团队的反应异常积极。“我开始向工程师展示它,他们说,‘哇,这真是个了不起的发现。我们什么时候能在所有地方都用上它?’”他说。“这对于安全产品来说非常不寻常——工程师们会说,‘我喜欢这个。我想要它。’”

为什么要发布这些模板?

McPeak 指出,公司现在发布这些模板的部分原因是为了回应攻击者的行动。毕竟,这些攻击者也在利用人工智能寻找漏洞。

McPeak 说:“如果我们不提升自身规模,整个安全状况将会变得更糟。”

由于自动化是基于提示的代理,具有可定制的工具,其他团队应该能够根据自己的威胁模型进行调整。

McPeak 说:“如果我给你一个二进制文件,它完全按照我在 Cursor 想要的方式执行安全任务,那么你就无法自定义它。”

这对安全初创公司意味着什么?

所有这一切的一个有趣方面是,它对专注于代码审查和依赖项扫描的安全初创公司意味着什么。毕竟,专家们最近花了很多时间讨论 SaaS 灾变

McPeak 对这种动态相当开放。“我现在的观察是,如果你只是把一个 [大型语言模型 (LLM)] 放进去并给它合适的工具,它就会做很多好事。”McPeak 指出,那些价值主张纯粹是指导模型以正确方式运行的初创公司可能会发现这并没有多少长期价值,但他确实认为仍然有空间留给那些打包端到端工作流程的公司。然而,提示工程并不是一个很深的护城河。

McPeak 表示,随着时间的推移,Cursor 计划将该方法扩展到包括漏洞报告接收、隐私合规性监控、随叫随到警报分类和访问权限供应。Agentic Security Review 已经从一个单一代理演变为一个编排器,可以调用专门的子代理,包括一个专用的隐私检查,并计划涵盖更多领域。这家开发人员用来编写人工智能辅助代码的工具公司,现在正利用相同的工具来确保其安全。