MalwareSchwachstellenSupply-Chain-Sicherheit

SAP-npm-Pakete kompromittiert: Großangelegte Credential-Stealing-Attacke entdeckt

SAP-npm-Pakete kompromittiert: Großangelegte Credential-Stealing-Attacke entdeckt
Zusammenfassung

Ein umfassender Supply-Chain-Angriff hat mehrere SAP-bezogene npm-Pakete kompromittiert, die in der JavaScript- und Cloud-Anwendungsentwicklung weit verbreitet sind. Die Kampagne der Threat-Actor-Gruppe "mini Shai-Hulud" manipulierte beliebte Pakete wie "@cap-js/cds", "@cap-js/sqlite" und "mbt" durch Kontokompromittierungen sowie Schwachstellen in GitHub-Workflows und npm-Authentifizierungsmechanismen. Die schädlichen Versionen wurden am 29. April 2026 veröffentlicht und installieren sich selbst als vermeintliche Bun-JavaScript-Runtime-Binärdateien, während sie tatsächlich Credentials-Stealer ausführen. Die Malware zielt darauf ab, Entwickler-Anmeldedaten, GitHub- und npm-Tokens, GitHub Actions-Secrets sowie Cloud-Secrets von AWS, Azure, GCP und Kubernetes zu stehlen und gestohlene Daten zu exfiltrieren. Für deutsche Unternehmen und Entwickler, die SAP-Technologien nutzen oder in der npm-Ökosphäre aktiv sind, stellt dies ein erhebliches Risiko dar – insbesondere für solche mit CI/CD-Pipelines und Entwicklungsumgebungen. Der Angriff demonstriert, wie Threat-Actors moderne Authentifizierungssysteme umgehen können, und unterstreicht die Notwendigkeit sofortiger Maßnahmen zur Überprüfung betroffener Dependencies und zur Neubewertung von Sicherheitsrichtlinien im Supply-Chain-Management.

Die Attacke wurde zwischen dem 29. April 2026, 09:55 UTC und 12:14 UTC durchgeführt. Die manipulierten Pakete führten einen neuen Preinstall-Hook in der package.json ein, der eine Datei namens “setup.mjs” ausführt. Diese fungiert als Loader für die Bun JavaScript Runtime und startet einen Credential Stealer sowie ein Propagations-Framework namens “execution.js”.

Die Malware wurde gezielt entwickelt, um eine breite Palette von Anmeldeinformationen zu stehlen: lokale Entwickler-Credentials, GitHub- und npm-Tokens, GitHub Actions Secrets sowie Cloud-Secrets von den vier großen Cloud-Providern. Die gestohlenen Daten werden verschlüsselt und in öffentliche GitHub-Repositories exfiltriert, die auf dem Konto des Opfers erstellt werden und mit der Beschreibung “A Mini Shai-Hulud has Appeared” versehen sind. Zum Zeitpunkt der Veröffentlichung existierten über 1.100 solcher verdächtiger Repositories.

Besonders besorgniserregend ist die Selbstausbreitungs-Fähigkeit der Malware. Das 11,6 MB große Payload kann sich durch Entwickler- und Release-Workflows propagieren und nutzt gestohlene GitHub- und npm-Tokens, um bösartige GitHub Actions Workflows in Victim-Repositories einzuschleusen. Dies ermöglicht dem Angreifer, Repository-Secrets zu stehlen und vergiftete Versionen der npm-Pakete zu veröffentlichen.

Die Analyse der Wurzelursachen zeigt zwei unterschiedliche Angriffsvektoren: Bei den “@cap-js”-Paketen wurde das Konto von RoshniNaveenaS kompromittiert. Der Angreifer modifizierte einen Workflow auf einem Non-Main-Branch und nutzte das extrahierte npm OIDC Token zur Veröffentlichung ohne Provenance. Beim “mbt”-Paket wird vermutet, dass ein statischer npm-Token des “cloudmtabot” Accounts durch noch ungeklärte Mittel kompromittiert wurde.

Ein kritischer Konfigurationsfehler war dabei essentiell für den Erfolg: Die npm OIDC Trusted Publisher-Konfiguration vertraute jedem Workflow im Repository, nicht nur dem kanonischen Release-Workflow. Dies ermöglichte es dem Angreifer, OIDC-Tokens auf nicht-autorisierten Branches auszutauschen.

Die Paketverantwortlichen haben mittlerweile sichere Versionen veröffentlicht, die die kompromittierten Releases ersetzen. Deutsche Unternehmen sollten ihre Abhängigkeiten umgehend aktualisieren und prüfen, ob ihre Systeme betroffen sind.