In der Welt der Softwareentwicklung sind neue Sicherheitsrisiken aufgetaucht, die direkt auf die Werkzeuge von Programmierern abzielen. Eine schädliche Erweiterung für Visual Studio Code mit Ransomware-Funktionen und eine Serie von bösartigen Paketen im npm-Register, die einen Datendieb verbreiten, verdeutlichen die wachsende Gefahr von Angriffen auf die Lieferkette von Software.
Diese Vorfälle unterstreichen, wie Angreifer zunehmend versuchen, Entwicklerumgebungen zu kompromittieren, um Malware zu verbreiten oder sensible Daten zu stehlen.
Wichtige Erkenntnisse
- Eine als "susvsex" identifizierte Visual Studio Code-Erweiterung enthielt grundlegende Ransomware-Funktionen.
- 17 Pakete im npm-Repository wurden entdeckt, die den gefährlichen Vidar Stealer-Trojaner verbreiteten.
- Beide Angriffswellen nutzen die Open-Source-Infrastruktur, um das Vertrauen von Entwicklern auszunutzen.
- Die Angriffe zeigen eine zunehmende Professionalisierung, auch wenn in einem Fall kritische Fehler gemacht wurden.
Gefährliche Erweiterung im VS Code Marketplace
Eine kürzlich im offiziellen Marktplatz für Visual Studio Code entdeckte Erweiterung hat bei Sicherheitsexperten für Aufsehen gesorgt. Unter dem Namen „susvsex“ wurde ein Tool veröffentlicht, das bei genauerer Analyse einfache, aber funktionale Ransomware-Eigenschaften aufwies. Die Erweiterung wurde am 5. November 2025 von einem Benutzer namens „suspublisher18“ hochgeladen und war mit der simplen Beschreibung „Just testing“ versehen.
Die Funktionsweise war direkt in der Beschreibung offengelegt: Die Erweiterung sollte bei der Installation oder beim Start von VS Code automatisch aktiviert werden. Ihre Hauptaufgabe war es, Dateien in einem bestimmten Verzeichnis zu komprimieren, auf einen externen Server hochzuladen und anschließend zu verschlüsseln.
Was ist eine Supply-Chain-Attacke?
Bei einem Angriff auf die Lieferkette (Supply Chain Attack) kompromittieren Angreifer nicht direkt ihr Endziel, sondern einen vertrauenswürdigen Drittanbieter oder eine Softwarekomponente, die das Ziel verwendet. Im Fall von Softwareentwicklung bedeutet dies oft, dass bösartiger Code in legitime Bibliotheken, Pakete oder Erweiterungen eingeschleust wird, auf die sich Entwickler verlassen.
Einblicke in die Funktionsweise
Die Erweiterung war so konfiguriert, dass sie bei jedem Ereignis innerhalb der Entwicklungsumgebung ausgelöst wurde. Eine Funktion namens „zipUploadAndEncrypt“ startete den schädlichen Prozess. Glücklicherweise war das Zielverzeichnis auf einen Testordner beschränkt, wodurch der potenzielle Schaden begrenzt blieb. Sicherheitsexperten weisen jedoch darauf hin, dass dieses Ziel leicht durch ein Update der Erweiterung hätte geändert werden können.
Zur Steuerung nutzten die Angreifer einen unkonventionellen Weg: Ein privates GitHub-Repository diente als Command-and-Control-Server (C2). Die Erweiterung fragte regelmäßig eine „index.html“-Datei in diesem Repository ab, um neue Befehle zu erhalten. Die Ergebnisse der ausgeführten Befehle wurden in eine andere Datei namens „requirements.txt“ im selben Repository zurückgeschrieben.
Fehler der Angreifer
Trotz der ausgeklügelten C2-Struktur machten die Entwickler der Malware gravierende Fehler. Das Paket enthielt versehentlich die Entschlüsselungswerkzeuge, den Server-Code für die Steuerung und sogar den GitHub-Zugangstoken. Dies hätte es Dritten ermöglicht, die Kontrolle über die gesamte Infrastruktur zu übernehmen.
Diese Fehler, zusammen mit ausführlichen Kommentaren im Code und Platzhaltervariablen, deuten laut Forschern darauf hin, dass die Malware möglicherweise mithilfe von künstlicher Intelligenz erstellt wurde, ohne dass die Entwickler die Funktionsweise vollständig verstanden. Microsoft reagierte schnell und entfernte die Erweiterung bereits am 6. November aus dem Marketplace.
Vidar Stealer über npm-Pakete verbreitet
Parallel zu dem Vorfall im VS Code Marketplace wurde eine weitere Bedrohung im npm-Ökosystem aufgedeckt, dem größten Paketmanager für JavaScript. Sicherheitsforscher identifizierten 17 bösartige Pakete, die den berüchtigten Information-Stealer „Vidar“ verbreiteten. Dies ist das erste Mal, dass diese spezielle Malware über das npm-Register verteilt wurde.
Die Pakete tarnten sich als Software Development Kits (SDKs) oder Forks beliebter Tools und lieferten teilweise sogar die versprochene Funktionalität, um keinen Verdacht zu erregen. Sie wurden von zwei Benutzerkonten, „aartje“ und „saliii229911“, veröffentlicht. Vor ihrer Entfernung wurden die Pakete mindestens 2.240 Mal heruntergeladen, wobei ein Teil dieser Downloads wahrscheinlich auf automatisierte Systeme zurückzuführen ist.
„Die Diversifizierung der Implementierung kann für den Angreifer von Vorteil sein, um einer Entdeckung zu entgehen.“ – Sicherheitsforscher über die unterschiedlichen Methoden der Malware-Ausführung.
Die Angriffskette im Detail
Der Angriff begann, sobald ein Entwickler eines der kompromittierten Pakete installierte. Ein in der Konfigurationsdatei „package.json“ definiertes „postinstall“-Skript wurde automatisch ausgeführt. Dieses Skript lud eine ZIP-Datei von einem externen Server herunter, der unter der Domain „bullethost[.]cloud“ lief.
Im Anschluss wurde die in der ZIP-Datei enthaltene ausführbare Datei von Vidar gestartet. Die Malware nutzte dann eine interessante Technik, um ihren eigentlichen C2-Server zu finden: Sie kontaktierte fest einprogrammierte Telegram- und Steam-Konten, die als „Dead Drop Resolver“ dienten und die Adresse des Servers preisgaben.
Die Forscher stellten fest, dass die Angreifer unterschiedliche Methoden zur Ausführung des Schadcodes verwendeten. Einige Varianten nutzten ein PowerShell-Skript direkt in der „package.json“, während andere die Logik in eine separate JavaScript-Datei auslagerten. Diese Variation diente vermutlich dazu, automatisierte Erkennungssysteme zu umgehen.
Betroffene Pakete (Auswahl)
- abeya-tg-api
- bael-god-admin
- cursor-ai-fork
- custom-telegram-bot-api
- react-icon-pkg
- telegram-bot-starter
Wachsende Gefahr für die Open-Source-Welt
Diese beiden Vorfälle sind Teil eines beunruhigenden Trends, der auf die gesamte Open-Source-Community abzielt. Repositories wie npm, PyPI (für Python) oder RubyGems sind zu einem Hauptziel für Angreifer geworden. Durch das Einschleusen von Schadcode in weit verbreitete Bibliotheken können sie eine große Anzahl von Entwicklern und letztendlich deren Nutzer infizieren.
Für Entwickler bedeutet dies, dass eine erhöhte Wachsamkeit unerlässlich ist. Es reicht nicht mehr aus, sich auf die Popularität oder den scheinbar legitimen Zweck eines Pakets zu verlassen. Eine sorgfältige Überprüfung ist notwendig, bevor externe Abhängigkeiten in ein Projekt integriert werden.
Empfehlungen für Entwickler
Um sich vor solchen Angriffen zu schützen, sollten Entwickler mehrere Sicherheitsmaßnahmen ergreifen:
- Abhängigkeiten prüfen: Überprüfen Sie regelmäßig die Abhängigkeiten Ihrer Projekte auf bekannte Schwachstellen. Tools zur Software Composition Analysis (SCA) können diesen Prozess automatisieren.
- Auf Typosquatting achten: Angreifer veröffentlichen oft Pakete mit Namen, die beliebten Bibliotheken sehr ähnlich sind (z. B. „react-icon-pkg“ statt „react-icons“).
- Änderungsprotokolle lesen: Vor dem Update einer Abhängigkeit sollten die Änderungsprotokolle (Changelogs) auf verdächtige Änderungen geprüft werden.
- Berechtigungen einschränken: Führen Sie Installationsprozesse mit minimalen Rechten aus, um den potenziellen Schaden durch bösartige Skripte zu begrenzen.
Die Sicherheit der Software-Lieferkette ist eine gemeinsame Verantwortung. Während Plattformbetreiber wie Microsoft und npm ihre Überwachungsprozesse verbessern, liegt es letztlich an den Entwicklern, wachsam zu bleiben und bewährte Sicherheitspraktiken anzuwenden.





