
Open-Source-Sandbox-Laufzeitumgebung für KI-Agenten — gVisor/Docker-Isolation, Credential-Vault, unveränderliches Audit-Log. Entwickelt nach CVE-2026-25253.
Die Open-Source-Sandbox-Laufzeitumgebung für KI-Agenten
Führen Sie KI-Agenten mit Zuversicht aus. Jeder Agent erhält seinen eigenen Berechtigungsumfang, einen Anmeldedaten-Tresor, ein Prüfprotokoll und einen Notausschalter.
Am 27. Januar 2026 wurde CVE-2026-25253 zur ersten CVE, die jemals einem agentischen KI-System zugewiesen wurde. Eine kritische WebSocket-Hijacking-Schwachstelle in OpenClaw ermöglichte Remote-Codeausführung mit einem Klick gegen jede exponierte Instanz – einschließlich solcher, die nur an localhost gebunden waren.
In derselben Woche infiltrierte die ClawHavoc-Kampagne 341+ bösartige Skills in OpenClaws Marktplatz. Jeder Skill, der von ClawHub installiert wurde, lief mit denselben Berechtigungen wie OpenClaw selbst – voller Festplattenzugriff, OAuth-Tokens, API-Schlüssel. Keine Sandbox. Kein Prüfprotokoll. Kein Notausschalter.
„Das Installieren eines Skills von ClawHub gewährt ihm Zugriff auf dieselben Ressourcen wie OpenClaw selbst. Standardmäßig gibt es keine Sandbox-Isolation zwischen Skills." — DEV Community Sicherheitsanalyse, April 2026
Die Zahlen:
AgentBox ist die strukturelle Lösung. Kein Patch – eine Laufzeitumgebung.
Jeder Agent, den Sie ausführen, erhält:
| Schutz | Wie |
|---|---|
| Zero-Trust-Berechtigungen | Agenten deklarieren genau, was sie benötigen. Nichts anderes ist zugänglich. |
| Isolation auf Kernel-Ebene | gVisor fängt jeden Syscall ab. Prompt-Injection kann diese Grenze nicht überschreiten. |
| Anmeldedaten-Tresor | AES-256-GCM-Verschlüsselung. Agenten sehen niemals rohe Geheimnisse – nur begrenzte Tokens. |
| Unveränderliches Prüfprotokoll | SHA-256-Hash-Kette. Jede Aktion wird protokolliert. Manipulationssicher. |
| Notausschalter | Beenden Sie jeden Agenten in unter 100 ms. Automatischer Abbruch bei Limitüberschreitung. |
| Ressourcenlimits | Zeit, Speicher, Anfragenanzahl – zur Laufzeit durchgesetzt, nicht bei der Konfiguration. |
Vor AgentBox Nach AgentBox
───────────────── ──────────────
Agent → voller Festplattenzugriff ❌ Agent → nur erlaubte Pfade ✅
Agent → gesamtes Netzwerk ❌ Agent → nur erlaubte Hosts ✅
Agent → rohe Geheimnisse ❌ Agent → begrenzte Tokens ✅
Kein Prüfprotokoll ❌ Jede Aktion protokolliert ✅
Kein Notausschalter ❌ Abbruch in <100 ms ✅
Skills laufen als root ❌ Kernel-isolierte Sandbox ✅
# Installieren
go install github.com/siyad01/agentbox/cmd/agentbox@latest
# Ein Manifest vor der Ausführung validieren
agentbox validate manifests/email-sorter.yaml
# Einen Agenten in einer Sandbox ausführen
agentbox run --manifest manifests/email-sorter.yaml python agent.py
# Anzeigen, was der Agent getan hat
agentbox audit --log logs/email-sorter-audit.log
# Überprüfen, ob das Protokoll manipuliert wurde
agentbox verify logs/email-sorter-audit.log
# Geheimnisse verwalten
agentbox vault add ANTHROPIC_API_KEY
agentbox vault list
Jeder Agent deklariert genau, was er benötigt. Nichts, was nicht aufgeführt ist, ist zugänglich.
name: "email-sorter"
version: "1.0.0"
description: "Liest Posteingang, kategorisiert E-Mails, schreibt in sortierten Ordner"
runtime: docker # oder: gvisor (Kernel-Ebene), firecracker (MicroVM)
permissions:
filesystem:
read:
- "~/Documents/inbox"
write:
- "~/Documents/sorted"
deny: # IMMER blockiert – selbst wenn in der Leseliste
- "~/.ssh"
- "~/.aws"
- "~/.config"
- "/etc"
network:
allow:
- "api.anthropic.com"
- "gmail.googleapis.com"
deny:
- "*" # alles andere blockieren
tools:
allow:
- "read_file"
- "write_file"
- "list_*"
deny:
- "execute_shell" # kein Shell-Zugriff, niemals
- "*_delete" # keine Löschwerkzeuge
credentials:
- ANTHROPIC_API_KEY # zur Laufzeit aus dem Tresor injiziert
- GMAIL_TOKEN # Agent sieht niemals den rohen Wert
limits:
max_tokens: 50000 # LLM-Token-Budget
max_duration: "30m" # nach 30 Minuten beendet
max_memory_mb: 256 # RAM-Obergrenze
max_requests: 500 # maximale Tool-Aufrufe
audit:
log_level: full
alert_on:
- filesystem_deny
- network_deny
- token_budget_80pct
log_path: "logs/email-sorter-audit.log"
agentbox run --manifest agent.yaml python agent.py
│
▼
┌─────────────────────────────────────────────────────┐
│ Policy-Engine │
│ Analysiert Manifest → erstellt Erlauben/Verweigern-Listen │
│ Validiert Signaturen → lehnt unsignierte Skills ab │
│ Injiziert Anmeldedaten aus dem Tresor │
└──────────────────────┬──────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────┐
│ Isolationsschicht │
│ │
│ Docker → Container + seccomp + cap-drop │
│ gVisor → User-Space-Kernel, Syscall-Interception │
│ Firecracker → dedizierter MicroVM-Kernel pro Agent │
│ │
│ Dateisystem: nur deklarierte Pfade eingebunden │
│ Netzwerk: nur deklarierte Hosts erreichbar │
│ Capabilities: ALLE entfernt, keine hinzugefügt │
└──────────────────────┬──────────────────────────────┘
│
┌────────────┼────────────┐
▼ ▼ ▼
Audit-Logger Anmeldedaten- Ressourcen-
(Hash-Kette) Tresor Monitor
jede Aktion AES-256-GCM Auto-Abbruch
protokolliert begrenzte Tokens bei Limit
Jede andere Sandbox stoppt an der Container-Grenze. Ein Agent, der eine Kernel-Schwachstelle ausnutzt, kann entkommen.
gVisor fängt jeden Syscall ab, bevor er den Host-Kernel erreicht:
Agent versucht: write("/home/user/.ssh/id_rsa")
│
▼
gVisor User-Space-Kernel
│
Pfad in Verweigerungsliste? → JA
│
▼
EPERM wird sofort zurückgegeben
Host-Kernel sieht diesen Syscall nie
Prompt-Injection kann diese Schicht nicht überqueren
agentbox <command> [options]
Befehle:
run Einen Agenten in einer Sandbox ausführen
validate Eine Manifestdatei validieren
kill Einen laufenden Agenten beenden
audit Agent-Prüfprotokolle anzeigen
verify Integrität des Prüfprotokolls überprüfen
vault Verschlüsselte Anmeldedaten verwalten
serve Den REST-API-Server starten
version Version anzeigen