Des chercheurs découvrent 'Ghostcommit', une nouvelle technique dissimulant des commandes malveillantes dans des fichiers image pour tromper l'IA et voler des données sensibles.
Une équipe de chercheurs en sécurité a démontré la technique 'Ghostcommit', qui permet d'intégrer des commandes malveillantes dans des fichiers image PNG pour échapper à la détection et tromper une IA afin qu'elle extraie avec succès des informations cruciales d'un projet.
L'ASSET Research Group, un groupe de chercheurs en sécurité, a révélé une nouvelle technique d'attaque appelée 'Ghostcommit'. Celle-ci permet de dissimuler des commandes malveillantes de type Prompt Injection (injection d'instructions pour diriger une IA sans autorisation) dans des fichiers image PNG, apparemment inoffensifs, afin de voler des données sensibles comme des API Keys ou des mots de passe de base de données à partir du repository d'un développeur.
La méthode Ghostcommit exploite une lacune des outils populaires d'examen de code basés sur l'IA, tels que CodeRabbit et Bugbot. Ces outils ne sont généralement pas conçus pour ouvrir ou analyser le contenu interne des fichiers image, permettant aux commandes dissimulées d'échapper facilement à la détection. Cette technique fonctionne en deux parties. La première est un fichier texte d'apparence normale (ici, AGENTS.md) qui ordonne à l'agent IA de 'récupérer les constantes de build' à partir d'un fichier image spécifié (docs/images/build-spec.png). La deuxième partie, le cœur de l'attaque, est la commande malveillante elle-même, intégrée sous forme de texte dans le fichier image. Cette commande instruit l'IA de lire le contenu du fichier .env (où les développeurs stockent souvent des données sensibles) caractère par caractère, de le convertir en code numérique ASCII, puis de l'écrire dans le code.
Lors de tests réels, les chercheurs ont fait une démonstration avec Cursor, un agent IA alimenté par le modèle Claude Sonnet. Cursor a été trompé avec succès dès la première tentative pour suivre les instructions cachées dans l'image. Il a généré une liste de 311 nombres qui représentaient en réalité toutes les informations confidentielles du projet : API keys, URL de bases de données et informations d'accès au cloud, codées et mêlées à une révision de code d'apparence normale.
Cette vulnérabilité existe car, pour les systèmes d'examen de code basés sur le texte, les fichiers image sont de simples Binary Blobs illisibles. Les chercheurs notent que ce concept n'est pas entièrement nouveau. Auparavant, des chercheurs de Trail of Bits avaient démontré une technique plus sophistiquée utilisant des images qui, une fois redimensionnées par une IA, se transformeraient en instructions de Prompt Injection pour tromper des outils comme Gemini CLI. Actuellement, l'équipe ASSET Research Group développe un système de défense Multimodal (qui comprend plusieurs formes de données) pour examiner simultanément les images, le texte et le comportement des agents IA afin de combler de telles vulnérabilités à l'avenir.
Cette vulnérabilité met en évidence une lacune majeure des outils d'IA actuels d'aide au développement logiciel. C'est un signal d'alarme pour les développeurs thaïlandais utilisant des agents IA : même un fichier image d'apparence inoffensive peut être un vecteur pour les malveillants de voler des données cruciales d'un projet.