Auf der JavaScript-Plattform npm sind sieben bösartige Pakete aufgefallen, die den Cloud-Dienst Adspect missbrauchten, um Nutzer über legitime Webanwendungen auf betrügerische Kryptoplattformen umzuleiten. Der Vorfall unterstreicht, wie anfällig die Software-Supply-Chain moderner Entwicklungsumgebungen ist und wie leicht legale Anti-Bot-Lösungen zu Tarnmechanismen für Cyberkriminelle werden können.
Missbrauch von npm-Paketen und Adspect als Cloaking-Infrastruktur
Die identifizierten Pakete wurden zwischen September und November 2025 von einem Entwicklerkonto mit dem Alias dino_reborn (E-Mail: geneboo@proton[.]me) veröffentlicht. Nach außen wirkten sie wie reguläre Abhängigkeiten für Webprojekte, was die Gefahr erhöht, dass sie unbemerkt in reale Anwendungen integriert werden.
Adspect wird offiziell als Dienst zur Traffic-Filterung und Bot-Abwehr vermarktet. In dieser Kampagne diente die Plattform jedoch als Cloaking-Mechanismus: Verdächtiger oder sicherheitsrelevanter Traffic wurde auf harmlose Inhalte umgeleitet, während echte Opfer auf betrügerische Kryptoseiten geführt wurden. So blieb die eigentliche Angriffskampagne länger unter dem Radar automatisierter Analysen.
Von den sieben Paketen enthielten sechs umfangreichen, obfuskierten JavaScript-Code. Das siebte Paket mit der Bezeichnung signals-embed fungierte als Köder und erzeugte die Einstiegsseite, von der aus der Angriff gestartet wurde.
Technische Analyse: JavaScript-Malware, Anti-Analyse und Fingerprinting
Automatische Ausführung im Browser über IIFE
Der schädliche Code umfasste rund 39 KB JavaScript, verpackt in eine IIFE (Immediately Invoked Function Expression). Eine IIFE ist eine Funktion, die unmittelbar nach ihrer Deklaration ausgeführt wird. Sobald ein Entwickler das Paket in ein Webprojekt einband, wurde der Code somit automatisch im Browser des Besuchers gestartet – ohne weitere Interaktion oder sichtbare Hinweise.
Blockieren von Analysewerkzeugen und Erschweren von Forensik
Die Malware setzte gezielt auf Anti-Analyse-Techniken, um Sicherheitsforscher und automatische Scanner zu behindern. Der Code:
- blockierte den Rechtsklick im Browser,
- unterband den Aufruf der Developer Tools über die Taste F12,
- fing Tastenkombinationen wie Ctrl+U (Seitenquelltext) und Ctrl+Shift+I (DevTools) ab,
- erzwang bei geöffneten Entwicklerwerkzeugen eine Neuladung der Seite.
Derartige Maßnahmen sind typisch für Phishing- und Betrugskampagnen: Sie sollen eine schnelle statische oder dynamische Analyse verhindern und erschweren es, die eigentliche Payload oder die Weiterleitungslogik zu untersuchen.
Browser-Fingerprinting, Traffic-Filterung und die Rolle von Adspect
Parallel führte das Skript ein umfangreiches Browser-Fingerprinting durch. Erfasst wurden unter anderem:
- User-Agent des Browsers,
- Spracheinstellungen,
- verwendetes Protokoll (HTTP/HTTPS),
- Domain, Referrer und vollständige URL,
- Parameter der Anfrage,
- Zeichencodierung sowie weitere Umgebungsmerkmale.
Diese Informationen wurden an einen Proxy-Server der Angreifer gesendet, während die IP-Adresse des Nutzers an die API von Adspect übermittelt wurde. Auf Basis dieser Daten entschied die Infrastruktur, ob es sich mit hoher Wahrscheinlichkeit um eine reale Zielperson oder um einen Sicherheitsforscher, Crawler oder automatisierten Scanner handelte. Nur im ersten Fall wurde die eigentliche Betrugskette ausgelöst.
Von Fake-CAPTCHA zu Kryptobetrug: Ablauf der Attacke
Erfüllte ein Besucher die Kriterien der Angreifer, wurde er auf eine gefälschte CAPTCHA-Seite weitergeleitet. Diese war mit Symbolen bekannter Kryptowährungen wie Ethereum oder Solana gestaltet und vermittelte den Eindruck einer üblichen „Ich bin kein Roboter“-Prüfung.
Der Klick auf die vermeintliche CAPTCHA-Lösung initiierte im Hintergrund die Generierung eines spezialisierten Adspect-URLs, der in einem neuen Tab geöffnet wurde. Aus Sicht des Browsers und vieler Anti-Fraud-Systeme sah dies wie eine legitime, vom Nutzer selbst initiierte Navigation aus. Dadurch konnten Schutzmechanismen besser umgangen und die Weiterleitung auf betrügerische Kryptoseiten verschleiert werden.
Wurde dagegen ein Analyseumfeld erkannt, lieferte die Infrastruktur eine unauffällige, harmlose Seite aus, angeblich im Namen eines Unternehmens namens Offlido. Diese Taktik reduziert das Risiko, dass Sicherheitsforscher die Kampagne schnell enttarnen und die bösartigen npm-Pakete melden.
Auswirkungen auf die Software-Supply-Chain und empfohlene Schutzmaßnahmen
Der Fall zeigt exemplarisch, wie Software-Supply-Chain-Angriffe funktionieren: Anstatt einzelne Unternehmen direkt zu kompromittieren, platzieren Angreifer Malware in beliebten Open-Source-Ökosystemen wie npm. Entwickler vertrauen häufig darauf, dass Pakete aus offiziellen Repositories sicher sind – ein Vertrauen, das gezielt ausgenutzt wird.
Öffentliche Berichte, etwa der State of the Software Supply Chain von Sonatype, weisen seit Jahren auf einen starken Anstieg bösartiger oder kompromittierter Pakete in Ökosystemen wie npm, PyPI und Maven hin. Damit wird ein systematischer Ansatz zur Absicherung von Abhängigkeiten unverzichtbar – sowohl für einzelne Entwickler als auch für Unternehmen.
Nach Veröffentlichung der Analyse durch Socket entfernte npm alle sieben schädlichen Pakete. Dennoch zeigt die mehrmonatige Verfügbarkeit der Module, dass eine alleinige Prüfung durch den Paket-Hoster nicht ausreicht. Erforderlich sind ergänzende Kontrollen in den Entwicklungs- und Build-Prozessen selbst.
Organisationen sollten daher unter anderem:
- Software-Composition-Analysis-(SCA)-Tools einsetzen, um Abhängigkeiten automatisiert auf Malware, Schwachstellen und Lizenzrisiken zu prüfen,
- Versionen zu fixieren (Lockfiles) und unkontrollierte automatische Updates zu vermeiden,
- regelmäßige Audits der eingesetzten Bibliotheken und Transitiv-Abhängigkeiten durchführen,
- das Prinzip Zero Trust auch auf Drittcode anwenden und neue Pakete vor dem Einsatz in produktiven Umgebungen isoliert testen.
Wer Open-Source-Komponenten konsequent überwacht, Updates kontrolliert ausrollt und Sicherheitsprüfungen in die CI/CD-Pipeline integriert, reduziert die Angriffsfläche deutlich. Gerade Angriffe wie die Adspect-npm-Kampagne zeigen, dass Cyberkriminelle legale Dienste und das Vertrauen in Open-Source-Plattformen gezielt instrumentalisieren. Es liegt an Entwicklern und Unternehmen, ihre Software-Supply-Chain so zu härten, dass solche Versuche frühzeitig erkannt und wirksam abgewehrt werden.