Update: mini Shai-Hulud breitet sich weiter aus Supply Chain Angriff auf SAP CAP durch bösartige npm-Pakete

Aktualisiert am 15.05.2026 Von Melanie Staudacher 4 min Lesedauer

Anbieter zum Thema

Eine neue Version des Wurms „Shai-Hulud“ trifft das SAP-Ökosystem: Ma­ni­pu­lierte npm-Pakete stehlen Zugangsdaten aus Entwicklersystemen. Nutzer sollten Builds und Abhängigkeiten prüfen und bereinigte Releases ein­spielen.

Nach Shai-Hulud folgt „mini Shai-Hulud“.(Bild:  Gemini / Vogel IT-Medien GmbH / KI-generiert)
Nach Shai-Hulud folgt „mini Shai-Hulud“.
(Bild: Gemini / Vogel IT-Medien GmbH / KI-generiert)

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“ nen­nen, bei der kompromittierte npm-Pakete, die im Cloud Application Programming Model (CAP) von SAP zum Einsatz kommen, den Wurm verbreiten.

Vier bösartige npm-Pakete waren unterwegs

Bis zu vier Stunden lang seien an besagtem Tag vier offizielle npm-Pakete aus dem SAP-Ent­wicklungsö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 ge­zeich­net, 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äd­liche Verhalten war in den drei eingeschleusten Dateien „package.json“, „setup.mjs“ und „execution.js“ verborgen, die während der Paketinstallation ausgeführt werden.

Weitere Paket-Artefakte kompromittiert

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ös­artige 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 Inte­gritä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.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zur IT-Sicherheit

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung

Zum Schutz vor diesem erweiterten Risiko sollten Organisationen ihre Softwarelisten und Lockfiles zügig gegen die von Socket genannten betroffenen Namensräume und Veröffent­lichungen 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.

Schnelle Reaktion von SAP

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 Scha­dens­be­gren­zung.

Auch die Forscher von Socket listen in ihrem Bericht IoCs auf sowie „Detection Op­por­tunities“. 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 be­zie­hungs­weise durch verifizierte, gepinnte Versionen ersetzen und Lockfiles neu er­zeu­gen. 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 „OhNoWhats­Go­ing­On­WithGitHub“, 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.

(ID:50834973)