Danger autour d’une extension Claude Code vérolée dans la boutique de Cursor Vous avez le week-end pour tout réinstaller Illustration : Flock Vincent Hermann Le 30 octobre à 16h45 Une version piégée de l’extension Claude Code pour Visual Studio Code a été distribuée le 29 octobre dans la boutique Cursor. Elle installait une porte dérobée SSH persistante. Même si le problème a été résolu, l’extension frelatée a été installée par environ 5 000 personnes et pose de nouveau la question des chaînes d’approvisionnement.
Une erreur ? Dans la journée du 29 octobre, quelque part entre 10h27 et 21h35 (heure de Paris), une version vérolée de l’extension Claude Code pour VS Code a été distribuée dans la boutique de Cursor. Estampillée 2.1.313, elle est restée suffisamment de temps en ligne pour avoir été téléchargée.
Les 5 000 personnes concernées sont actuellement contactées, a indiqué Cursor. L’éditeur dit avoir supprimé la version, arrêté intégralement sa boutique d’extensions, audité les accès, renouvelé ses clés, reconstruit la boutique et fait mettre hors ligne le serveur de l’attaquant par son hébergeur. Les différents contrôles n’ont révélé aucune autre extension modifiée.
Où l’attaque a-t-elle commencé ? Le principal point flou dans cette histoire est que l’on ne sait pas exactement quand tout a commencé. Tout dépend de qui raconte l’incident.
Chez Phorion par exemple, l’attaque est présentée comme une compromission de la fiche officielle sur Open VSX, la boutique d’extensions pour l’environnement Eclipse. Phorion affirme également qu’Anthropic a retiré la version 2.1.313 d’Open VSX, de npm et même du Marketplace de Microsoft pour VS Code. OpenSourceMalware, qui a publié la première analyse, indique que l’échantillon analysé provenait bien d’Open VSX.
Le site en a déduit une diffusion par npm et le Marketplace de Microsoft en se basant sur un constat : la version 2.1.313 n’y figurait plus. Il précise que la provenance de l’artefact n’est pas établie et que ses conclusions ne prouvent pas une compromission de la distribution officielle d’Anthropic. Et pour cause, les retraits de npn et du Marketplace peuvent n’être qu’une mesure de sécurité, dans l’optique de supprimer toutes les versions 2.1.313 existantes.
Problème, pour l’instant, ni Anthropic ni Microsoft n’ont réagi publiquement à l’incident. Chez StepSecurity, on affirme que la compromission a commencé chez Open VSX avant d’être étendue à Cursor, puisque la boutique de ce dernier est un intermédiaire dont la base se synchronise avec le registre Open VSX. Les contrôles de sécurité appliqués sur ce dernier sont limités, avec un examen portant sur les motifs malveillants les plus connus.
Ce qui signifie que l’extension vérolée aurait passé non seulement ces contrôles, mais également ceux de Cursor, plus poussés. Illustration de ces incertitudes, The Hacker News a mis à jour son article pour indiquer que la compromission venait de Cursor seul. Pour cela, il faudrait que l’infrastructure propre à Cursor ait été compromise, ce que l’éditeur ne dit pas clairement.
Cependant, le nombre d’actions entreprises pourrait aller dans ce sens, Cursor ayant renouvelé ses clés et reconstruit son magasin. Le fonctionnement du malware Si on ne sait pas comment tout a commencé ni qui est réellement concerné, on connait en revanche mieux le fonctionnement du code malveillant, les analyses de Phorion, OpenSourceMalware et Cursor s’accordant sur les détails. L’extension contient ainsi un chargeur de 66 lignes, placé en tête du fichier extension.js.
Il se lance dès le chargement du module, sans nécessiter d’action de l’utilisateur et donc avant même de lancer une conversation avec Claude. Ce chargeur ajoute une clé publique SSH liée à l’attaquant dans le dossier ~/.ssh/authorized_keys, pour lui donner un accès distant permanent sur l’ordinateur de la victime. La clé est étiquetée « svc-telemetry » pour paraitre anodine.
Le code vérifie ensuite que le service SSH est présent et actif. Dans le cas contraire, il tente de l’activer. Sur la plupart des Mac et PC sous Windows, l’étape échoue, non seulement faute de droits administrateur mais aussi car le code contient des erreurs.
Sur Linux, le code réussit. Le malware cherche ensuite à faire établir une connexion sortante vers le serveur de l’attaquant et à la maintenir ouverte. L’attaquant n’a alors plus qu’à emprunter ce tunnel en sens inverse pour atteindre la porte SSH et entrer avec sa clé privée, ouvrant la voie vers un terminal et la possibilité de lancer des commandes.
Le code installe aussi un petit script qui se relance à chaque démarrage de l’ordinateur et retente la connexion une fois par minute. Sur macOS, ce script se déguise en composant Apple (com.apple.sysmond), sur Windows en tâche Sysmon ou en script dans le dossier Démarrage, et sur Linux en tâche planifiée. La désinstallation de l’extension ne suffit donc pas.
Le code envoie enfin une fiche descriptive de la machine avec nom de l’ordinateur, utilisateur, système, adresse IP publique, adresse électronique Git et dossier de travail. Cette charge utile ne vole donc en elle-même aucune information cruciale, mais elle prépare le terrain. Le danger vient avant tout de ce que le pirate peut réaliser une fois la connexion établie via SSH.
Des vérifications à faire La fiche de Cursor sur l’incident, publiée hier soir, mentionne uniquement des vérifications à faire pour macOS et Windows. L’éditeur ne le dit pas explicitement, mais il semble que Linux ne soit curieusement pas concerné, malgré les détails techniques allant pourtant dans ce sens. Faute de script officiel, les analyses de Phorion et OpenSourceMalware présentent une série de commandes bash.
Dans les trois cas cependant, si une preuve de compromission est détectée, il faudra effectuer plusieurs manipulations. Mais la recommandation est claire : réinstaller complètement la machine sera l’option la plus sûre. Cursor indique dans son billet que les 5 000 personnes (environ) qui ont installé l’extension modifiée sont contactées pour être averties du problème.
Cet article est en accès libre, mais il est le produit d'une rédaction qui ne travaille que pour ses lecteurs, sur un média sans pub et sans tracker. Soutenez le journalisme tech de qualité en vous abonnant. Accédez en illimité aux articles d'un média expert Profitez d'au moins 1 To de stockage pour vos sauvegardes Intégrez la communauté et prenez part aux débats Partagez des articles premium à vos contacts Abonnez-vous Signaler un commentaire Voulez-vous vraiment signaler ce commentaire ?
Non Oui