Eine von Sicherheitsforschern als WaterPlum verfolgte nordkoreanische Hackergruppe, die mit der Kampagne Contagious Interview in Verbindung steht, setzt aktuell auf einen ungewöhnlichen Angriffsvektor: präparierte Visual Studio Code-Projekte, die die Malware-Familie StoatWaffle einschleusen. Im Fokus stehen vor allem erfahrene Entwickler aus dem Kryptowährungs- und Web3-Umfeld, die über hohe Zugriffsrechte auf sensible Infrastruktur verfügen.
VS Code als Einfallstor: tasks.json wird zum Malware-Launcher
Nach Erkenntnissen von NTT Security missbraucht WaterPlum seit Dezember 2025 die Konfigurationsdatei tasks.json in VS Code. Entscheidender Hebel ist der Parameter runOn: „folderOpen“, mit dem sich Aufgaben automatisch beim Öffnen eines Projektordners starten lassen – ohne bewusste Aktion des Entwicklers.
Die im Projekt hinterlegte Task lädt zunächst Code von einem Webdienst auf Vercel oder aus GitHub Gist nach und führt diesen als Node.js-Skript aus. Da dieser Ansatz plattformunabhängig ist, sind Windows, macOS und Linux gleichermaßen betroffen. Für Angreifer entsteht damit ein universeller Einstiegspunkt in Entwicklerrechner.
StoatWaffle: mehrstufige, modulare Node.js-Malware
Der initial nachgeladene Komponenten-Code prüft, ob Node.js auf dem System installiert ist. Fehlt die Laufzeitumgebung, lädt der Schädling automatisch den offiziellen Node.js-Installer und richtet ihn ein. Dadurch schafft sich die Malware ihre eigene Ausführungsumgebung – ein typisches Merkmal moderner, resilienter Angriffsketten.
Anschließend startet ein Downloader, der in regelmäßigen Abständen mit einem Command-and-Control-Server (C2) kommuniziert und weitere Module nachlädt. Analysen zeigen, dass StoatWaffle als modulare Node.js-Malware konzipiert ist, die sich flexibel erweitern lässt.
Mindestens zwei Modultypen wurden beobachtet: Stealer zur Exfiltration von Zugangsdaten, Wallet-Informationen und vertraulichen Dateien sowie RAT-Module (Remote Access Trojan), die Angreifern eine dauerhafte Fernsteuerung des kompromittierten Systems ermöglichen. Die modulare Architektur erlaubt es WaterPlum, Funktionen nachzurüsten, ohne die gesamte Kampagne neu aufsetzen zu müssen.
Sozialer Angriffsvektor: fingierte Bewerbungsgespräche und Code-Tests
Laut Microsoft basiert die Kampagne Contagious Interview auf realistisch wirkenden Recruiting- und Interview-Szenarien. Über Plattformen wie LinkedIn kontaktieren die Angreifer gezielt Gründer, CTOs und Lead-Entwickler von Krypto- und Web3-Unternehmen und bieten hochdotierte Remote-Positionen an.
Im Rahmen vermeintlicher technischer Interviews werden die Opfer aufgefordert, Testprojekte von GitHub, GitLab oder Bitbucket zu klonen oder bestimmte Befehle in VS Code auszuführen – angeblich, um ihre Fähigkeiten zu bewerten. In Wahrheit enthalten diese Repositories die präparierten .vscode-Verzeichnisse und den tasks.json-Missbrauch.
Dieser Ansatz ist aus Angreifersicht besonders attraktiv: Senior-Personal verfügt oft über direkte Zugriffe auf Produktionsumgebungen, Schlüsselmaterial und Unternehmens-Wallets. Ein einzelner erfolgreicher Angriff kann daher erheblichen finanziellen Schaden verursachen, wie ähnliche Fälle im Kryptoumfeld der vergangenen Jahre gezeigt haben.
OtterCookie, InvisibleFerret, FlexibleFerret: die breitere WaterPlum-Toolchain
StoatWaffle ist nur ein Baustein in einer umfassenden Malware-Ökosphäre, die WaterPlum einsetzt. In beobachteten Infektionsketten tauchen regelmäßig weitere Komponenten auf:
OtterCookie fungiert als Backdoor mit erweiterten Datendiebstahl-Funktionen. InvisibleFerret ist ein Python-basierter Backdoor, der früher häufig durch den Loader BeaverTail ausgeliefert wurde, inzwischen aber vermehrt als Folgestufe nach OtterCookie zum Einsatz kommt. FlexibleFerret (alias WeaselStore) stellt einen weiteren modularen Backdoor dar, mit Varianten in Go (GolangGhost) und Python (PylangGhost), der zunehmend als finale Nutzlast in über GitHub verbreiteten VS‑Code-Projekten beobachtet wird.
Sicherheitsupdates in Visual Studio Code und Empfehlungen für Entwickler
Als Reaktion auf den Missbrauch des Tasks-Mechanismus hat Microsoft in VS Code Version 1.109 die Einstellung task.allowAutomaticTasks eingeführt. Sie deaktiviert standardmäßig den automatischen Start von Tasks aus tasks.json beim Öffnen einer Arbeitsumgebung.
Wichtig für die Sicherheit: Diese Option kann nicht mehr auf Workspace-Ebene überschrieben werden. Ein bösartiges Repository mit eigener .vscode/settings.json ist somit nicht in der Lage, strengere Nutzereinstellungen auszuhebeln. Zusätzlich warnen die Versionen 1.109 und 1.110 bei neu erkannten Auto-Tasks mit einem weiteren Dialog – ergänzend zum bestehenden Workspace-Trust-Modell.
Organisationen sollten diese Mechanismen aktiv nutzen und interne Richtlinien zur Prüfung von Testprojekten etablieren. Dazu gehören die Sichtkontrolle von .vscode-Ordnern, das Deaktivieren unnötiger Auto-Tasks, das Monitoring ungewöhnlicher Node.js-Prozesse sowie die Integration von EDR-Lösungen, die Entwickler-Laptops explizit einbeziehen.
Einordnung in die nordkoreanische Cyberstrategie
Die Aktivitäten von WaterPlum und ähnlichen Gruppen fügen sich in das Muster der staatlich gesteuerten Cyberoperationen der DVRK ein. Das US-Justizministerium berichtete jüngst über Urteile gegen drei US-Bürger, die nordkoreanischen IT-Spezialisten dabei geholfen haben sollen, über Scheinkonten Sanktionen zu umgehen und Einkommen zu generieren; in einem Fall wurden mehr als 190.000 US‑Dollar eingezogen.
Eine gemeinsame Analyse von Flare und IBM X‑Force beschreibt, dass nordkoreanische IT-Fachkräfte systematisch ausgebildet und streng ausgewählt werden, um anschließend als „Elitetruppe“ für Devisenbeschaffung, Cyberspionage, Ransomware und die Unterstützung weiterer Gruppen eingesetzt zu werden. Angriffe über VS Code, Git-Repositories und LinkedIn passen nahtlos in diese langfristige Strategie.
Die aktuelle Kampagne macht deutlich, dass selbst vertraute Werkzeuge wie IDEs, Code-Repositories und Hiring-Prozesse nicht mehr als „sicher per Default“ gelten können. Unternehmen – insbesondere im Krypto- und Web3-Sektor – sollten Testaufgaben aus externen Quellen standardisiert prüfen, Auto-Tasks in VS Code restriktiv konfigurieren, Entwicklersysteme wie kritische Produktionssysteme behandeln und ihre Teams regelmäßig zu Social Engineering, gefälschten Interviews und Supply-Chain-Risiken schulen. Je höher das Sicherheitsbewusstsein in Entwicklungsteams, desto schwerer fällt es Gruppen wie WaterPlum, die Vertrauensbasis moderner Entwicklungsumgebungen in ein Einfallstor für Cyberangriffe zu verwandeln.