Le 3 juin 2026, le chercheur en sécurité Ammar Askar a publié le code d’exploitation d’une vulnérabilité zero-day dans Visual Studio Code qui permet à un attaquant de dérober vos tokens d’authentification GitHub — et donc l’accès à tous vos dépôts privés — en vous faisant simplement cliquer sur un lien. Microsoft n’a pas encore publié de correctif. Voici ce qu’il faut savoir, et surtout comment vous protéger.

Comment fonctionne l’attaque ?

L’attaque exploite le mécanisme de passage de messages entre la webview sandboxée de VS Code et l’éditeur principal. Le scénario est le suivant :

  1. Un attaquant vous envoie un lien pointant vers github.dev (la version navigateur de VS Code utilisée pour éditer des dépôts GitHub)
  2. Quand vous ouvrez ce lien, github.dev reçoit un token OAuth transmis par github.com pour interagir avec l’API GitHub en votre nom
  3. Une extension malveillante — installée via la webview — exécute du JavaScript pour simuler des frappes clavier dans l’éditeur principal
  4. Ces frappes déclenchent l’installation d’une extension qui capture le token OAuth
  5. Le token est exfiltré vers l’attaquant, qui peut alors interroger l’API GitHub et énumérer tous les dépôts privés auxquels vous avez accès

Le problème central, comme l’explique Askar :

« Le token n’est pas limité au dépôt avec lequel vous interagissez. Il a un accès complet à tous les autres dépôts auxquels vous avez accès. »

Voici une représentation simplifiée du flux d’attaque :

┌─────────────────────────────────────────────────────────┐
│  1. Victime clique sur un lien github.dev piégé         │
│                    ↓                                     │
│  2. github.dev reçoit un token OAuth de github.com      │
│                    ↓                                     │
│  3. Extension malveillante dans la webview              │
│     → simule des keypresses dans l'éditeur principal     │
│                    ↓                                     │
│  4. Ces keypresses installent une 2e extension           │
│     → capture le token OAuth                             │
│                    ↓                                     │
│  5. Token exfiltré → attaquant accède à TOUS vos repos  │
└─────────────────────────────────────────────────────────┘

Ce qui rend cette faille particulièrement dangereuse

1. Zero-day : aucun correctif disponible

À l’heure où nous écrivons ces lignes, Microsoft n’a pas publié de correctif. La vulnérabilité n’a même pas encore reçu d’identifiant CVE. Le code d’exploitation (Proof of Concept) est publiquement disponible sur GitHub.

2. Un seul clic suffit

Pas besoin de télécharger un fichier, d’exécuter un script ou d’installer quoi que ce soit manuellement. Un simple clic sur un lien github.dev piégé — par exemple dans un email, un message Slack, ou une issue GitHub — suffit à déclencher l’attaque.

3. Portée du token : tous vos dépôts

Le token OAuth volé n’est pas scopé au dépôt visité. Il donne accès à l’intégralité des dépôts privés et publics sur lesquels vous avez des droits : lecture du code source, secrets, variables d’environnement, clés de déploiement, et potentiellement des capacités d’écriture.

4. Impact sur la supply chain

Si un mainteneur de package open source est compromis, l’attaquant peut modifier le code source, injecter du code malveillant dans les releases, ou voler des secrets de publication (tokens npm, PyPI, etc.). C’est le scénario cauchemar de toute attaque supply chain.

Contexte : pourquoi le chercheur a choisi la divulgation publique immédiate

Ammar Askar explique avoir notifié GitHub une heure avant la publication, mais avoir délibérément choisi la divulgation publique complète plutôt que le processus coordonné classique via le Microsoft Security Response Center (MSRC). La raison : une précédente expérience désastreuse avec MSRC.

Dans un précédent signalement d’un bug VS Code, Askar raconte que Microsoft a corrigé la faille en silence, sans crédit ni reconnaissance de l’impact sécurité. Résultat : le chercheur a annoncé qu’il ferait désormais du full public disclosure pour toutes les vulnérabilités VS Code qu’il découvrirait.

Ce n’est pas un cas isolé. Ces derniers mois, un autre chercheur anonyme utilisant le pseudonyme Nightmare Eclipse a publié une série de zero-days Windows — BlueHammer, RedSun, GreenPlasma, MiniPlasma, YellowKey, UnDefend — en exprimant lui aussi sa frustration envers le processus de divulgation de Microsoft. Deux de ces failles sont désormais activement exploitées dans des attaques.

Microsoft a d’abord réagi par des menaces de poursuites judiciaires, puis a déclaré sur X (Twitter) qu’il travaillerait « avec les forces de l’ordre si nécessaire » lorsqu’un individu « enfreint la loi et s’engage dans une activité malveillante causant un préjudice réel à nos clients ».

Cette escalade entre chercheurs en sécurité et Microsoft crée une situation où les failles sont publiées sans correctif, exposant les utilisateurs à des risques accrus. Un cercle vicieux dont les développeurs sont les premières victimes.

Comment vous protéger immédiatement

1. Supprimez les données de site de github.dev (action immédiate)

Dans votre navigateur, ouvrez github.dev, cliquez sur l’icône de paramètres dans la barre d’URL, puis :

Paramètres du site → Cookies et données de site
→ Gérer les données de site sur l'appareil
→ Supprimer les données pour github.dev

Cela garantit que vous verrez la boîte de dialogue « L’extension ‘GitHub Repositories’ souhaite se connecter avec GitHub » avant toute interaction — ce qui vous permet de refuser l’accès si le contexte est suspect.

2. Ne cliquez pas sur des liens github.dev non sollicités

Si vous recevez un lien github.dev par email, Slack, Discord, ou dans une issue GitHub sans contexte clair et légitime : ne cliquez pas. Vérifiez d’abord l’expéditeur et le contexte.

3. Révoquez les tokens suspects

Allez dans vos paramètres de tokens GitHub et révoquez tout token que vous ne reconnaissez pas. Vérifiez également les applications OAuth autorisées.

4. Surveillez l’activité de vos dépôts

Vérifiez les logs d’audit de vos organisations GitHub pour détecter toute activité suspecte : clones inhabituels, modifications de code non autorisées, ou accès depuis des IP inconnues.

5. Pour les administrateurs d’organisation

Envisagez de restreindre l’accès à github.dev au niveau organisationnel si vos équipes n’utilisent pas cet outil. Vous pouvez également renforcer les politiques d’accès aux tokens en exigeant des scopes plus restrictifs.

Ce que cela signifie pour l’écosystème du développement

Cette faille illustre un problème structurel croissant : la confiance implicite dans les outils de développement connectés. github.dev, GitHub Codespaces, Gitpod, StackBlitz — tous ces environnements reçoivent des tokens d’authentification puissants pour fonctionner de manière transparente. Chacun représente une surface d’attaque.

Quelques bonnes pratiques à adopter dès maintenant :

  • Utilisez des tokens à durée limitée (expiration automatique) plutôt que des tokens permanents
  • Appliquez le principe du moindre privilège : un token pour un dépôt spécifique, pas pour tous
  • Activez l’authentification à deux facteurs (2FA) sur GitHub — obligatoire depuis 2024, mais vérifiez que c’est bien activé
  • Auditez régulièrement vos tokens et autorisations OAuth
  • Méfiez-vous des liens github.dev comme vous vous méfieriez d’une pièce jointe suspecte

Nous mettrons à jour cet article dès que Microsoft publiera un correctif officiel.


Sources et références


📚 Articles liés

W
WP Admin Lab

Architecte web full-stack. WordPress, performance, data et sécurité. Notes de terrain, tests reproductibles et retours d'expérience.