Sicherheitsforscher haben einen Supply-Chain-Angriff mit gefälschten Paysafe-SDKs auf npm und PyPI aufgedeckt. Die schädlichen Pakete gaben sich als legitime Software Development Kits für Paysafe, Skrill und Neteller aus, stahlen jedoch heimlich Zugangsdaten, API-Schlüssel und Zugriffstoken von Entwicklern.
Die Kampagne richtete sich gegen Entwickler, die Zahlungsintegrationen erstellen, und zeigt, dass bösartige Open-Source-Pakete weiterhin eine erhebliche Bedrohung darstellen.
Schadpakete griffen Entwickler von Zahlungsanwendungen an
Das Anwendungssicherheitsunternehmen Socket identifizierte 17 schädliche Pakete, die über den Node Package Manager (npm) und den Python Package Index (PyPI) verbreitet wurden.
Der Angreifer veröffentlichte Pakete, die wie offizielle SDKs für Paysafe sowie die zugehörigen Zahlungsplattformen Skrill und Neteller aussahen.
Zu den betroffenen Paketen gehören:
npm
- paysafe-checkout
- paysafe-vault
- neteller
- skrill-payments
- paysafe-js
- paysafe-api
- paysafe-node
- paysafe-cards
- paysafe-fraud
- paysafe-kyc
- skrill
- skrill-sdk
- paysafe-payments
PyPI
- paysafe-kyc
- paysafe-payments
- paysafe-sdk
- paysafe-api
Laut Socket veröffentlichte der Angreifer vier schädliche Versionen der npm-Pakete von Version 1.0.0 bis 1.0.3. Jedes PyPI-Paket enthielt dagegen nur eine schädliche Version mit der Nummer 1.0.0.
Gefälschte Paysafe-SDKs lieferten falsche Erfolgsmeldungen
Die gefälschten Paysafe-SDKs ahmten die legitimen Zahlungsbibliotheken nach und stellten die erwarteten APIs bereit.
Anstatt mit der Backend-Infrastruktur von Paysafe zu kommunizieren, gaben die Pakete jedoch lediglich falsche Erfolgsmeldungen zurück. Dadurch schien die Software ordnungsgemäß zu funktionieren, während im Hintergrund schädlicher Code ausgeführt wurde.
Das eigentliche Ziel bestand darin, vertrauliche Zugangsdaten von kompromittierten Systemen zu stehlen.
Schadsoftware stahl API-Schlüssel, Passwörter und Token
Die integrierte Schadsoftware durchsuchte kompromittierte Systeme nach wertvollen Zugangsdaten und übermittelte die Informationen anschließend an einen Command-and-Control-Server bei Amazon Web Services (AWS).
Nach Angaben von Socket konnten unter anderem folgende Daten gestohlen werden:
- Paysafe-API-Schlüssel
- AWS-Zugriffsschlüssel
- GitHub-Token
- npm-Authentifizierungstoken
- Passwörter
- Hostnamen
- Benutzernamen
- Metadaten zur API-Nutzung
Die Schadsoftware in den npm-Paketen versuchte nur dann Daten zu exfiltrieren, wenn sie einen Paysafe-API-Schlüssel erkannte. Sie wurde erst aktiv, nachdem eine Anwendung das gefälschte SDK aufgerufen hatte.
Die PyPI-Versionen verhielten sich anders. Sie starteten den Diebstahl von Zugangsdaten automatisch während der Initialisierung und benötigten keinen Paysafe-API-Schlüssel, um Daten zu stehlen.
Schadsoftware enthielt einfache Schutzmechanismen gegen Analysen
Die Angreifer integrierten außerdem grundlegende Anti-Analyse-Funktionen.
Die Schadsoftware beendete ihre Ausführung, wenn sie weniger als zwei CPU-Kerne erkannte oder Hostnamen beziehungsweise Benutzernamen fand, die typischerweise mit virtuellen Maschinen oder Sandbox-Umgebungen verbunden sind.
Diese Techniken waren zwar einfach, zeigen jedoch, dass die Angreifer ihre schädlichen Pakete schwerer analysierbar machen wollten.
Angreifer könnten weitere Ökosysteme ins Visier nehmen
Socket hat die Gruppe hinter der Kampagne bislang nicht identifiziert.
Die Forscher gehen jedoch davon aus, dass der Angreifer über ausreichende technische Fähigkeiten verfügt, um künftig ähnliche Angriffe durchzuführen.
Da die Kampagne gleichzeitig npm und PyPI betraf, könnten Verteidiger größere Schwierigkeiten haben, wenn sie nur eines der beiden Software-Ökosysteme überwachen.
Entwickler sollten ihre Zugangsdaten sofort austauschen
Wer eines der gefälschten Paysafe-SDKs installiert hat, sollte davon ausgehen, dass die eigenen Zugangsdaten kompromittiert wurden.
Socket empfiehlt betroffenen Entwicklern:
- Alle API-Schlüssel, Passwörter und Zugriffstoken sofort auszutauschen.
- Abhängigkeitsbäume nach allen schädlichen Paketnamen zu durchsuchen.
- Die Pakete auf Registry- oder Proxy-Ebene zu blockieren.
- Continuous-Integration-(CI)-Protokolle auf Verweise auf PAYSAFE_API_KEY in Verbindung mit den schädlichen Paketnamen zu überprüfen.
Der Vorfall zeigt erneut, dass sich Angriffe auf die Software-Lieferkette ständig weiterentwickeln. Selbst Pakete, die wie vertrauenswürdige SDKs aussehen, können erhebliche Sicherheitsrisiken verursachen, wenn Entwickler sie installieren, ohne ihre Echtheit zu überprüfen.


0 Kommentare zu „Gefälschte Paysafe-SDKs auf npm und PyPI stehlen Entwickler-Zugangsdaten“