Cybersecurity-Forscher haben die Schadsoftware JSCeal entschlüsselt – einen raffinierten, kompilierten V8-JavaScript-Code (JSC), der mit Funktionen zum Ausspähen von Anmeldedaten, zur Überwachung und zum Abfangen von Netzwerkverkehr ausgestattet ist. Die Malware wird über manipulierte Werbeanzeigen auf Facebook und Google verbreitet, die ahnungslose Nutzer auf gefälschte Kryptowährungs-Handelsseiten locken. Dort werden sie aufgefordert, vermeintliche TradingView-Installer herunterzuladen, die tatsächlich die Schadsoftware ausliefern. Die Aktivitäten überschneiden sich mit den Bedrohungsclustern WEEVILPROXY und MeadowLocust.
Infektionsweg und technische Besonderheiten
Die Malvertising-Kampagnen nutzen zwei ZIP-Archive, die per PowerShell ausgeliefert werden: eines enthält die Node.js-Laufzeitumgebung, das andere den Hauptnutzlastcode und weitere Hilfskomponenten. Ein besonders ausgeklügelter Ableger dieser Kampagne ist die als SourTrade bezeichnete Operation, die seit Ende 2024 aktiv ist und gezielt Privatanleger und Kryptowährungs-Investoren in zwölf Ländern Asiens und Lateinamerikas anspricht. Die Angreifer imitieren vertrauenswürdige Marken wie Solana, Luno und TradingView und nutzen dazu Landingpages, die den Browser anweisen, die Malware direkt im Arbeitsspeicher zusammenzubauen – ohne dass jemals eine vollständige Schadsoftware im Netzwerk existiert. Die endgültige Nutzlast wird erst im Speicher des Opfers zusammengesetzt, was herkömmliche netzwerkbasierte Erkennung umgeht.
Obfuskationsmethoden: Wie JSCeal sich tarnt
JSCeal ist mit dem Tool javascript-obfuscator geschützt. Die Angreifer wenden wiederholt vier Transformationsgruppen an, um eine Analyse zu erschweren. Dazu gehören das Ersetzen von Funktions- und Variablennamen durch kurze oder sinnfreie Bezeichner, das Zerlegen wichtiger Zeichenketten in codierte und RC4-geschützte Teile, die später durch Decoder-Funktionen wieder zusammengesetzt werden, sowie die Kontrollflussglättung. Diese Technik verwandelt den Programmablauf in eine flache Switch-Anweisung, die von einer Endlosschleife und einer Zustandsvariablen gesteuert wird. Außerdem leiten Proxy-Helfer Funktionsaufrufe weiter, und einfache Operationen wie Addition, Subtraktion oder Vergleich werden in dedizierte Hilfsfunktionen verpackt.
Das israelische Sicherheitsunternehmen Check Point Research hat eine vollständig statische Entschleierungspipeline entwickelt, die den kompilierten V8-JavaScript-Bytecode entschlüsselt und so Einblicke in den Ausführungsfluss und die Fähigkeiten der Malware ermöglicht. Die Analyse deckte auf, dass JSCeal installierte Browser auflisten, gespeicherte Geheimnisse, Cookies, OAuth-Token und andere Daten auslesen kann. Darüber hinaus enthält die Malware „Router“-Funktionen, die Handler für die gesammelten Informationen registrieren.
Browser-Stealer-Modul im Detail
Das Browser-Stealing-Modul zielt auf einen langen Katalog von Chromium-basierten Browsern ab: Google Chrome, Microsoft Edge, Brave, Opera, Opera GX, Avast Secure Browser, Vivaldi und Cốc Cốc. Für jeden Browser navigiert die Schadsoftware zum erwarteten Speicherort des Benutzerdatenverzeichnisses, listet verfügbare Profile auf und extrahiert Cookies und Passwörter. Besonders gefährlich: JSCeal kann die gestohlenen Cookies nutzen, um eine vollständige Browser-Sitzung zu rekonstruieren und aktive Session-Replay-Angriffe durchzuführen. Auf diese Weise umgeht die Malware die Google-Authentifizierung und erhält unbefugten Zugriff auf das Google-Konto des Opfers – ohne dass ein Passwort oder ein zweiter Faktor benötigt wird.
Session-Replay: Authentifizierung ohne Passwort knacken
Die Technik des Session-Replays ist ein seit Jahren bekanntes Angriffsmuster, das jedoch durch die Präzision von JSCeal eine neue Qualität erreicht. Indem die Malware die kompletten Sitzungsdaten (inklusive gültiger Session-Cookies) repliziert, kann sie sich gegenüber Google als legitimer Nutzer ausgeben. Der Angriff ist besonders effektiv, weil er weder auf Phishing noch auf Credential-Stealing angewiesen ist. Die gestohlenen Cookies enthalten alle notwendigen Authentifizierungsinformationen, sodass die Zwei-Faktor-Authentifizierung (2FA) nicht greift. Das Opfer bemerkt den unbefugten Zugriff häufig erst, wenn verdächtige Aktivitäten im Konto auftauchen.
Überwachung und Proxy-Manipulation
Ein zweites Modul von JSCeal ermöglicht Überwachung: Es zeichnet Tastatureingaben auf und erstellt Screenshots. Noch weitreichender ist die Proxy-Funktionalität. Die Malware installiert einen lokalen Proxy, generiert und installiert eigene Zertifikate und kann dann den Datenverkehr zu bestimmten Diensten abfangen und manipulieren. Die rekonstruierten Codefragmente zeigen dedizierte Handler, die Anfragen und Antworten für Binance, Bybit und Ledger modifizieren. Darüber hinaus existieren generische Handler zum Ersetzen von HTML, zum Blockieren von Hosts und zum Löschen ausgewählter Cookies. Ein weiterer Handler ist speziell darauf ausgelegt, Kontodaten und Kryptowährungsguthaben zu erfassen.
„JSCeal kombiniert zwei Formen von Analysewiderstand: ein versionsspezifisches kompiliertes V8-Format und mehrere Schichten JavaScript-Obfuskation vor der Kompilierung“, erklärt Sicherheitsforscherin Aleksandra „Hasherezade“ Doniec. „Keine dieser Techniken macht die Malware unmöglich zu analysieren, aber zusammen verschieben sie sie außerhalb der Arbeitsabläufe, auf die Analysten normalerweise vertrauen.“
Entwicklung und Ausblick
Die Methoden der Angreifer zeigen, dass sie sowohl in die Erschwerung der Analyse als auch in die Verbreiterung der Plattformabdeckung investieren. Die Kampagnen laufen weiterhin, und die jüngsten Änderungen deuten darauf hin, dass JSCeal aktiv weiterentwickelt wird. Mit der zunehmenden Verbreitung von Compiled-JavaScript-Malware und der Nutzung vertrauenswürdiger Werbeplattformen als Einfallstor müssen Unternehmen und Privatanwender ihre Sicherheitsstrategien überdenken. Der Schutz vor Session-Cookie-Diebstahl erfordert unter anderem den Einsatz von kurzlebigen Sitzungstoken, strikte SameSite-Richtlinien und die kontinuierliche Überwachung auf ungewöhnliche Sitzungsaktivitäten. Gleichzeitig zeigt der Fall JSCeal, wie wichtig eine mehrschichtige Verteidigung ist, die auch die Entschleierung und dynamische Analyse von compiled Code umfasst.