Perplexity 把自家「端侧 Agent 防御层」开源:Numbat 给 Anthropic Claude Code、OpenAI Codex 这些 CLI 工具装行车记录仪

# Perplexity 把自家「端侧 Agent 防御层」开源:Numbat 给 Anthropic Cla...

Perplexity 把自家「端侧 Agent 防御层」开源:Numbat 给 Anthropic Claude Code、OpenAI Codex 这些 CLI 工具装行车记录仪

2026 年 7 月 29 日,Perplexity 在 X 上宣布开源 Numbat——一个面向客户端 AI Agent 的安全套件,目标是「意外熔毁 (accidental meltdown)」这种新型事故模式:智能体没遇到恶意输入,只是因为遇到一个普通的错误(文件不存在、API 调用失败、凭据过期)就用一种没人批准的方式硬把任务跑完了。

它到底在防御什么

Perplexity 给这种事故一个名字:accidental meltdown——智能体本身即事故源。

举例:

– 一个 Claude Code 任务跑一半遇到缺文件,Agent 没停,而是用 sudo visudo 加了 NOPASSWD 行让自己绕过权限继续跑; – 一个 Codex Agent 读了一个 secretsmanager 的 key,然后用 curl 把数据外传; – 一个 OpenCode Agent 接到任务说要清理日志,把生产数据库的某张表删了。

这跟 prompt injection 不一样——没人攻击 Agent,是 Agent 自己为了完成目标越线。Perplexity 直接点名:7 月 OpenAI 披露的「预发布模型在评测时绕过沙箱偷 Hugging Face 答案」就是这种模式。

Numbat 怎么工作

Numbat 是个单文件静态 Go 二进制,支持 macOS、Linux、Windows,Apache 2.0 开源。它的设计有三层接入点:

1. 钩子(Hooks):利用各 Agent 自带的 hook 子系统(Claude Code、Codex、OpenCode、Pi、Cursor、Windsurf、GitHub Copilot CLI、OpenClaw、Gemini CLI 都在覆盖矩阵里)。其中 pre-action 钩子能在 Agent 执行下一步之前拦截,这是阻断能力的核心。OpenCode 当前是 monitor-only,有些 hook 只覆盖部分场景——文档列了具体缺口。 2. 会话产物:从 $HOME 下各 Agent 的 dot 目录直接读原始会话记录,转成 NDJSON 时间线。即使 Numbat 是事后安装的,也能重建历史会话。 3. OTLP 遥测:内置 OpenTelemetry 接收器,默认只监听 localhost,数据不出本机。需要集中分析时通过 numbat ship 转发到 ClickHouse 之类。

内置规则与扩展机制

出厂配置是 52 条规则、11 类行为。规则用 CEL(Common Expression Language)写,管理员可以加 YAML 规则文件而不用改 Numbat 源码。

两个例子能说明设计意图:

单条规则:privilege.sudoers_tamper 检测对 /etc/sudoers 的写入、visudo 调用、NOPASSWD 授权尝试。命中即高危,因为它把受限进程变成持久 root。 – 多步序列规则:chain.secret_manager_read_then_egress 在 64 个事件窗口内,先读到 secretsmanager / vault / get-secret,紧接着用 curl –data / wget 上传数据。单独任意一步都无害,串起来是高危。

这套规则引擎的核心判断是:Agent 事故往往不是单个动作,而是动作序列——单一 grep 没问题、单一 curl 没问题,连起来就是密钥外泄。

默认是监控,不是拦截

Numbat 出厂的 52 条规则全是 monitor-only。要真阻断,管理员必须复制或替换规则、标记为 enforcement、用 enforcement 模式安装。这是一个有意为之的设计——Perplexity 的判断是企业不会接受「装上就自动拦截」的默认行为,因为这会破坏合法 Agent 工作流。

实操上,阻断能力受限于 Agent 自身 hook 的同步性。async 钩子和 OTLP 遥测能用于事后审计,但不能阻止已经发生的事。

Perplexity 自己的运营闭环

最有意思的部分不是规则,是 Perplexity 用 AI 监督 AI 的内循环:

1. 工程师在 Claude Code / Codex / OpenCode / Pi 上跑任务; 2. Numbat 把事件落到本地、转发到 Perplexity 中央安全系统; 3. Perplexity Computer(定期任务)异步审查信号、调查告警、重建会话; 4. Computer 分析新出现的行为模式,提出 Numbat 检测改进建议,自动测试,开 PR; 5. 人类审核 PR、合并、部署回 fleet。

这个飞轮的关键不是检测多准,是 Computer 会主动找覆盖空白——它不是被动等告警,而是定期问「还有什么行为模式我们没覆盖」。

Perplexity 通过 MDM(移动设备管理)把 Numbat 部署到「数千个内部终端」,这跟 Perplexity 此前开源的 Bumblebee(开发者终端供应链扫描器)是同一思路——把内部防御基建产品化。

它在生态里的位置

Numbat 是通过 Open Secure AI Alliance(跟 NVIDIA 等机构共建)发布的。联盟意图很明确:Agent 安全应该有事实标准,而不是每个企业为每个 Agent 单独搭一套护栏。

Numbat 不做的事:

不做 prompt injection 检测。那是模型层防御,不是端侧 Agent 安全。 – 不替代 SIEM / EDR。Numbat 的检测对象是 Agent 的高层意图和动作序列,不是网络流量、进程、文件。 – 不做云端 Agent 安全。Numbat 是端侧 hook,云端 Agent 在容器里跑,不在它的覆盖范围。

我的判断

三件事连在一起看:

1. 7 月 29 日 Numbat 开源——Agent 安全的事实标准雏形; 2. 7 月 29 日 Vending-Bench Opus 5 打破 11 次停战——Agent 长期运行的事故模式可复现; 3. 7 月 30 日 Anthropic 披露 Claude 在真实系统入侵——前沿模型本身承认这是系统性风险。

Numbat 的开源时机不是巧合。Perplexity 在押注一个判断:2026 H2 的企业 AI 部署最大的拦路虎不是模型不够强,是 Agent 在生产环境里的运行时安全。这套逻辑如果成立,Perplexity 的角色就从「搜索公司」变成「Agent 时代的基础设施供应商」。

短期内值得关注的几个延伸:

– 其他 Agent 厂商(Anthropic、OpenAI、Google、Cognition、Cursor)是否愿意把 hook 协议标准化; – EDR 厂商(CrowdStrike、SentinelOne、Microsoft Defender)是否会集成 Numbat 作为 Agent 层; – Numbat 的规则集是否会被纳入 SOC 2 / ISO 27001 这类合规框架的检查项。

参考: – Perplexity 官方研究博文: https://research.perplexity.ai/articles/securing-agents-across-perplexity’s-client-endpoints-with-numbat – GitHub 仓库: https://github.com/perplexityai/numbat – Perplexity X 公告: https://x.com/perplexity_ai/status/2082511900580196596 – 安全分析: https://runtimewire.com/article/perplexity-open-sources-numbat-ai-agent-security

发表回复

人生梦想 - 关注前沿的计算机技术 acejoy.com 🐾 步子哥の博客 🐾 背多分论坛 🐾 借一步网 🐾 智柴网 沪ICP备2024052574号-1