Hotdry.

Article

Claw Patrol:面向AI Agent的声明式安全防火墙与多协议网关

Deno团队开源的Claw Patrol通过WireGuard隧道、多协议解析与HCL声明式策略,为AI Agent构建运行时安全边界,解决凭证泄露与非HTTP协议管控难题。

2026-06-12security

AI Agent 正在从实验性工具演变为生产环境的运维主力,能够自动处理 PagerDuty 告警、查询日志、执行 kubectl 命令甚至回滚故障部署。然而,这种能力伴随根本性安全矛盾:Agent 需要广泛访问生产系统(AWS、GCP、Postgres、Kubernetes、Slack 等)才能发挥作用,但权限越大,潜在危害也越严重 —— 一次提示词注入、幻觉或错误的工具调用,就可能触发kubectl delete namespace prodDROP TABLE users

Deno 团队近期开源的Claw Patrol项目,正是针对这一困境的工程化回应。不同于传统 LLM 网关或 HTTP 代理仅关注模型调用或 HTTP 流量,Claw Patrol 在 Agent 与生产系统之间建立了一道支持多协议的声明式安全边界。

现有安全方案的盲区

在 Claw Patrol 出现之前,业界已有多类 Agent 安全工具,但各自存在明显局限:

LLM 网关与内容护栏(如 Helicone、Portkey、NeMo Guardrails)专注于监控和过滤模型调用本身,但 Agent 与 Postgres、Kubernetes 等服务的交互完全绕过这些网关。HTTP 工具代理(如 httpjail、Crab Trap)能够拦截出站 HTTP 请求,却无法处理 SQL、SSH 等非 HTTP 协议。进程沙箱(如 NVIDIA OpenShell)主要限制 Agent 对本地资源的访问,对通过网络连接的外部服务缺乏细粒度控制。凭证注入代理虽能终止 TLS 并注入凭证,但通常仅支持 HTTP 方法 / URL 匹配,缺乏对 SQL 动词、K8s 资源类型等协议语义的理解。

正如 Deno 团队所指出的,这些方案 "各自解决了部分问题",但 "对于需要接触真实生产系统的 Agent 而言,这个缺口就是整个游戏的关键"。

Claw Patrol 的三层架构

Claw Patrol 的核心架构由三个层次构成:隧道层网关层策略引擎

隧道层使用 WireGuard 或 Tailscale 将 Agent 流量安全路由至网关,使 Agent 能够访问其主机原本无法直接触及的网络(如 VPC 内的 Aurora 数据库、通过 EKS API Server 代理的 Kubernetes 集群)。这种设计让 Agent 无需持有 VPN 凭证或复杂的网络配置即可访问受限资源。

网关层是 Claw Patrol 的技术核心。它终止 TLS 连接,解析内部协议语义,并执行凭证隔离—— 真实密钥存储在网关而非 Agent 进程中。Agent 发送的是占位符(如{{github_pat}}),网关在 wire 层将其替换为实际凭证。这意味着即使 Agent 进程被入侵,攻击者也无法窃取它从未持有的密钥。

策略引擎基于 HashiCorp Configuration Language(HCL)实现声明式规则定义。规则可以匹配协议特定维度:HTTP 的方法、路径和正文;SQL 的动词(SELECT/INSERT/DROP)、表名和函数;Kubernetes 的动词、资源类型和命名空间。

声明式策略实战

Claw Patrol 的策略语法直观且表达力强。以下是一个阻止 Agent 读取 Kubernetes Secrets 的规则示例:

rule "k8s-no-secrets" {
  endpoints = [kubernetes.deploy-dev, kubernetes.deploy-prod]
  condition = "k8s.resource == 'secrets'"
  verdict   = "deny"
  reason    = "Secret values must not leave the cluster via the agent"
}

判决(verdict)不仅限于简单的 allow/deny,还支持审批链机制。Deno 团队实际使用这一功能来管控客服回复:Agent 起草的回复首先由 LLM 检查 Markdown 格式和语气,然后推送到 Slack 频道等待人工审批或编辑。这种 "模型 + 人工" 的复合审批模式,为高影响操作提供了双重保险。

对于数据库访问场景,可以配置规则允许 Agent 执行 SELECT 查询但禁止 DROP/DELETE 操作,甚至限制只能访问特定表或列。这种细粒度的 SQL 层控制,是传统 HTTP 代理无法实现的。

落地考量与成熟度评估

Claw Patrol 采用 MIT 许可证开源,目前处于alpha 阶段。这意味着功能可用但 API 可能变化,生产环境部署需要评估维护成本。

适用场景包括:需要让 Agent 访问生产数据库但限制写操作的团队;使用 Kubernetes 且希望防止 Agent 误删资源的组织;希望实现 "凭证零接触" 架构以降低泄露风险的企业。

部署拓扑建议采用独立网关实例,通过 WireGuard/Tailscale 与 Agent 主机建立隧道,网关本身部署在能够访问目标资源的网络位置(如 VPC 内部或拥有相应 IAM 角色的节点)。

协议扩展方面,当前支持的协议以 Deno 团队需求为主(HTTP、Postgres、Kubernetes),其他协议需要基于提供的文档自行实现解析器。对于 TypeScript/Deno 生态用户,这种扩展相对直接。

结语

Claw Patrol 的价值在于它不试图改变 Agent 的行为(毕竟 Claude Code、Codex 等大多不是自研代码),而是在 Agent 外部建立一道可审计、可配置的安全边界。通过将凭证管理、协议解析和策略执行集中到网关层,它解决了 Agent 安全中最棘手的问题:如何在赋予 Agent 足够权限以完成有用工作的同时,防止其造成不可逆的破坏。

对于正在将 AI Agent 引入生产运维的团队,Claw Patrol 提供了一种务实的中间路线 —— 既不像完全锁死权限那样让 Agent 沦为摆设,也不放任其拥有无限制的生产访问。


资料来源

security

内容声明:本文无广告投放、无付费植入。

如有事实性问题,欢迎发送勘误至 i@hotdrydog.com