Zum Hauptinhalt springen
← Alle Beiträge

Trojanisierte Claude Code-Erweiterung für Cursor betraf rund 5.000 Systeme

Eine manipulierte Claude Code-Erweiterung, Version 2.1.313, wurde auf dem Marktplatz von Cursor veröffentlicht und versuchte, auf Entwicklerrechnern eine SSH-Hintertür für den Fernzugriff einzurichten. Laut Cursor waren rund 5.000 Systeme betroffen.

Eine bösartige Version der Claude Code-Erweiterung von Anthropic für den Editor Cursor befand sich eine Zeit lang auf den Rechnern von Entwicklern und versuchte, einem Fremden per SSH-Schlüssel dauerhaften Zugang zu verschaffen. Laut Cursor war der Versuch schlecht programmiert und scheiterte größtenteils. Dennoch waren rund 5.000 Systeme betroffen – ziemlich viele Laptops, die man dem schlampigen Code eines Fremden ausliefert.

Das Paket hatte die Versionsnummer 2.1.313 und enthielt einen Remote-Access-Trojaner (RAT). Folgendes ist darüber bekannt, wie er dorthin gelangte, was er tat und was er hinterließ.

Was die Erweiterung sammelte

Bevor die Erweiterung sich an Größeres wagte, machte sie eine Bestandsaufnahme. Der Bericht nennt die folgenden Daten:

  • den Gerätenamen und das Benutzerkonto
  • das Betriebssystem und seine Architektur
  • das Home-Verzeichnis und die Arbeitsverzeichnisse
  • die Namen der Umgebungsvariablen
  • die in der Git-Konfiguration hinterlegte E-Mail-Adresse
  • die öffentliche IP-Adresse

Die Quelle spricht von den „Namen“ der Umgebungsvariablen und sagt nichts über deren Werte. Ob auch die Werte ausgelesen wurden, geht daraus nicht hervor.

Die Erweiterung meldete außerdem Systemdetails und den Status ihrer eigenen Hintertür an einen vom Angreifer kontrollierten Server. Der Angreifer erhielt also laufend einen Überblick darüber, bei welchen Rechnern sich der Aufwand lohnte.

Eine Hintertür, die sich meist nicht öffnete

Das Hauptziel war dauerhafter Fernzugriff. Der Code versuchte, den SSH-Schlüssel des Angreifers zur Liste der zugelassenen Schlüssel hinzuzufügen, den lokalen SSH-Dienst zu aktivieren und einen Reverse-SSH-Tunnel aufzubauen. Ein solcher Reverse-Tunnel ist wichtig, weil der infizierte Rechner die Verbindung nach außen aufbaut. So kann der Angreifer von außen darauf zugreifen, selbst wenn eingehende Verbindungen normalerweise blockiert werden.

Die Beschreibung von Cursor klingt weniger beunruhigend als das Konzept. Wegen Fehlern im Schadcode dürfte der Schritt zur Einrichtung eines dauerhaften Zugangs in den meisten Fällen mit einem Fehler geendet haben. Er funktionierte nur unter ungewöhnlichen Bedingungen, etwa wenn Cursor mit Administratorrechten lief. Die Skripte versuchten es ungefähr alle 60 Sekunden erneut. Bei einem Rechner, der diese Bedingungen erfüllte, hätte es also nicht lange gedauert.

Das ist nur ein schwacher Trost. Eine fehlerhafte Hintertür auf 5.000 Rechnern ist auf einigen davon trotzdem eine Hintertür, und der Bericht sagt nicht, auf wie vielen.

Von wem das Paket stammte

Bei der Frage nach der Urheberschaft wird die Darstellung etwas heikel. Laut Cursor hat Anthropic das bösartige Paket nicht geschrieben. Nach dieser Darstellung lud ein Angreifer mit Zugang zum Marktplatz von Cursor die veränderte Version hoch.

Der Autor des ursprünglichen Berichts fügt ein Detail hinzu, das diese Entwarnung relativiert. Das Paket wurde über ein verifiziertes Konto von Anthropic veröffentlicht. Genau das sehen Entwickler, wenn sie entscheiden, ob sie auf „Installieren“ klicken.

Die beiden Aussagen passen zusammen, wenn man den Vorfall als Angriff auf die Software-Lieferkette versteht. Jemand verschaffte sich Zugang zum Vertriebskanal und nutzte ihn. Der Bericht hält ausdrücklich fest, dass die eigene Infrastruktur von Anthropic nicht kompromittiert wurde. Für Entwickler, die entscheiden müssen, ob sie einer Erweiterung vertrauen, ist der Unterschied zwischen „Anthropic wurde gehackt“ und „Der Name Anthropic wurde für ein Paket verwendet, das nicht von Anthropic stammt“ allerdings nur eine feine Nuance.

Version 2.1.314 räumt nicht auf

Nachdem der Vorfall entdeckt worden war, wurde Version 2.1.313 von den Marktplätzen entfernt und durch 2.1.314 ersetzt. Ein Update ist der naheliegende Reflex, reicht aber nicht aus.

Das Update entfernt keine bereits eingerichtete SSH-Hintertür. Wenn es der früheren Version gelungen ist, einen Schlüssel zu hinterlegen oder den SSH-Dienst zu aktivieren, bleibt dies auch mit der neueren Version der Erweiterung bestehen. Der Autor des Berichts sagt außerdem, er könne noch nicht bestätigen, dass die neue Version vollständig frei von Schadcode sei. Das ist eine vorsichtige Art zu sagen, dass die Sache noch nicht abgeschlossen ist.

Wer es bemerkte und was noch unbekannt ist

Fachleute von Phorion bemerkten als Erste verdächtige Aktivitäten auf den Computern von Nutzern. Sie veröffentlichten KQL-Abfragen, mit denen sich in Microsoft Defender for Endpoint Spuren der Infektion finden lassen. Das ist nützlich, wenn deine Organisation diese Lösung einsetzt, und weniger nützlich, wenn sie es nicht tut.

Cursor bestätigte den Vorfall und bezifferte das Ausmaß der Kompromittierung. Was die Quelle nicht enthält, ist eine Angabe dazu, auf wie vielen infizierten Systemen am Ende tatsächlich ein funktionierender Fernzugang eingerichtet war. Angesichts der von Cursor selbst beschriebenen Fehler im Code liegt diese Zahl wahrscheinlich unter 5.000. Aber der Bericht sagt das nicht, und niemand sonst sollte es daher behaupten.

Was du prüfen solltest

Der Bericht enthält keine Checkliste zur Bereinigung. Das Folgende ist daher aus dem beschriebenen Verhalten abgeleitet. Wenn du die Claude Code-Erweiterung in Cursor zur Zeit dieser Veröffentlichung installiert hattest, orientieren sich die sinnvollen Prüfungen an den Schritten der Schadsoftware:

  • Suche in deiner Liste der zugelassenen Schlüssel nach einem SSH-Schlüssel, den du nicht selbst dort hinterlegt hast.
  • Prüfe, ob der lokale SSH-Dienst läuft, obwohl du ihn nicht aktiviert hast.
  • Suche nach ausgehenden SSH-Tunneln, die dir unbekannt sind.
  • Wenn du Microsoft Defender for Endpoint einsetzt, führe die veröffentlichten KQL-Abfragen aus.

Die betroffene Version der Erweiterung zu entfernen, reicht aus dem oben genannten Grund allein nicht aus.

Die Zahl von 5.000 erfasst die Systeme, die von dem Vorfall betroffen waren. Entscheidend ist, auf wie vielen davon am Ende eine funktionierende Hintertür bestand. Diese Zahl hat bislang niemand veröffentlicht.

Der Käse hat Löcher. Deine Infrastruktur sollte keine haben.