Découverte assistée par IA : Claude AI révèle des failles RCE dans Vim et Emacs
Le red teaming par IA a révélé des vulnérabilités critiques dans les éditeurs de texte largement utilisés **Vim** et **GNU Emacs**. Un chercheur a utilisé l'assistant IA **Claude** pour identifier des failles d'exécution de code à distance (RCE) qui peuvent être déclenchées simplement en ouvrant un fichier malveillant.

Ces vulnérabilités soulignent le paysage évolutif des menaces de cybersécurité et le potentiel de l'IA pour aider aux pratiques de sécurité offensives et défensives.
### Vulnérabilité RCE dans Vim et correctif
**Hung Nguyen**, un chercheur chez **Calif**, une entreprise d'ingénierie de sécurité et de red teaming par IA, a chargé **Claude** de trouver une vulnérabilité RCE zero-day dans **Vim** qui pourrait être exploitée en ouvrant un fichier. L'assistant IA a réussi à identifier des faiblesses dans la gestion des modelines de **Vim**. Les modelines sont des configurations intégrées au début d'un fichier qui indiquent à **Vim** comment le gérer.
La vulnérabilité permettait une exécution de code arbitraire en contournant les restrictions du sandbox. Cela affecte les versions 9.2.0271 et antérieures de **Vim**.
**Nguyen** a signalé le problème, et les mainteneurs de **Vim** ont rapidement publié un correctif dans la version 9.2.0272. Selon le bulletin de sécurité, un attaquant pourrait obtenir une exécution de commande arbitraire avec les privilèges de l'utilisateur exécutant **Vim** en livrant un fichier spécialement conçu.
### Vulnérabilité GNU Emacs : un problème de dépendance Git
La vulnérabilité découverte dans **GNU Emacs** reste non corrigée, car les mainteneurs considèrent qu'il incombe à **Git** de la résoudre. Le problème provient de l'intégration de la gestion de version (vc-git) de **GNU Emacs**. L'ouverture d'un fichier déclenche des opérations **Git** via `vc-refresh-state`, amenant **Git** à lire le fichier `.git/config`. Cela peut conduire à l'exécution d'un programme `core.fsmonitor` défini par l'utilisateur, permettant une exécution de commande arbitraire.
Un scénario d'attaque implique une archive contenant un répertoire caché `.git/` avec un fichier de configuration pointant vers un script exécutable. Lorsqu'un utilisateur extrait l'archive et ouvre un fichier texte, le payload malveillant s'exécute sans aucun indicateur visible sur la configuration par défaut de **GNU Emacs**.
Bien que les mainteneurs de **GNU Emacs** soutiennent que la vulnérabilité réside dans **Git**, le risque pour les utilisateurs demeure car l'éditeur exécute automatiquement **Git** sur des répertoires non fiables sans assainissement approprié ni consentement de l'utilisateur.
**Nguyen** a suggéré que **GNU Emacs** pourrait modifier les appels **Git** pour bloquer explicitement `core.fsmonitor`, empêchant ainsi l'exécution automatique de scripts dangereux lors de l'ouverture d'un fichier.
Jusqu'à la publication d'un correctif, il est conseillé aux utilisateurs de faire preuve d'une extrême prudence lors de l'ouverture de fichiers provenant de sources inconnues ou téléchargés sur Internet lorsqu'ils utilisent **GNU Emacs**.