agentbastion
AI 代理的三层安全防火墙:防注入、守工具、清敏感数据
agentbastion 是 AI 代理的安全防火墙,专门在企业级 AI 代理与外部世界之间建立检查点。随着企业纷纷将聊天机器人、副驾驶和 Agent 接入自有数据和工具,安全问题几乎无人关注——这正是 agentbastion 要解决的。
核心能力
agentbastion 提供三层安全防护,覆盖 AI 代理的输入、处理和输出全过程:
- 入站扫描(Inbound Scan):在用户输入到达代理之前,拦截提示词注入(Prompt Injection)和越狱攻击(Jailbreak),阻止恶意指令被模型执行;
- 工具守卫(Tool Guard):监控代理实际执行的操作,阻止危险行为(如批量发邮件、删除数据、退款、敏感数据外泄),这是 agentbastion 的核心差异化能力——大多数方案只扫描提示词,极少真正守护代理的实际操作;
- 出站编辑(Outbound Redact):在代理回复发出前,清除其中的个人身份信息(PII)和密钥/令牌,防止数据泄露。
支持可选的 LLM 评判器(基于 Claude Haiku),在启发式规则的基础上进一步捕获更隐蔽的注入攻击。
安装配置
agentbastion 提供两种安装方式:
-
核心包(离线,无需模型): pip install agentbastion
-
完整包(含 LLM 评判器): pip install "agentbastion[judge]"
使用步骤
使用装饰器模式集成到现有代理代码中,步骤如下:
-
导入防火墙模块: from agentbastion import Firewall, guard, load_policy
-
初始化防火墙和策略: firewall = Firewall() # 启发式规则 + PII 编辑 firewall.tool_policy = load_policy("allowlist.yaml") # 工具调用白名单
-
用 @guard 装饰器包装代理函数: @guard(firewall) def my_agent(user_input: str) -> str: ... # 你的代理代码,在工具循环中调用 firewall.check_tool() return reply
-
(可选)在工具循环中显式检查工具调用: firewall.check_tool(tool_name, tool_input)
-
查看审计日志: python -m agentbastion.events agentbastion.jsonl
适用场景
- 企业级 AI 代理面临外部用户输入时的防护;
- 聊天机器人和副驾驶产品上线前的安全加固;
- 金融、医疗、法律等高敏感行业使用 AI 代理时;
- API 接口中转的 AI 代理安全层;
- 任何处理外部非结构化输入的 AI 系统。
适用人群
- 安全团队:负责评估和加固 AI 系统安全;
- 开发者:构建 AI 代理产品并关注安全合规;
- 企业决策者:在拥抱 AI 能力的同时控制数据泄露风险。
工作原理
agentbastion 部署在代理的输入和输出边界。输入数据首先经过入站扫描(正则签名 + 可选 LLM 评判),命中恶意模式即阻断;代理执行工具前,工具守卫根据 allowlist.yaml 策略决定是否放行;代理回复发出前,出站编辑模块用正则识别 SSN、信用卡号、API 密钥、私钥、邮箱等敏感信息并替换。所有决策均写入 JSONL 审计日志供事后分析。
工具守卫的allowlist 策略示例:
default: deny allow: [get_order_status, search_faq] deny: [issue_refund] # 资金操作必须人工审批 rate_limits: {get_order_status: 5} # 频率限制
LLM 评判器(可选)基于 Claude Haiku 4/5,在启发式规则无法判断时提供更深层的语义分析,评判器故障时自动降级(fails open)不影响服务可用性。
评论与建议
登录 后参与评论或提建议