Im Hugging Face Repository wurden schädliche KI-Modelle entdeckt, die Code ausführen.

Forscher von JFrog haben im Hugging Face-Repository bösartige Modelle für maschinelles Lernen identifiziert, deren Installation zur Ausführung von Angreifercode führen kann, um die Kontrolle über das System des Benutzers zu erlangen. Das Problem resultiert aus der Tatsache, dass einige Modellverbreitungsformate das Einbetten von ausführbarem Code zulassen. So können Modelle, die das „pickle“-Format verwenden, serialisierte Objekte in Python sowie Code enthalten, der beim Laden der Datei ausgeführt wird. Tensorflow Keras-Modelle können Code über Lambda Layer ausführen.

Um die Verbreitung solcher bösartigen Modelle auf Hugging Face zu verhindern, wird ein Scan auf serialisierten Code durchgeführt. Die identifizierten bösartigen Modelle zeigen jedoch, dass die vorhandenen Überprüfungen umgangen werden können. Darüber hinaus kennzeichnet Hugging Face die Modelle in den meisten Fällen lediglich als gefährlich, ohne den Zugriff auf sie zu blockieren. Insgesamt wurden etwa 100 potenziell bösartige Modelle identifiziert, von denen 95 % für die Verwendung mit dem PyTorch-Framework und 5 % mit Tensorflow bestimmt sind. Die häufigsten bösartigen Änderungen umfassen die Übernahme von Objekten, die Organisation eines externen Systemzugriffs (Reverse Shell), das Starten von Anwendungen und das Schreiben in Dateien.

Im Hugging Face Repository wurden schädliche KI-Modelle entdeckt, die Code ausführen.

Es wird festgestellt, dass die meisten identifizierten bösartigen Modelle laut den durchgeführten Aktionen von Sicherheitsforschern erstellt wurden, die versuchen, eine Belohnung für die Entdeckung von Schwachstellen und Methoden zum Umgehen von Hugging Faces Schutzmaßnahmen zu erhalten (zum Beispiel versuchen solche Modelle, statt eines echten Angriffs einen Taschenrechner zu starten oder eine Netzwerk-Anfrage mit Informationen über den Erfolg des Angriffs zu senden). Dabei gibt es auch Exemplare, die eine Reverse Shell starten, um den Angreifer mit dem System zu verbinden.

Beispielsweise zielen die Modelle „baller423/goober2“ und „star23/baller13“ auf einen Angriff auf Systeme, die die Modell-Datei in PyTorch mit der Funktion torch.load() laden. Zur Ausführung des Codes wird die Methode „__reduce__“ aus dem pickle-Modul verwendet, die es ermöglicht, beliebigen Python-Code in den Deserialisierungsprozess einzufügen, der beim Laden des Modells ausgeführt wird.

Quelle: opennet.ru

60GB SSD 8Gb DDR4