Supply-Chain-AngriffeSchwachstellenCyberkriminalität

SAP npm-Pakete gehackt: TeamPCP stiehlt Entwickler-Credentials

SAP npm-Pakete gehackt: TeamPCP stiehlt Entwickler-Credentials
Zusammenfassung

Eine kritische Sicherheitslücke hat mehrere offizielle SAP-Pakete aus dem npm-Ökosystem betroffen. Die npm-Registry, das zentrale Softwareverteilungssystem für JavaScript-Entwickler, wurde Ziel einer ausgefeilten Supply-Chain-Attacke, bei der mindestens vier SAP-Pakete mit bösartigem Code kontaminiert wurden. Experten führen den Angriff auf die Hacker-Gruppe TeamPCP zurück, die bereits für ähnliche Attacken gegen bekannte Sicherheitsunternehmen wie Bitwarden und Checkmarx verantwortlich zeichnet. Die betroffenen Pakete unterstützen SAP's Cloud Application Programming Model (CAP) und Cloud MTA – Technologien, die in der Enterprise-Entwicklung weit verbreitet sind. Die Malware nutzt automatisch ausgeführte Installationsskripte, um Zugangsdaten, API-Schlüssel und Authentifizierungstoken zu stehlen – nicht nur von einzelnen Entwicklermaschinen, sondern auch direkt aus CI/CD-Umgebungen. Für deutsche Unternehmen und Behörden, die SAP-Produkte einsetzen oder diese Pakete in ihren Entwicklungsprozessen nutzen, stellt dies ein erhebliches Risiko dar. Die Attacke verdeutlicht, wie verwundbar selbst vertrauenswürdige Softwarequellen sein können, wenn Sicherheitsprozesse kompromittiert werden.

Der Angriff folgt einem bekannten Muster: Unmittelbar nach der Installation wird ein Loader namens setup.mjs aktiviert, der die JavaScript-Runtime Bun von GitHub herunterlädt und einen stark verschleiert konfigurierten Payload (execution.js) ausführt. Dieser Information-Stealer arbeitet systematisch und stiehlt eine Vielzahl von Zugangsdaten von beiden Entwickler-Maschinen und CI/CD-Umgebungen.

Besonders perfide ist die Methode zur Extraktion von Secrets aus CI-Runner-Umgebungen: Das Malware-Skript lädt ein eingebettetes Python-Script, das die Dateien /proc//maps und /proc//mem des Runner.Worker-Prozesses liest und systematisch nach Secrets mit der Struktur “key”: { “value”: “…”, “isSecret”: true} sucht. Dadurch umgeht die Malware alle Log-Masking-Mechanismen der CI-Plattform. Diese Technik ist strukturell identisch mit Methoden, die bereits bei den Angriffen auf Bitwarden und Checkmarx dokumentiert wurden.

Nach der Datensammlung wird alles verschlüsselt und in öffentliche GitHub-Repositories unter dem Konto des Opfers hochgeladen. Die Repositories tragen bezeichnenderweise die Beschreibung “A Mini Shai-Hulud has Appeared” – eine Anspielung auf die “Shai-Hulud: The Third Coming”-Strings aus dem Bitwarden-Angriff.

Die Angreifer nutzen auch eine Kombination aus GitHub-Commits als Dead-Drop-Mechanismus: Sie durchsuchen GitHub nach spezifischen Strings und nutzen Commit-Nachrichten im Format “OhNoWhatsGoingOnWithGitHub:” zur Token-Übergabe. Nach Dekodierung werden die GitHub-Tokens überprüft und für den Zugriff auf Repositories verwendet.

Besonders besorgniserregend ist die Selbstverbreitungsfunktion des Malware-Codes: Mit gestohlenen npm- oder GitHub-Credentials versucht der Payload, andere Pakete und Repositories zu modifizieren und injiziert dieselbe malicious Code, um sich exponentiell auszubreiten. Dies unterstreicht die Gefahr von Supply-Chain-Angriffen: Ein einziger kompromittierter Account kann Millionen von Entwicklern gefährden.

Sicherheitsingenieur Adnan Khan vermutet, dass Angreifer über ein misskonfluriertes CircleCI-Job ein npm-Token freigelegt bekamen. SAP selbst äußerte sich bislang nicht zur Kompromittierung, was viele Fragen zur internen Sicherheit aufwirft. Für deutsche Unternehmen ist eine sofortige Überprüfung der betroffenen Pakete und eine Rotierung aller Credentials dringend erforderlich.