LeRobot-Lücke erlaubt unauthentifizierte RCE auf Robotik-Servern

Im Open-Source-Robotikframework LeRobot von Hugging Face wurde eine kritische Remote-Code-Execution-Lücke gefunden. Wer den Service-Port erreichen kann, kann die Maschine ohne Benutzername, Passwort oder Zertifikat übernehmen. Die Schwachstelle läuft unter CVE-2026-25874.

Wo der Fehler steckt

LeRobot setzt häufig darauf, trainierte Policy-Modelle auf einem GPU-Server auszuführen, während der Roboter über einen gRPC-PolicyServer Aktionsanweisungen abruft. Diese Architektur ist nicht das Problem. Gefährlich ist die Kommunikationsschicht, in der eingehende Daten mit Pythons pickle.loads() verarbeitet werden.

Pickle ist kein passives Austauschformat wie JSON oder protobuf. Während der Deserialisierung kann es beliebige Python-Objekte rekonstruieren und Logik ausführen, bis hin zur Ausführung von Befehlen. Betroffen sind die RPC-Handler SendPolicyInstructions() und SendObservations(). Beide nehmen rohe Bytes entgegen und übergeben sie ohne Typprüfung direkt an pickle.

Ein präpariertes Payload mit einem os.system()-Aufruf kann daher sofort beim Deserialisieren Befehle ausführen. Verschärft wird das Risiko dadurch, dass der PolicyServer standardmäßig add_insecure_port() nutzt: kein TLS, keine Authentifizierung. Auch im internen Netz reicht Erreichbarkeit aus.

Warum Robotik-Stacks besonders heikel sind

Bestätigt betroffen ist LeRobot v0.4.3 aus PyPI. Frühere Versionen mit derselben asynchronen Inferenzarchitektur sind wahrscheinlich ebenfalls exponiert. Das Projekt zählt mehr als 21.500 GitHub-Stars und gehört zu den sichtbarsten Open-Source-Projekten in der Robotik; zum Zeitpunkt des Ausgangsartikels gab es noch keine offizielle Fix-Version.

Ein kompromittierter PolicyServer ist mehr als ein gewöhnlicher App-Server. Solche Systeme laufen oft mit hohen Rechten auf GPU-Maschinen, liegen neben Datensätzen und Modellgewichten und sind direkt mit physischer Roboterhardware verbunden. In Produktionslinien oder medizinischer Robotik wird aus einem Softwarefehler schnell ein Sicherheitsproblem im physischen Raum.

Was Teams jetzt tun sollten

Forscher empfehlen, pickle durch JSON, native protobuf-Felder oder Hugging Faces safetensors zu ersetzen, TLS über sichere gRPC-Ports zu aktivieren, den Dienst an private Interfaces zu binden, den Port per Firewall abzuschotten und den PolicyServer bis zu einem echten Patch nicht offenzulegen. Das senkt das Risiko, ersetzt aber nicht die nötige korrigierte Version von Hugging Face.

Die größere Lehre erinnert an frühere PyTorch-Modell-Dateiprobleme. Machine-Learning-Teams nutzen pickle, weil es schnell, bequem und tief im Ökosystem verankert ist. Sobald Modelldateien, Policy-Anweisungen oder Observationskanäle externe Eingaben annehmen, wird diese Bequemlichkeit zur Ausführungsfläche.

Quellen: CocoLoop, CVE-2026-25874: Hugging Face LeRobot Unauthenticated RCE via Pickle Deserialization (Resecurity); Critical CVE-2026-25874 Leaves Hugging Face LeRobot Open to Unauthenticated RCE (The Hacker News)