Entwicklergeheimnisse in Gefahr: Shai-Hulud-Malware infiltriert PyPI über 19 wissenschaftliche Pakete
Eine neue Welle des Shai-Hulud Supply-Chain-Angriffs hat 19 beliebte wissenschaftliche Pakete auf PyPI kompromittiert, die insgesamt hunderttausende Male heruntergeladen wurden. Diese hochentwickelte Kampagne, die von der Anwendungssicherheitsfirma Socket entdeckt wurde, setzt Malware ein, die darauf ausgelegt ist, eine breite Palette von Entwicklergeheimnissen und Anmeldeinformationen zu stehlen, was eine erhebliche Bedrohung für Softwareentwicklungs-Workflows darstellt.

Hacker haben einen neuen Shai-Hulud Supply-Chain-Angriff gestartet und 19 Pakete im PyPI (Python Package Index) erfolgreich kompromittiert. Diese Pakete, die hunderttausende Male heruntergeladen wurden, wurden trojanisiert, um Malware zu liefern, die darauf abzielt, sensible Entwicklergeheimnisse zu stehlen.
Viele der betroffenen Pakete sind beliebte Bioinformatik-Tools, darunter Dynamo, Spateo, CoolBox, U-FISH und Napari-UFISH.
### Entdeckung und technischer Mechanismus
Die neue Kampagne wurde von der Anwendungssicherheitsfirma Socket ans Licht gebracht. Ihre Analyse ergab 37 bösartige Veröffentlichungen in den 19 Paketen, die alle von einem einzigen Maintainer zu stammen scheinen.
Die bösartigen Artefakte enthielten eine `*-setup.pth`-Datei und eine verschleierte JavaScript-Payload namens `_index.js`. Die Ausführung der PTH-Datei wird einfach durch den Start von Python ausgelöst, der dann versucht, die Bun JavaScript-Laufzeitumgebung von GitHub herunterzuladen, um das gebündelte Skript auszuführen.
Socket-Forscher erklärten die heimtückische Natur dieses Mechanismus: „Das bedeutet, dass ein kompromittiertes Wheel eine ansonsten passive Abhängigkeitsinstallation in einen verzögerten Auslöser verwandeln kann: Der nächste Python-, Pip-, Testlauf-, Notebook-Kernel-, CI-Job- oder Paketverwaltungsbefehl, der Python startet, kann die bösartige .pth verarbeiten.“
### Verbindung zur breiteren Shai-Hulud-Kampagne
Socket glaubt, dass dieser Angriff eine Erweiterung der breiteren „Shai-Hulud“-Kampagne ist und verweist auf mehrere Ähnlichkeiten in den eingesetzten Techniken. Das Unternehmen verfolgt diesen Vorfall neben früheren Angriffen und bringt die Gesamtzahl der bösartigen Artefakte, die Shai-Hulud-Aktivitäten zugeschrieben werden, auf 453.
### Zielgerichtete Geheimnisse und Exfiltration
Eine eingehende Analyse der JavaScript-Payload deckte ihre umfassende Zielsetzung von Entwicklergeheimnissen auf, darunter:
* GitHub-Tokens und GitHub Actions-Geheimnisse
* npm-, PyPI-, RubyGems-, JFrog-Publishing-Tokens
* AWS-, GCP-, Azure-, Kubernetes- und Vault-Anmeldeinformationen
* SSH-Schlüssel
* Docker-Anmeldeinformationen
* .env-, .npmrc-, .pypirc-Dateien
* Shell-Verläufe
* Claude/MCP-Konfigurationsdateien
* Andere Geheimnisse von Entwickler-Workstations und CI/CD-Systemen
Im Einklang mit früheren Shai-Hulud-Operationen scheint das Hauptziel die Kompromittierung von Softwareentwicklungs-Workflows zu sein, um die weitere Verbreitung von Malware zu ermöglichen.
Die Datenexfiltration spiegelt weitgehend frühere Shai-Hulud-Methoden wider, wobei automatisch erstellte GitHub-Repositories genutzt werden, um gestohlene Geheimnisse über GitHub Actions zu hosten. Eine sekundäre Exfiltrationsmethode verwendet direkte HTTPS-Kommunikation, die auf einen legitimen, aber ungültigen Anthropic API-Endpunkt (api[.]anthropic[.]com/v1/api) verweist, der laut Socket wahrscheinlich zur Tarnung diente.
### Umgehung und Persistenz
Die Malware enthält mehrere Umgehungsmechanismen, wie z. B. die Prüfung auf russische Lokalisierungen/Umgebungen und die Anwesenheit von Sicherheitstools wie StepSecurity Harden-Runner.
Zur Persistenz etabliert sich die Malware über systemd-Dienste auf Linux-Systemen und LaunchAgents auf macOS. Sie nutzt auch GitHub-Workflow- und Claude/MCP-Konfigurationsdateien, um ihre Präsenz aufrechtzuerhalten.
### Empfehlungen für Verteidiger
Der Bericht von Socket enthält eine umfassende Liste aller betroffenen Pakete und Versionen. Organisationen, die diese Pakete installiert haben, wird dringend empfohlen:
* Alle Entwicklergeheimnisse sofort rotieren.
* Betroffene Umgebungen aus bekannten sicheren Backups wiederherstellen.
Verteidiger sollten auch aktiv nach spezifischen Indikatoren für Kompromittierung suchen, darunter:
* Python-Pakete, die ausführbare .pth-Start-Hooks enthalten.
* Unerwartete Downloads der Bun JavaScript-Laufzeitumgebung von GitHub.
* Prozessketten, bei denen Python Bun startet, um _index.js auszuführen.