Une bibliothèque Java a tenté de piéger les IA codeuses pour qu’elles effacent vos tests, et ça a failli marcher – Korben

Une récente faille découverte dans la bibliothèque Java jqwik, largement utilisée par les développeurs pour automatiser leurs tests, soulève des inquiétudes quant à la sécurité et à l’intégrité du processus de développement assisté par intelligence artificielle. En effet, un mainteneur a inséré une fonction dissimulée dans la version 1.10.0 de jqwik qui pourrait, si elle est exploitée, ordonner à une IA de supprimer tous les tests et le code du projet. Cette intrusion, dissimulée derrière des codes d’échappement ANSI pour passer inaperçue à l’œil humain, est conçue pour être lue uniquement par l’agent IA, ce qui pourrait entraîner une destruction totale du code sans intervention humaine.

Concrètement, cette fonction, nommée printMessageForCodingAgents(), se manifeste lors de l’exécution des tests en affichant un message codé dans le terminal. Après avoir affiché cet ordre, la fonction supprime artificiellement la ligne d’affichage à l’aide de séquences d’échappement ANSI, laissant ainsi croire à l’utilisateur que tout va bien, alors que l’agent IA reçoit un ordre destructeur. Ce procédé d’injection de prompt, consistant à dissimuler un message dans du texte apparemment innocent, maximise le risque que la commande malveillante soit exécutée par une IA non vigilante. La cible de ce « sabotage » est précisément ces développeurs nommés les “vibe coders”, qui se reposent trop souvent sur l’automatisation sans surveiller leur code attentivement.

La source indique que ce type d’attaque peut entraîner l’effacement complet du travail si l’IA obéit bêtement, ce qui pose un sérieux problème de sécurité dans le domaine du développement automatisé.

Fort heureusement, cette attaque ne fonctionne pas contre tous les agents IA. Claude Code, l’assistant de codage développé par Anthropic, a détecté la commande malveillante dès le premier lancement et l’a immédiatement refusée, alertant ainsi son utilisateur et signalant le fichier responsable à l’intérieur de la bibliothèque. Cependant, d’autres agents moinsrobustes, moins bien protégés contre ce type de manipulation, n’ont pas eu cette chance, ce qui soulève des questions préoccupantes sur la sécurité des outils d’assistance à la programmation reposant sur l’IA.

Après cette découverte, l’auteur de la bibliothèque a publié une mise à jour, la version 1.10.1, qui réduit la portée de la fonction problématique. Au lieu de demander la suppression totale des tests, la nouvelle version demande seulement à l’IA d’ignorer les résultats, limitant ainsi les dégâts potentiels. Néanmoins, l’incident a eu des répercussions importantes, avec des développeurs dénonçant publiquement l’acte comme étant une menace dérangeante et malicieuse, surtout sans possibilité de désactivation ou d’avertissement préalable.

En définitive, cette histoire illustre bien les risques que pose la montée en puissance des IA dans la programmation. Si, d’un côté, elles peuvent automatiser efficacement le travail, de l’autre, leur utilisation vulnérable ou mal surveillée peut ouvrir la porte à des attaques délibérées, voire destructrices. Au-delà de la simple sécurité technique, c’est la confiance dans ces outils qui est mise à mal, soulevant la nécessité d’une vigilance accrue et d’une régulation dans leur développement et leur utilisation.

Partagez cet article
article précédent

Un ingénieur de Netflix crée une appli pour alléger ses factures d’IA, puis l’ouvre à tout le monde – Korben

article suivant

Apprentissage : l’État divise par quatre les dotations versées aux Régions – Centre Inffo

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Lire plus d'articles