krawolski/ai-agent-security-layer
GitHub: krawolski/ai-agent-security-layer
为 Claude Code CLI 及自主 AI 代理提供纵深防御的安全层,通过多机制组合防御 prompt injection 和数据泄露。
Stars: 0 | Forks: 0
# 安全层 — Dariusz 专属套件 (Abundo Space)
专为 Claude Code CLI
和自主 AI 代理打造的全套防 prompt injection 安全层。
**编写者:** Paweł Krawczyk, JustAutomate · 2026-07-20
## 套件包含内容
| 文件 | 功能描述 | 如何接入 |
|------|---------|-----------|
| `security-rules.md` | CLAUDE.md 规则 — 通过 system prompt 防御 injection | 粘贴到你的 `CLAUDE.md` 中,或作为 `.claude/rules/security.md` 放入 |
| `guardrails-v2.py` | 6 个 Python 模块 — 清理、allowlist、输出扫描、canary token、rate limiter、audit log | 在你的 agent 中执行 `import guardrails_v2`,或单独运行 |
| `hook-pre-tool.py` | PreToolUse Hook — 在执行前拦截危险的工具调用 | 放入 `.claude/hooks/` 并在 `settings.json` 中添加条目 |
| `hook-post-tool.py` | PostToolUse Hook — 扫描工具结果以检测数据泄露和 injection | 放入 `.claude/hooks/` 并在 `settings.json` 中添加条目 |
## 分步安装说明
### 1. CLAUDE.md 中的规则
打开你的 `CLAUDE.md`(或创建 `.claude/rules/security.md`)并粘贴
`security-rules.md` 的内容。这是最重要的一层 — 它指导模型
如何处理不受信任的数据。
### 2. Claude Code Hooks
```
# 复制 hooki
cp hook-pre-tool.py ~/.claude/hooks/security-pre-tool.py
cp hook-post-tool.py ~/.claude/hooks/security-post-tool.py
```
添加到 `.claude/settings.json`:
```
{
"hooks": {
"PreToolUse": [
{
"type": "command",
"command": "python ~/.claude/hooks/security-pre-tool.py"
}
],
"PostToolUse": [
{
"type": "command",
"command": "python ~/.claude/hooks/security-post-tool.py"
}
]
}
}
```
### 3. 代理代码中的 Guardrails
```
from guardrails_v2 import SecurityLayer
security = SecurityLayer(
allowed_domains=["geoportal.gov.pl", "uldk.gugik.gov.pl"],
allowed_recipients=["klient@firma.pl"],
audit_log="security-audit.jsonl"
)
# 在将抓取的内容放入 prompt 之前:
result = security.process_untrusted(raw_text, source="web")
if result["blocked"]:
print("ZABLOKOWANO:", result["flags"])
else:
prompt += result["wrapped"] # bezpieczna wersja
# 在将任何内容发送到外部之前:
check = security.scan_outbound(message_text)
if not check["safe"]:
print("WSTRZYMANO:", check["issues"])
```
### 4. 测试
```
python guardrails-v2.py # demo z atakami
python hook-pre-tool.py --test # test hooka
python hook-post-tool.py --test # test hooka
```
## 防御架构 — defense-in-depth
```
Warstwa 1: CLAUDE.md rules ← model wie, czego NIE robić
Warstwa 2: PreToolUse hook ← blokada PRZED wykonaniem narzędzia
Warstwa 3: sanityzacja wejścia ← guardrails-v2: spotlighting + canary
Warstwa 4: PostToolUse hook ← skan wyników narzędzi
Warstwa 5: skan wyjścia ← guardrails-v2: anty-eksfiltracja
Warstwa 6: audit log ← zapis każdej decyzji do przeglądu
```
每一层独立运行。即使某一层失效,其他层仍能捕获攻击。
## “致命三元组”原则 (Willison 2025)
当 agent 同时具备以下条件时,将面临极其严重的威胁:
1. 访问私有数据的权限
2. 接触不受信任的内容(web、文件、邮件)
3. 向外发送的能力
**最佳防御:在架构上打破三元组。** 读取 web 的 agent
不应有权访问客户数据库。发送邮件的 agent
不应看到抓取到的原始内容。
本套件是针对无法立即完全打破三元组的情况而提供的防御层。
标签:AI安全, AI智能体, Chat Copilot, Claude Code, Homebrew安装, 安全合规, 安全网关, 提示词注入防御, 网络代理, 逆向工具