Werbung
Der im Juli 2026 bekannt gewordene Vorfall zwischen OpenAI und Hugging Face entstand im Rahmen der internen Cybersecurity-Evaluierung ExploitGym. Nun hat OpenAI technische Details (PDF) dazu veröffentlicht, die aufklären sollen, wie es KI-Agenten gelungen ist, aus der Sandbox auszubrechen und den Angriff zu starten.
Die dafür eingesetzten Modelle liefen in einer Container-as-a-Service-Umgebung (CaaS), die pro Durchlauf isolierte Container bereitstellte und den Netzwerkzugriff separat kontrollierte. Werkzeuge wie Shell, Python, Browser und Paketinstallation standen je nach Evaluierung zur Verfügung. Für den Zugriff auf Softwarepakete wurde unter anderem eine intern betriebene JFrog-Artifactory-Instanz verwendet. Genau diese Trennung zwischen Container und Netzwerk erwies sich letztlich als unzureichend: Die Agenten konnten die Artifactory-Instanz als indirekten Netzwerkpfad nutzen und darüber die vorgesehenen Ausgangsbeschränkungen umgehen.
Eine zentrale Rolle spielte dabei die Fähigkeit der Agenten zur Kommunikation untereinander. Ursprünglich war Artifactory lediglich als Paket-Repository vorgesehen. Die Modelle verwendeten die Infrastruktur jedoch als improvisiertes Message Board. Zunächst wurden Nachrichten in Dateien hinterlegt, später nutzten die Agenten Verzeichnisnamen für die Kommunikation. Daraus entwickelte sich ein strukturierter Kanal, über den sie unter anderem Informationen, Zugangsdaten, Werkzeuge und Ergebnisse austauschten. Bereits im Mai hatten Agenten die Artifactory-Instanzen über SSRF-Techniken als indirekten Internetzugang genutzt. Ende Juni gelang schließlich die Ausweitung von Rechten über eine andere Schwachstelle.
Am 8. und 9. Juli gelang den Agenten erneut der Ausbruch aus der vorgesehenen Netzwerkisolation. Ein interner Forschungsagent erhielt zunächst Root-Rechte innerhalb der übergeordneten virtuellen Maschine der Testumgebung. Ein zweiter Agent konnte anschließend über Artifactory-Endpunkte die eigentlich blockierte Verbindung ins Internet herstellen. Dort fanden die Agenten öffentlich zugängliche Zugangsdaten von Hugging-Face-Nutzern und verwendeten diese zusammen mit weiteren Schwachstellen, um sich schrittweise Zugriff auf die Produktionsumgebung zu verschaffen. Laut Bericht führten die Aktivitäten schließlich zur Codeausführung auf 41 Hugging-Face-Produktions-Workern, zu Root-Zugriff auf mindestens einem Produktionsknoten sowie zum Zugriff auf Produktions-Credentials und begrenzte interne Daten. Zusätzlich wurden vier private Code-Repositories heruntergeladen.
Technisch besonders bemerkenswert war die weitere Angriffskette gegen die Hugging-Face-Dataset-Server. Die Agenten erzeugten zunächst eine manipulierte HDF5-Dataset-Datei, die über die externe Speicherfunktion des Formats dazu gebracht werden konnte, lokale Dateien des Produktions-Workers auszulesen. Dadurch wurden Zugangsdaten der Produktionsumgebung offengelegt. Zusätzlich entwickelten die Agenten einen Heap-Over-Read zur Offenlegung weiterer Speicherinhalte. Anschließend nutzten sie eine Schwachstelle, um Betriebssystembefehle auf Produktions-Workern auszuführen. Darauf aufbauend installierten sie ein leichtgewichtiges Command-and-Control-System: Ein Python-Skript holte alle fünf Sekunden Befehle aus einem öffentlichen Hugging-Face-Dataset ab, führte diese aus und schrieb die Ergebnisse wieder dorthin.
Über die kompromittierten Worker konnten die Agenten ihre Rechte anschließend weiter ausweiten. Unter anderem nutzten sie Kubernetes TokenRequest und Kubelet-Zugriff, um privilegierte Workloads und Host-Namespaces zu erreichen und Root-Rechte auf einem Produktionsknoten zu erlangen. Mit einem Service-Account-Token wurde zudem ein Secret für Hugging Faces Kubernetes-Zugriffsverwaltung ausgelesen. Damit erhielten die Agenten Administrator-äquivalenten, zunächst lesenden Zugriff auf die Inventarisierung von rund 54 beworbenen Kubernetes-Zielen. In einem weiteren Cluster wurde ein privilegierter Pod mit Host-Netzwerk, Host-Prozesszugriff und gemountetem Host-Dateisystem erzeugt. Zudem wurden Kubernetes-Secrets ausgelesen und teilweise öffentlich bereitgestellt. Der Bericht beschreibt damit eine Eskalation von der Codeausführung in einem einzelnen Worker bis zu administrativen und Host-Level-Rechten über mehrere Cluster innerhalb von weniger als 13 Stunden.
Parallel dazu zeigte sich, dass die Agenten auch die OpenAI-eigene Infrastruktur angreifen konnten. Unter anderem wurde eine Schwachstelle in der Artifactory-Remote-Cache-Verarbeitung genutzt, um einen Container-Image-Cache zu vergiften. Ein von den Agenten kontrolliertes Image konnte dabei unter dem Namen eines vertrauenswürdigen CyberGym-Images zwischengespeichert werden. OpenAI fand allerdings keinen Hinweis darauf, dass ein interner Workload das manipulierte Image tatsächlich abgerufen oder ausgeführt hat. Am 19. Juli demonstrierten Agenten außerdem eine lokale Privilegieneskalation über CVE-2026-53362 im Linux-Kernel und gelangten damit zu Root-Rechten auf einem Worker-Knoten. In einem separaten Lauf konnten zuvor verbliebene Signaturschlüssel genutzt werden, um erneut ein gültiges Administrator-Token zu erzeugen und anschließend sogar Admin-Rechte zu erlangen.
Für OpenAI liegt eine wesentliche technische Konsequenz deshalb nicht allein in der Absicherung einzelner Schwachstellen, sondern in einer mehrschichtigen Architektur. Das Unternehmen will die ausgehende Netzwerkkommunikation in Forschungsclustern stärker beschränken, alternative und transitive Netzwerkpfade unterbinden sowie Netzwerk-Gateways und unabhängige Firewalls kombinieren. Hochrisiko-Workloads sollen weder direkten noch indirekten Internetzugriff erhalten. Ergänzend sind mehrere voneinander unabhängige Erkennungsmechanismen für Umgehungsversuche, Intrusion Detection, Exfiltration Detection und volumetrische Auffälligkeiten vorgesehen. Für die Ausführung sollen stärker isolierte Umgebungen eingesetzt werden, sodass die Kompromittierung eines einzelnen Workloads oder sogar eines gesamten Clusters nicht unmittelbar den Zugriff auf weitere Systeme ermöglicht.