Des versions malveillantes de l’extension Claude Code d’Anthropic ont été diffusées aux utilisateurs de Cursor dans le cadre d’une nouvelle attaque de la chaîne d’approvisionnement logicielle. L’incident s’est produit le 29 octobre, et les versions concernées n’ont été accessibles que pendant environ 11 heures. Elles ne provenaient pas d’Anthropic, qui affirme que ses canaux officiels ne sont pas touchés.
- Des versions malveillantes de l’extension Claude Code ont été diffusées aux utilisateurs de Cursor.
- Elles sont restées accessibles pendant environ 11 heures sur la place de marché de Cursor.
- Le code tentait d’ouvrir un accès à distance par tunnel SSH inversé et de rester actif après redémarrage.
- Anthropic n’est pas à l’origine de ces versions, et Cursor recommande de les supprimer sans attendre.
Les versions 2.1.312 et 2.1.313 de l’extension anthropic.claude-code étaient disponibles dans la place de marché d’extensions VS Code de Cursor. Ciblant à la fois les utilisateurs de macOS et de Windows, elles contenaient du code JavaScript conçu pour s’exécuter au chargement de certains modules et mettre en place un tunnel SSH inversé, un accès à distance vers la machine infectée. Selon le chercheur en sécurité Kevin Beaumont, environ 5 000 systèmes de développeurs auraient pu télécharger ces versions.
Une copie modifiée publiée via la place de marché de Cursor
Anthropic a indiqué que les versions modifiées n’avaient pas été développées par l’entreprise et qu’elles n’avaient pas été publiées sur le Microsoft Visual Studio Marketplace, sur Open VSX ni sur le registre NPM. « Un acteur malveillant a utilisé l’accès à la place de marché de Cursor pour publier une copie altérée de l’extension Claude Code, que nous n’avons ni construite ni publiée. Les versions de nos canaux officiels ne sont pas touchées, et cela n’affecte que les utilisateurs de Cursor », a déclaré Felix Rieseberg, d’Anthropic. Pour éviter toute confusion, Anthropic a mis à jour directement sa version légitime de l’extension, passée à la version 2.1.314.
Du côté de Cursor, l’extension modifiée a été retirée de la boutique dès son identification, et la place de marché a été suspendue le temps de l’enquête. Cursor indique n’avoir trouvé aucune autre extension malveillante, avoir renouvelé l’ensemble de ses clés, reconstruit puis rouvert la place de marché. L’entreprise a également collaboré avec le fournisseur de cloud qui hébergeait le serveur de l’attaquant pour le mettre hors ligne. « Nous n’avons aucune preuve que d’autres versions de l’extension ou la distribution officielle soient affectées », a précisé Cursor.
Des actions de collecte d’informations et de persistance
D’après l’analyse publiée par Microsoft, la fonction JavaScript exécutée au chargement collectait des informations sur la machine, modifiait des fichiers et lançait des commandes système. Selon Microsoft, le code tentait d’installer une clé SSH, d’activer le service SSH, de créer le tunnel et de configurer sa persistance, c’est-à-dire sa capacité à rester actif après un redémarrage. « Le chargeur commence par collecter des informations sur l’hôte. Il tente ensuite d’installer une clé SSH, d’activer SSH, de créer un tunnel inversé et de configurer la persistance. Un rappel différé tente ensuite d’envoyer les détails de l’hôte », indique Microsoft. Les chercheurs ont observé la collecte du nom d’hôte, du nom d’utilisateur, du système d’exploitation, de l’architecture, du répertoire de travail et de l’adresse e-mail Git globale, ainsi que le déploiement de scripts spécifiques à chaque plateforme. Selon Cursor, l’activation du service SSH exige des droits administrateur que l’extension ne possède pas sur la plupart des systèmes macOS et Windows : cette étape a donc échoué, ce qui aurait empêché les attaquants de se connecter via le tunnel.
Cursor recommande aux utilisateurs de supprimer au plus vite les versions malveillantes et a publié un script de détection ainsi que des indicateurs de compromission. L’entreprise précise que la désinstallation de l’extension pourrait ne pas suffire, car la charge malveillante dépose des scripts de persistance autonomes qui continuent de fonctionner.
