LiteLLM-Lieferkette kompromittiert: Version 1.107.0 stiehlt Zugangsdaten

Die Release-Pipeline des Open-Source-Projekts LiteLLM wurde am 21. Oktober kompromittiert. Ein Angreifer veröffentlichte Version 1.107.0 in der Docker-Registry und auf PyPI. Betroffen waren alle sieben Installationspakete dieser PyPI-Version für Windows, Linux und macOS. In den Paketen steckte Schadcode, der Zugangsdaten, Geheimnisse und Umgebungsvariablen auslesen konnte.

Der Vorfall beschränkte sich nicht auf eine einzelne Downloadquelle. Für Docker Hub waren die Tags v1.107.0, latest, main-latest und main-stable zeitweise auf ein kompromittiertes Image-Index verwiesen. Vergleichbare Tags waren auch in der GitHub Container Registry betroffen. Die genannten Zeitfenster reichen bei Docker Hub von 11:46:56 bis 14:20 UTC; in der GitHub Container Registry wurden die betroffenen Images ab 13:51 UTC nicht mehr verfügbar gemacht.

Für die Ausführung nutzte der Schadcode drei Dateien im Python-Bibliotheksverzeichnis: cook.pth, cook.py und sitecustomize.py. Diese Mechanik ist für die Untersuchung besonders relevant, weil Python beim Start solche Dateien verarbeitet. Dadurch konnte laut der Analyse auch ein Start von Python oder pip zur Prüfung einer betroffenen Installation den Schadcode auslösen. Der Angreifer veränderte dabei nicht den Anwendungscode von LiteLLM, sondern platzierte die schädlichen Dateien im Installationspaket.

Das Angriffsziel waren unter anderem Cloud- und Deployment-Zugangsdaten für AWS, Azure, Google Cloud, Kubernetes und Docker. Außerdem suchte die Malware nach Zugangsdaten für KI-Entwicklungswerkzeuge, Git- und CI/CD-Diensten, privaten Schlüsseln, .env-Dateien sowie Browserdaten wie gespeicherten Anmeldungen, Cookies und Autofill-Daten. Ein nachgeladener Loader prüfte zudem stündlich einen auf GitHub gehosteten Verweis und konnte Python von einem externen Server zur Ausführung laden.

Betroffene Teams sollten die entsprechenden Deployments zunächst stoppen und die Umgebung untersuchen, ohne den Python-Interpreter zu starten. Eine isolierte, saubere Neuinstallation beziehungsweise ein Wiederaufbau aus sauberen Backups ist laut den vorliegenden Wiederherstellungshinweisen erforderlich. Alle offengelegten Geheimnisse sollten sofort gedreht werden. Das bloße Löschen des LiteLLM-Verzeichnisses reicht möglicherweise nicht aus, weil Startdateien oder ein aktiver Loader zurückbleiben können.

Als derzeit empfohlene Wiederherstellungsversion wird LiteLLM 1.106.2 genannt, die letzte bereinigte Veröffentlichung vor dem Angriff. Nutzer müssen dabei neben der Python-Abhängigkeit auch verwendete Docker- und GHCR-Images sowie möglicherweise aus der Umgebung abgeflossene Cloud-, Repository- und KI-Zugangsdaten prüfen. Kunden der privaten Enterprise-Variante waren laut Projektangabe von diesem Vorfall nicht betroffen.

Quellen

Ähnliche Beiträge

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert