Visual Studio Copilot and SSMS Remote Code Execution (CVE-2026-103572)
Mis à jour :
Vulnérabilité Critique d’Exécution de Code à Distance dans Visual Studio et SSMS
Une faille de sécurité majeure, identifiée sous la référence CVE-2026-103572, affecte GitHub Copilot au sein de Visual Studio 2026 et de SQL Server Management Studio (SSMS). Cette vulnérabilité permet à un attaquant de contourner les contrôles de validation de chemin de fichier pour modifier des configurations sensibles et exécuter des commandes arbitraires sur la machine hôte.
Points clés :
- Cause racine : Une faille de normalisation des chemins de fichiers sous Windows. L’ajout d’un point (
.) à la fin d’un nom de fichier permet de contourner les filtres de sécurité, car le système NTFS ignore ce caractère lors de l’écriture effective sur le disque. - Vecteur d’attaque : Via une injection de prompt indirecte, un attaquant peut forcer l’agent IA à écrire dans des fichiers de configuration critiques (comme
settings.VisualStudio.jsonou les paramètres MCP), permettant ainsi de détourner le comportement de l’IDE. - Impact : Exécution de code à distance (RCE) avec les privilèges de l’utilisateur exécutant l’IDE.
- Composant affecté :
Microsoft.VisualStudio.Copilot.Core.dll.
Vulnérabilités identifiées :
- CVE-2026-103572 : Contournement de validation de chemin menant à une exécution de code à distance.
- Défauts additionnels : Utilisation de traversées de répertoires (
..\) et découverte facilitée de l’identifiant d’installation (InstallationID) via la lecture de fichiers isolés, facilitant la localisation des fichiers de configuration cibles.
Recommandations :
- Appliquer les correctifs : Installez immédiatement les mises à jour fournies par Microsoft via le processus de “Patch Tuesday” d’octobre 2026.
- Renforcement : La correction implémentée par Microsoft normalise désormais les chemins (via
GetFullPath), neutralisant ainsi les caractères de contournement comme les points traînants. - Principe de prudence : Ne pas accorder une confiance aveugle aux agents IA ; les mécanismes de contrôle d’accès doivent rester robustes même si l’agent est compromis.
