Agent Sandboxing
Erfahre, wie das Sandboxing von Agenten KI-Agenten isoliert, den Zugriff auf Dateien und Netzwerke beschränkt und Risiken durch Prompt-Injection, Tool-Missbrauch und Datenabfluss verringert.
Beim Sandboxing von Agenten werden ein KI-Agent, seine Tools oder der von ihm generierte Code in einer eingeschränkten Ausführungsumgebung ausgeführt. Die Sandbox begrenzt, auf welche Dateien, Netzwerke, Anmeldedaten, Prozesse und Rechenressourcen der Agent zugreifen kann. Trifft der Agent eine unsichere Entscheidung oder verarbeitet er schädliche Anweisungen, verringern diese Grenzen die möglichen Auswirkungen auf Produktivsysteme und sensible Daten.
So funktioniert das Sandboxing von Agenten#
Ein Agent arbeitet häufig über einen Agenten-Harness, der ein Modell mit Tools, Speicher, APIs und Ausführungsschleifen verbindet. Sandboxing fügt eine Durchsetzungsebene um diese Funktionen hinzu. Statt darauf zu vertrauen, dass das Modell eine Aufforderung wie „greife nicht auf private Dateien zu“ befolgt, verhindert die Ausführungsumgebung diesen Zugriff technisch.
Eine praktische Sandbox kann Folgendes kombinieren:
- Ein kurzlebiger Container oder eine virtuelle Maschine, die nach der Aufgabe gelöscht wird.
- Ein schreibgeschütztes Basisdateisystem mit einem kleinen beschreibbaren Arbeitsbereich.
- Regeln für ausgehenden Netzwerkverkehr, die nur genehmigte Domains oder interne Dienste zulassen.
- Kurzlebige Anmeldedaten, die auf den aktuellen Benutzer und die aktuelle Aufgabe beschränkt sind.
- Begrenzungen für CPU, Arbeitsspeicher, Speicherplatz, Prozesse und Ausführungszeit.
- Prüfprotokolle zu Tool-Aufrufen, Dateiänderungen, Netzwerkanfragen und Richtlinienverstößen.
Linux-Sicherheitsmechanismen wie das Docker-Standardprofil für seccomp können Systemaufrufe einschränken, während Docker-Ressourcenbeschränkungen den Ressourcenverbrauch begrenzen. In Clustern können Kubernetes-Netzwerkrichtlinien steuern, mit welchen Diensten eine Agenten-Workload kommuniziert.
Warum Sandboxing für Agenten wichtig ist#
Agenten können über Funktionsaufrufe und die Verwendung von Tools Aktionen ausführen. Dadurch können Fehler schwerwiegendere Folgen haben als eine falsche Antwort eines Chatbots. Ein Programmieragent könnte Shell-Befehle ausführen, während ein Betriebsagent Datensätze aktualisieren oder Bereitstellungen auslösen könnte.
Der OWASP-Leitfaden zur Sicherheit von KI-Agenten nennt Risiken wie den Missbrauch von Tools, die Ausweitung von Berechtigungen, die Manipulation des Speichers und den Abfluss von Daten. Sandboxing hilft, diese Risiken einzudämmen, insbesondere wenn ein Agent auf eine Prompt-Injection stößt, die in einer Webseite, einem Dokument, Bildmetadaten oder einer Tool-Antwort verborgen ist. Der OWASP-Leitfaden zur Verhinderung von Prompt-Injection empfiehlt mehrschichtige Schutzmaßnahmen, da sich nicht jede schädliche Anweisung zuverlässig allein durch das Filtern von Eingaben erkennen lässt.
Sandboxing wirkt auch einer übermäßigen Eigenständigkeit entgegen. Ein Agent mit unnötigen Tools, weitreichenden Anmeldedaten und uneingeschränkter Autonomie kann nach einem Modellfehler oder einer manipulierten Eingabe schädliche Aktionen ausführen. Der OWASP-Leitfaden zu übermäßiger Eigenständigkeit empfiehlt, die Funktionen von Tools, Berechtigungen und Autonomie zu begrenzen, statt sich allein auf das Verhalten des Modells zu verlassen.
Sandboxing und verwandte Sicherheitsmaßnahmen#
Sandboxing für Agenten ergänzt andere Sicherheitsmechanismen, ersetzt sie aber nicht:
- KI-Schutzmechanismen: Schutzmechanismen prüfen Eingaben, Ausgaben oder vorgeschlagene Aktionen. Eine Sandbox setzt Umgebungsbeschränkungen durch, selbst wenn ein Schutzmechanismus eine Bedrohung nicht erkennt.
- Zugriffskontrolle: Die Autorisierung legt fest, ob eine Aktion zulässig ist. Sandboxing begrenzt die verfügbaren Ressourcen, falls die Autorisierungslogik umgangen wird. Die bewährten Verfahren von AWS für Identitäts- und Zugriffsverwaltung legen Wert auf temporäre Anmeldedaten und Berechtigungen nach dem Prinzip der geringsten Privilegien.
- Containerisierung: Container bündeln und isolieren Prozesse, doch die Standardeinstellungen eines Containers bilden nicht unbedingt eine starke Sicherheitsgrenze. Der Ultralytics-Docker-Schnellstart ermöglicht konsistente, isolierte Computer-Vision-Umgebungen. Produktions-Sandboxes benötigen jedoch zusätzliche Einschränkungen für Dateisysteme, Fähigkeiten, Netzwerke und Ressourcen.
- Testumgebungen: Eine „Sandbox“ für die Entwicklung ist eine nicht für den Produktivbetrieb bestimmte Kopie eines Systems. Sandboxing für Agenten schränkt gezielt die Ausführung ein und kann sowohl in der Entwicklung als auch im Produktivbetrieb eingesetzt werden.
Fähigkeiten für Agenten von Ultralytics bieten wiederverwendbare Anweisungen für Programmieragenten, schaffen aber keine Isolationsgrenze. Ihre Skripte und Abhängigkeiten sollten weiterhin überprüft und mit den passenden Berechtigungen ausgeführt werden.
Anwendungen in der Praxis#
Programmieragenten in Unternehmen: Ein Programmieragent kann ein Repository untersuchen, Dateien ändern und Tests in einem temporären Arbeitsbereich ausführen. Die Sandbox bindet nur das zugewiesene Repository ein, blockiert Anmeldedaten für den Produktivbetrieb, beschränkt ausgehenden Datenverkehr auf genehmigte Paketregister und verlangt vor dem Zusammenführen oder Bereitstellen eine menschliche Freigabe. Eine kompromittierte Abhängigkeit oder eingeschleuste Anweisung kann daher nicht uneingeschränkt den internen Speicher durchsuchen oder Quellcode übertragen.
Agenten für den Betrieb mit Bildverarbeitung: Ein Lageragent kann Kamerabilder mit Ultralytics YOLO26 analysieren, blockierte Gänge erkennen und Wartungsaufträge erstellen. Seine Sandbox kann schreibgeschützten Zugriff auf eingehende Bilder und Netzwerkzugriff ausschließlich auf die Inferenz- und Auftragsverwaltungsschnittstellen gewähren. Der Agent sollte keinen uneingeschränkten Zugriff auf die Kameraverwaltung, Mitarbeiterdatensätze oder Bereitstellungsanmeldedaten erhalten.
Der Wahrnehmungsschritt kann den dokumentierten Ultralytics-Workflow für Vorhersagen mit YOLO verwenden:
from pathlib import Path
from ultralytics import YOLO
source = "https://ultralytics.com/images/bus.jpg"
output_path = Path("sandbox_result.jpg")
# Visuelle Inferenz im eingeschränkten Arbeitsbereich ausführen
model = YOLO("yolo26n.pt")
results = model(source)
result = results[0]
result.save(filename=str(output_path))Der Python-Code führt eine gewöhnliche Inferenz aus; die umgebende Laufzeitumgebung stellt die Sandbox bereit, indem sie Dateien, Netzwerkzugriff, Anmeldedaten und Ressourcen beschränkt.
Praktische Gestaltungshinweise#
Gewähre zunächst keinen Zugriff und erlaube ausdrücklich nur, was die jeweilige Aufgabe erfordert. Verwende temporäre Arbeitsbereiche, kurzlebige Anmeldedaten, schreibgeschützte Einbindungen, Zulassungslisten für ausgehenden Netzwerkverkehr, Zeitlimits und Ressourcenlimits. Verlange für unumkehrbare Aktionen eine Freigabe und halte Autorisierungsprüfungen außerhalb des Modells.
Protokolliere jeden Aktionsversuch, einschließlich blockierter Vorgänge, ohne Geheimnisse in den Protokollen offenzulegen. Teams können die Überwachung von Bereitstellungen in der Ultralytics Platform verwenden, um Anfragen an Bildverarbeitungs-Endpunkte, Latenz, Fehler und den Zustand innerhalb von Agenten-Workflows zu beobachten. Teste schließlich das vollständige System mit schädlichen Dateien, indirekten Aufforderungen, wiederholten Tool-Aufrufen und Versuchen, Ressourcen zu erschöpfen. Das Playbook zum KI-Risikomanagement-Framework des NIST bietet einen umfassenderen Rahmen für die Steuerung, Messung und kontinuierliche Verwaltung dieser Risiken.









