静态加密
密钥以加密形式存储,只有在通过审批的端点请求时才会在主机边界注入。
沙箱执行
工具在容器中运行,受到资源限制,并且只能访问允许列表中的端点。
泄漏检测
出站流量会被实时扫描,疑似密钥数据会在外泄前被阻止。
网络白名单
工具只能访问预先批准的端点,不能悄悄连接未知主机。
数据流
这张安全架构图展示了 IronClaw 的纵深防御思路:数据在到达 LLM 与外部服务之前,会依次经过四层独立保护。
提示注入防护
针对提示注入,IronClaw 通过多层机制进行保护:- 输入校验:长度、编码与禁止模式检查
- 清洗器:转义危险内容
- 策略引擎:按严重级别执行不同处理动作
- 泄漏检测器:扫描 15 种以上的密钥模式
- 工具输出包装:采用带转义提示的 XML 格式
泄漏检测器
IronClaw 会扫描所有发往 LLM 的输入,无论是用户输入还是工具执行结果,以识别潜在的敏感信息泄漏。 泄漏检测器结合正则模式与启发式规则来识别潜在密钥:| 模式 | 示例 |
|---|---|
| API 密钥 | sk-..., ak-... |
| Token | ghp_..., sess-... |
| 私钥 | -----BEGIN RSA PRIVATE KEY----- |
| 连接字符串 | postgres://user:pass@... |
| AWS 凭证 | AKIA... |
| GitHub Token | ghp_... |
命令注入检测
Shell 命令会被检查是否存在注入尝试:凭证管理
工具不能直接访问密钥。相反,它们只声明自己需要哪些 key、OAuth token 或 API 凭证,然后构造请求,由网络代理在出站时注入这些凭证,而不会把它们暴露给容器。受限的网络访问
工具必须明确声明自己可以访问哪些外部服务。这通过智能体配置中的capabilities 部分完成: