Le 13 novembre, Cursor a publié sur son blog officiel les conclusions de l'enquête sur l'incident de sécurité du 29 octobre : l'attaque a commencé avec une clé d'accès divulguée par le fournisseur tiers Fireworks. L'attaquant s'en est servi pour copier des traces d'agents de codage depuis un compartiment de stockage en lecture seule, puis a glissé une copie falsifiée de l'extension Claude Code dans le cache du marketplace d'extensions de Cursor. Jusqu'à 5 000 utilisateurs pourraient avoir installé la version contaminée. L'immense majorité des utilisateurs n'a pas été touchée, et Cursor a contacté chaque utilisateur concerné individuellement.
Comment l'attaque s'est déroulée
L'enquête reconstitue la séquence à peu près ainsi. Tout a commencé chez Fireworks : l'attaquant a mis la main sur une clé que Cursor avait émise pour ce fournisseur et a copié des traces d'agents de codage, principalement de 2025, depuis un compartiment en lecture seule. Un petit nombre d'enregistrements non expurgés contenaient des identifiants, exposant les identifiants API de moins de 0,01 % des utilisateurs. Muni de ces identifiants, l'attaquant a accédé à certains outils SaaS utilisés par Cursor, puis à des dépôts de code source archivés hors production, à des données du support client et à des échanges d'e-mails, à des indicateurs d'utilisation du produit ainsi qu'à des identifiants envoyés par des utilisateurs à l'équipe support. Après que ses systèmes de surveillance ont repéré l'activité non autorisée, Cursor a désactivé la clé du fournisseur et commencé à faire tourner les identifiants et à traquer d'éventuels autres accès non autorisés.
La deuxième étape fut l'extension malveillante. Le 29 octobre, l'attaquant a utilisé un identifiant volé pour placer des copies falsifiées de l'extension Claude Code, versions 2.1.312 et 2.1.313, dans le cache du marketplace d'extensions de Cursor, où elles sont restées environ 11 heures avant d'être retirées. Anthropic n'a pas publié cette copie, et Open VSX, la source du marketplace, n'a jamais été infecté. Jusqu'à 5 000 utilisateurs ayant demandé des versions en cache précises pourraient l'avoir reçue. Le 30 octobre, Cursor a publié un avis de sécurité et des scripts de vérification et a commencé à prévenir les utilisateurs concernés et les administrateurs d'équipe ; la dernière activité de l'attaquant a été observée le 1er novembre et bloquée. Cursor estime que l'incident est contenu.
Qui doit vérifier son installation
Les utilisateurs n'ayant reçu aucune notification n'avaient aucune donnée dans les traces exposées et n'ont rien à faire — même chez les utilisateurs hors mode de confidentialité, moins de 0,05 % des traces d'agents de codage ont été exposées. En revanche, toute personne ayant installé ou mis à jour l'extension Claude Code en version 2.1.312 ou 2.1.313 depuis le marketplace de Cursor le 29 octobre doit suivre les étapes de l'avis de sécurité officiel ; désinstaller l'extension ne suffit pas. Les invites et le code des utilisateurs en mode de confidentialité, les systèmes de production, l'application Cursor et ses mises à jour officielles, ainsi que les dépôts de code des clients n'ont pas été touchés. L'actualité a été chargée pour Cursor ces derniers temps : les modèles d'OpenAI ont quitté Cursor le 12 novembre.
Cursor a déplacé tout son trafic d'inférence hors de Fireworks et désactivé la clé concernée, fait tourner l'ensemble des identifiants internes, reconstruit le marketplace d'extensions et fait appel à des experts externes en criminalistique numérique. L'épisode rappelle à tous les développeurs que la couche de cache d'un marketplace d'extensions peut elle-même devenir une surface d'attaque : avant d'installer une extension, vérifiez que l'éditeur est bien l'éditeur officiel.