Diese Schwachstelle rührt von einem grundlegenden Konstruktionsfehler bei der Deserialisierung von PyTorch-Modellen her, die das Pickle-Format zum Speichern von Modellgewichten verwenden und das Laden über torch.load() unterstützen. Um zu verhindern, dass bösartige Modelle Code ausführen, wird in der offiziellen Dokumentation dringend empfohlen, den Parameter weights_only=True zu verwenden, der theoretisch nur das Laden von Rohdatentypen wie "Dictionaries, Tensoren, Listen" erlaubt.
BREAKTHROUGH: Der Sicherheitsforscher Ji'an Zhou hat entdeckt, dass die "Sicherung" für diesen Parameter umgangen werden kann. Ein Angreifer kann speziell konstruierte Modelldateien erstellen, die den Deserialisierungs-Validierungsmechanismus deaktivieren, wenn weights_only=True, um beliebigen Python-Code auszuführen, wenn das Modell geladen wird - und so dieselben Systemprivilegien wie der PyTorch-Prozess erlangen.
Angriffsszene:
Verseuchung der Lieferkette: Böswillige Akteure laden vortrainierte Modelle mit Hintertüren auf Hugging Face hoch, die Entwickler herunterladen und in ihre Anwendungen integrieren, wodurch automatisch RCEs ausgelöst werden
Seitliche Bewegung von Cloud-Umgebungen: Kompromittierte Modelle können als Sprungbrett für den Zugriff auf Cloud-Speicher (S3, GCS) oder Datenbankanmeldeinformationen verwendet werden
Gefahren des Masseneinsatzes: Millionen von PyTorch-Nutzern in Schlüsselbereichen wie autonomes Fahren, medizinische Diagnostik, Finanzmodellierung usw.
Technische Tiefe: Die Schwachstelle liegt darin, dass der Pickle-Deserialisierer die Opcodes sequentiell interpretiert und sie ausführt, sobald er auf eine bösartige Anweisung stößt, ohne eine Volltextvalidierung abzuwarten. Ein Angreifer kann eine bösartige Ladung am Anfang einer Datei einfügen, den Code auslösen und dann Bytes einfügen, die die Dateistruktur zerstören, und so der Erkennung durch Blacklisting-Tools wie Picklescan entgehen.
Behebungen und Auswirkungen: Ein Patch wurde für PyTorch 2.6.0 veröffentlicht, aber es gibt eine Verzögerung im Upgrade-Zyklus für Unternehmen. Empfehlung: Deaktivieren Sie Modelle aus nicht vertrauenswürdigen Quellen, aktivieren Sie die SafeTensors-Formatsubstitution, implementieren Sie die Integritätsprüfung von Modelldateien (Hash-Prüfsummen) und isolieren Sie Modellladeumgebungen.