Eine neue Version des Wurms „Shai-Hulud“ trifft das SAP-Ökosystem: Manipulierte npm-Pakete stehlen Zugangsdaten aus Entwicklersystemen. Nutzer sollten Builds und Abhängigkeiten prüfen und bereinigte Releases einspielen.
Nachdem die Malware „Shai-Hulud“ erstmals im September 2025 auftauchte, hielt erst eine neue Variante und nun eine Mini-Version die IT-Sicherheitsbranche in Atem. Am 29. April 2026 beschrieben Sicherheitsforscher von Socket eine Kampagne, die sie „mini Shai-Hulud“ nennen, bei der kompromittierte npm-Pakete, die im Cloud Application Programming Model (CAP) von SAP zum Einsatz kommen, den Wurm verbreiten.
Bis zu vier Stunden lang seien an besagtem Tag vier offizielle npm-Pakete aus dem SAP-Entwicklungsökosystem in bösartigen Versionen über GitHub verfügbar gewesen. Jeder, der den Befehl „npm install“ für die betreffende falsche Version ausführte, lud sich eine Payload zum Diebstahl von Zugangsdaten direkt auf seine Entwickler-Workstation oder in seine CI/CD-Pipeline. Bereits das gesamte Jahr 2026 ist von Supply-Chain-Vorfällen ähnlicher Art gezeichnet, doch mini Shai-Hulud ist der erste Fall, bei dem der Wurm direkt die SAP-Lieferkette betrifft.
Diese vier Pakete sind mit bösartigen Versionen infiziert worden:
„@cap-js/sqlite v2.2.2“
„@cap-js/postgres v2.2.2“
„@cap-js/db-service v2.10.1“
„mbt v1.2.48“
Sie werden zusammengenommen rund 570.000 Mal pro Woche heruntergeladen. Das schädliche Verhalten war in den drei eingeschleusten Dateien „package.json“, „setup.mjs“ und „execution.js“ verborgen, die während der Paketinstallation ausgeführt werden.
Socket beobachtet die Lage weiterhin und habe festgestellt, dass weitere Paket-Artefakte von mini Shai-Hulud kompromittiert wurden. Insgesamt seien es 205 kompromittierte npm-Paketartefakte, die sich über die Namensräume von TanStack, UiPath sowie diverse weitere Paket-Namensräume erstrecken würden. Darunter seien auch weit verbreitete Pakete wie „@tanstack/react-router“, das allein in der vergangenen Woche über 12 Millionen Downloads verzeichnete.
Die Analyse von Socket habe ergeben, dass die kompromittierten Paketversionen eine stark verschleierte JavaScript-Payload enthielten. Diese sei darauf ausgelegt, Zugangsdaten aus GitHub Actions, npm, AWS, Kubernetes, HashiCorp Vault sowie weiteren CI- und Cloud-Umgebungen auszulesen. Zudem weise die Malware ein wurmartiges Ausbreitungsverhalten auf. Dazu würden auch Versuche gehören, über OIDC-Flows von GitHub Actions Zugriff auf die npm-Veröffentlichungsrechte zu erlangen, um sich anschließend auf weitere Pakete auszubreiten. Die Payload umfasse zudem Mechanismen zur Persistenzsicherung auf Entwickler-Workstations, darunter Schreibzugriffe auf die Verzeichnisse „.claude/“ und „.vscode/“, sowie die Exfiltration von Daten über das dezentrale P2P-Netzwerk „Session“ unter der Adresse „filev2.getsession[.]org“.
Auch OpenSearch, die PyPI-Pakete mistralai und guardrails-ai sowie zusätzliche Squawk-Pakete seien mittlerweile betroffen. Zu den jüngst bestätigten kompromittierten Artefakten gehören:
„@opensearch-project/opensearch“ (npm-Versionen 3.5.3, 3.6.2, 3.7.0 und 3.8.0)
„PyPI mistralai@2.4.6“
„PyPI guardrails-ai@0.10.1“
Weitere „@squawk/*“-Artefakte (npm), darunter „@squawk/mcp@0.9.5“, „@squawk/weather@0.5.10“, „@squawk/flightplan@0.5.6“ sowie verwandte Pakete
Die Kompromittierung von „guardrails-ai@0.10.1“ sei besonders bemerkenswert, da der bösartige Code bereits beim Import des Pakets ausgeführt werde. Die Analyse von Socket habe bestätigt, dass das Paket auf das Vorhandensein von Linux-Systemen prüfe, ein externes Python-Artefakt von „https://git-tanstack.com/transformers.pyz“ herunterlade, dieses unter „/tmp/transformers.pyz“ ablege und es anschließend mittels „python3“ ohne jegliche Integritätsprüfung ausführe. Dieser Code sei in der unmittelbar vorangegangenen Version „guardrails-ai@0.10.0“ noch nicht enthalten, was bestätige, dass es sich um eine frische Kompromittierung handle.
Socket habe das Problem schnellstmöglich an das Guardrails AI-Projekt auf GitHub gemeldet und angemerkt, dass „guardrails-ai==0.10.1“ das betroffene PyPI-Artefakt im tar.gz-Format sei. Die Versionen 0.10.0 und früher hingegen seien sicher und die Kompromittierung, basierend auf Artefakten, die auf der zugehörigen Infrastruktur beobachtet wurden, offenbar mit dem Bedrohungsaktuer „TeamPCP“ in Verbindung stehe.
Diese jüngsten Aktivitäten würden zeigen, dass sich die Kampagne weiterhin sowohl über npm als auch über PyPI ausbreite, wobei die betroffenen Pakete Bereiche wie Suchinfrastruktur, KI-Tools, entwicklerbezogene Pakete für die Luftfahrt, Unternehmensautomatisierung, Frontend-Tools sowie Ökosysteme im Umfeld von CI/CD umfassen würden.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Zum Schutz vor diesem erweiterten Risiko sollten Organisationen ihre Softwarelisten und Lockfiles zügig gegen die von Socket genannten betroffenen Namensräume und Veröffentlichungen prüfen, kompromittierte Artefakte entfernen und auf nachweislich saubere Stände pinnen. Geheimnisse für GitHub Actions, npm, AWS, Kubernetes und Vault sollten umgehend rotiert werden, Veröffentlichungsrechte strikt nach dem Prinzip minimaler Rechte vergeben und eine Zwei-Faktor-Authentifizierung für Veröffentlichungen erzwungen werden.
Der deutsche Software-Anbieter hat schnell reagiert und die betroffenen Versionen noch am selben Nachmittag durch bereinigte Releases ersetzte. Außerdem hat SAP mit dem Security Note 3747787 einen entsprechenden Hinweis für seine Kunden veröffentlicht. Dieser enthält eine Liste der Indicators of Compromise, Dateihashes sowie Maßnahmen zur Schadensbegrenzung.
Auch die Forscher von Socket listen in ihrem Bericht IoCs auf sowie „Detection Opportunities“. Dies sind konkrete, beobachtbare Signale, die Nutzern helfen, verdächtiges Verhalten früh zu erkennen.
Zu ihrem Schutz sollten User folgende Sicherheitsmaßnahmen ausführen:
Abhängigkeiten und Lockfiles auf betroffene Versionen prüfen, Funde entfernen beziehungsweise durch verifizierte, gepinnte Versionen ersetzen und Lockfiles neu erzeugen. Unautorisierte GitHub-Repositories löschen, injizierte Workflow-Branches entfernen, IDE-Config-Änderungen, die die Payload in andere Repos gepusht hat, rückgängig machen und unerwartete Versionssprünge aus npm-Paketen depublizieren.
Möglicherweise exponierte Credentials und Tokens umgehend rotieren. CI/CD- und Build-Logs auf unerwartete Netzwerkaktivität oder Binär-Ausführung während der Installation prüfen. Betroffene Systeme sollten isoliert werden. Außerdem sollte für sie ein Re-Imaging erwägt werden.
Nach den von SAP aufgelisteten Indikatoren suchen sowie GitHub-Repositories mit der Beschreibung „A Mini Shai-Hulud has Appeared“, Commits mit dem String „OhNoWhatsGoingOnWithGitHub“, Commits von „claude claude@users.noreply.github.com“ oder mit der Nachricht „chore: update dependencies“, unerwartete Workflow-Branches, Änderungen an IDE-Konfigurationen, zum Beispiel „.vscode/tasks.json“ und „.claude/settings.json“, die auf betroffenen Maschinen in andere Repositories eingecheckt worden sein könnten.