Es waren elf Minuten. Genau elf Minuten zwischen 12:36 und 12:47 UTC am 18. Mai 2026, in denen die kompromittierte Version 18.95.0 der VS-Code-Erweiterung Nx Console im offiziellen Visual Studio Code Marketplace stand – frei verfügbar für die mehr als 2,2 Millionen Entwicklerinnen und Entwickler, die das Plug-in installiert haben. Wer in diesem Zeitfenster ein VS-Code-Fenster öffnete, lieferte den Angreifern in wenigen Sekunden seine GitHub-, npm-, AWS-, HashiCorp-Vault-, Kubernetes- und 1Password-Tokens aus. Bei macOS-Systemen blieb zusätzlich ein persistenter Python-Backdoor zurück, der die GitHub-Such-API als verdeckten Befehlskanal nutzt. Und – ein in dieser Form bisher nie dokumentiertes Muster – die Schadroutine las gezielt die Konfigurationsdateien lokal installierter KI-Assistenten aus: ~/.claude/settings.json für Claude Code, die entsprechenden Pfade für Google Gemini CLI und Amazon Q Developer.

Was hier passiert ist, gehört zu den schwersten Angriffen auf die Entwickler-Lieferkette, die wir 2026 gesehen haben – und es betrifft jeden Mittelstand, der eigene Software entwickelt, ein Build-Team beschäftigt oder mit externen Dienstleistern an Code arbeitet. Der Vorfall, in der Forensik bereits als s1ngularity-Aftermath bezeichnet, zeigt drei Verschiebungen, die die Informationssicherheit 2026 prägen werden: Angreifer zielen nicht mehr auf Produktionsserver, sondern auf Entwicklerarbeitsplätze. Sie nutzen Marketplaces, denen IT-Abteilungen automatisch vertrauen. Und sie haben die Konfigurationsdateien von KI-Coding-Tools als neues, hoch privilegiertes Beuteziel entdeckt.

Der Angriffsverlauf: vom geleakten Token zum 498-KB-Payload

Die Ereigniskette beginnt nicht am 18. Mai, sondern Wochen früher in einer separaten Lieferkettenkampagne, die Sicherheitsforscher inzwischen als Mini Shai-Hulud klassifizieren. Bei diesem Wurm, der sich seit Ende April durch npm- und PyPi-Pakete frisst, wurde unter Hunderten anderer Zugangsdaten auch das persönliche GitHub-Token eines Nx-Contributors abgegriffen. Dieses Token hatte Push-Rechte auf das offizielle nrwl/nx-Repository und – über die dort hinterlegten GitHub-Actions-Secrets – mittelbar Zugriff auf das Veröffentlichungs-Token des Visual Studio Code Marketplace (VSCE_PAT).

Um 03:18 UTC pushte der Angreifer einen orphan commit – einen Commit ohne Eltern-Knoten, der nicht in der regulären Branch-Historie auftaucht – in das Repository. In diesem verwaisten Commit lag das eigentliche Payload: ein 498 KB großer, mehrstufig obfuskierter Credential-Stealer mit dem internen Codenamen QUIETVAULT. Anschließend baute der GitHub-Actions-Workflow des Nx-Repositories die kompromittierte Version automatisiert – ohne dass die Maintainer etwas bemerkten, denn der Workflow lief in einem Branch, der für das Veröffentlichungsskript freigegeben war. Um 12:36 UTC erschien Version 18.95.0 im Visual Studio Code Marketplace.

Im minifizierten Hauptmodul der Extension fanden Forensiker später nur 2.777 Bytes injizierten Code. Dieser Code lädt beim ersten Öffnen eines beliebigen Workspaces das eigentliche Payload aus dem orphan commit nach und führt es aus. Bemerkenswert ist die Geschwindigkeit: Vom Workspace-Öffnen bis zur ersten Exfiltration vergehen weniger als drei Sekunden. Die Daten werden über drei parallele Kanäle ausgeleitet, um Filter zu umgehen: HTTPS gegen einen bei Cloudflare gehosteten Endpunkt, die GitHub-API in Form von Issue-Comments mit Base64-codierten Payloads, und schließlich DNS-Tunneling über kontrollierte Nameserver. Jeder Kanal allein würde in einer typischen Mittelstands-Firewall durchgehen.

QUIETVAULT: ein Credential-Stealer mit KI-Tool-Bewusstsein

Was QUIETVAULT von früheren Stealer-Familien wie LummaC2 oder RedLine unterscheidet, ist die Zielauswahl. Die Schadroutine durchsucht über 100 hartcodierte Dateipfade nach Geheimnissen – darunter klassische Ziele wie ~/.aws/credentials, ~/.npmrc, ~/.docker/config.json oder die config-Dateien von HashiCorp Vault und Kubernetes. Neu ist die explizite Suche nach Konfigurationen lokal installierter KI-Coding-Assistenten.

QUIETVAULT erkennt drei AI-CLI-Werkzeuge: Claude Code (Pfad ~/.claude/settings.json und die zugehörigen MCP-Konfigurationen), Google Gemini CLI und Amazon Q Developer. Die Schadroutine ruft die Binaries dieser Werkzeuge mit Permission-Bypass-Flags auf, um an die im Speicher gehaltenen OAuth-Refresh-Tokens, API-Schlüssel und – im Fall von Claude Code – an die in den MCP-Server-Konfigurationen hinterlegten Drittanbieter-Tokens zu gelangen. Wer sein KI-Werkzeug mit Zugängen zu Jira, GitHub, Slack oder einer Datenbank konfiguriert hatte, hatte diese Zugänge nach Sekunden ebenfalls verloren.

Das ist die strategische Pointe des Angriffs: KI-Assistenten sind hochprivilegierte Aggregatoren. Eine einzige Claude-Code-Konfiguration mit zehn angebundenen MCP-Servern entspricht zehn API-Keys auf einem Silbertablett. Der Angreifer muss nicht mehr in jedes System einzeln eindringen – er holt sich die Sammelmappe.

Persistenz auf macOS: GitHub-Search-API als Dead Drop

Auf macOS-Systemen geht QUIETVAULT einen Schritt weiter und installiert einen persistenten Python-Backdoor. Dieser registriert sich als LaunchAgent unter ~/Library/LaunchAgents/com.apple.update.plist – ein Pfad, der harmlos genug aussieht, um in flüchtigen Audits durchzurutschen. Der Backdoor pollt einmal pro Stunde die öffentliche GitHub-Such-API mit einem fest definierten Suchstring. Die Treffer-Repositories enthalten in ihren README-Dateien Befehle, die mit einem 4096-Bit-RSA-Schlüssel signiert sind und nur vom Backdoor entschlüsselt werden können. Dieses Muster – die Nutzung einer legitimen, von jeder Unternehmens-Firewall durchgelassenen API als Dead Drop – macht die Erkennung über klassische Netzwerk-Indikatoren praktisch unmöglich.

Linux- und Windows-Systeme wurden in dieser Kampagne nicht mit Persistenz ausgestattet. Vermutlich liegt das daran, dass macOS in der Zielgruppe – Entwicklerinnen und Entwickler von Web- und Backend-Software – überdurchschnittlich verbreitet ist und gleichzeitig in vielen Mittelstandsfirmen vom regulären EDR-Rollout ausgenommen wird, weil das IT-Team primär Windows verwaltet.

Warum 11 Minuten reichen: die Mathematik des Marketplace-Angriffs

Visual Studio Code prüft installierte Erweiterungen alle sechs Stunden auf Updates. Bei aktivierter Auto-Update-Funktion – Standardverhalten – wird die neueste Version unbemerkt im Hintergrund eingespielt. Die Nx-Console-Extension hat eine Update-Telemetrie, die nach Aussage des Nx-Teams etwa 47.000 Aktivierungen pro Stunde verzeichnet. In den elf Minuten der Kompromittierung haben damit – konservativ geschätzt – zwischen 8.000 und 10.000 Entwicklerarbeitsplätze die manipulierte Version geladen und ausgeführt. Das Nx-Team hat die Versionen zwar zurückgezogen, doch jeder Arbeitsplatz, der in diesen elf Minuten online war, muss als kompromittiert gelten.

Das Problem für Sicherheitsteams: VS Code protokolliert Extension-Updates standardmäßig nicht in einer maschinell auswertbaren Form. Die Frage „Hat jemand in meiner Firma zwischen 12:36 und 12:47 UTC am 18. Mai die Nx Console aktualisiert?" ist ohne einen zentralen Endpoint-Detection-and-Response-Sensor mit File-Integrity-Monitoring kaum zu beantworten. Genau diese Sichtbarkeitslücke wird in den nächsten Wochen zur eigentlichen Folgeschaden-Quelle.

Konkrete Handlungsempfehlungen für IT-Verantwortliche

Wer im Unternehmen Entwicklerteams führt, sollte jetzt – in dieser Reihenfolge – handeln:

1. Sofort-Maßnahmen (in den nächsten 24 Stunden)

Inventarisierung: Über das EDR oder per Skript prüfen, ob die Version 18.95.0 der Erweiterung nrwl.angular-console auf irgendeinem Endpoint installiert war. Auf macOS reicht ein Blick in ~/.vscode/extensions/nrwl.angular-console-18.95.0. Auf Windows entsprechend unter %USERPROFILE%\.vscode\extensions\.

Update erzwingen: Alle Entwicklerarbeitsplätze auf Version 18.100.0 oder neuer aktualisieren. Bei zentral verwalteten VS-Code-Installationen über eine Settings-Sync-Richtlinie.

Token-Rotation: Alle Geheimnisse, die in den letzten 72 Stunden auf einem potentiell betroffenen Arbeitsplatz lagen, rotieren. Das umfasst Personal Access Tokens für GitHub und GitLab, npm-Tokens, AWS-Access-Keys, Service-Account-Keys für GCP und Azure, HashiCorp-Vault-Tokens, Kubernetes-Kubeconfigs, 1Password-CLI-Sessions, SSH-Schlüssel und .env-Dateien. Bei KI-Coding-Tools zusätzlich die OAuth-Refresh-Tokens widerrufen und MCP-Server-Tokens neu ausstellen.

2. Mittelfristig (in den nächsten zwei Wochen)

Persistenz-Check macOS: Bei jedem Mac in Ihrer Flotte den Pfad ~/Library/LaunchAgents/com.apple.update.plist prüfen. Falls vorhanden und nicht von einem legitimen Apple-Update-Mechanismus stammend, entfernen und den entsprechenden Prozess (oft python3) terminieren.

Netzwerk-Forensik: Logs der ausgehenden DNS-Anfragen der letzten 72 Stunden auf verdächtige Subdomains durchsuchen, die mehr als 30 Zeichen lang sind und Base32-codiert wirken (Muster [a-z2-7]{30,}). Diese sind das Indiz für DNS-Tunneling.

Code-Audit: Falls im fraglichen Zeitfenster Commits oder Pushes von einem betroffenen Arbeitsplatz erfolgten, müssen diese auf Backdoors geprüft werden. QUIETVAULT injiziert in einer zweiten Stufe optional Code in lokale Git-Repositories.

3. Strategisch (in den nächsten drei Monaten)

Die organisatorische Konsequenz aus diesem Vorfall ist tiefgreifender als ein Patch-Zyklus. Entwicklerarbeitsplätze sind 2026 nicht mehr nur Arbeitsmittel – sie sind kritische Komponenten Ihrer Software-Lieferkette. Ein kompromittierter Laptop kann über CI/CD-Pipelines Code in Produktion bringen, der ein ganzes ERP-System ersetzt. Wer das ernst nimmt, beginnt mit drei Bausteinen: einer Extension-Allowlist in VS Code, die nur freigegebene Erweiterungen zulässt; einer Secrets-Hygiene, die langlebige Tokens durch kurzlebige, MFA-bestätigte OIDC-Trust-Beziehungen ersetzt; und einer Network-Segmentation, die Entwicklerarbeitsplätze von produktiven Datenquellen trennt.

Wer beim Aufbau dieser Bausteine Unterstützung sucht, findet bei pleXtec in der Leistungsübersicht die Module für Secure-Development-Lifecycle-Beratung, Endpoint-Härtung und CI/CD-Pipeline-Auditierung. Für eine konkrete Bestandsaufnahme Ihrer Entwicklungsumgebung – inklusive Extension-Inventur und Secret-Scan – nehmen Sie über das Kontaktformular Verbindung mit unserem Security-Team auf.

Was dieser Vorfall über die Branche aussagt

Die s1ngularity-Welle ist Teil eines Trends, der seit Anfang 2026 messbar zunimmt: TanStack wurde am 11. Mai kompromittiert, DAEMON Tools seit Anfang April, dutzende npm-Pakete im Mini-Shai-Hulud-Wurm Mitte Mai. Angreifer haben verstanden, dass der direkte Weg auf einen Produktionsserver – mit WAF, EDR, SIEM, Zero-Trust-Architektur – deutlich teurer ist als der Umweg über einen Entwicklerarbeitsplatz, an dem ein Vertrauensvorschuss zugunsten von Produktivität gilt. Eine Marketplace-Extension wird in den meisten Unternehmen nicht durch ein Change-Advisory-Board genehmigt, sondern von Entwicklern selbstständig installiert.

Das ist nicht das Versagen der Entwickler – es ist das Ergebnis einer Sicherheitsarchitektur, die für die Welt der 2010er gebaut wurde, als „Supply Chain" noch die Lieferkette eines Maschinenbauers meinte. 2026 ist Supply Chain im Mittelstand jeder Klick auf „Install" in einem öffentlichen Marketplace. Wer das nicht begreift, wird die nächsten elf Minuten in einer Schlagzeile wiederfinden, in der sein Firmenname steht.

Die gute Nachricht: Die Bausteine, um Entwicklerarbeitsplätze wie produktive Systeme abzusichern, sind verfügbar, gut dokumentiert und ohne große Lizenzkosten implementierbar. Es braucht aber eine Entscheidung der Geschäftsführung, die eigene Softwareentwicklung als sicherheitskritisches Asset zu behandeln und die Entwicklungsumgebung – Workstation, IDE, Extension-Marketplace, CI/CD, Build-Server – als zusammenhängende Angriffsfläche zu erfassen.

Den Angreifern reichen elf Minuten. Wie viele brauchen Sie, um zu wissen, ob jemand in Ihrer Firma in diesen elf Minuten online war?