Leaders d’opinion
Le code généré par l’IA est là pour rester. Sommes-nous moins en sécurité en conséquence ?

La programmation en 2025 n’a rien à voir avec le fait de passer des heures à déboguer ou à écrire des fragments de code. C’est une toute autre ambiance. Le code généré par l’IA devrait constituer la majorité du code des produits futurs et il est devenu un outil essentiel pour les développeurs modernes. Appelé « vibe coding », l’utilisation de code généré par des outils comme Github Copilot, Amazon CodeWhisperer et Chat GPT sera la norme et non l’exception pour réduire le temps de construction et augmenter l’efficacité. Mais est-ce que la commodité du code généré par l’IA risque de créer une menace plus sombre ? Le code généré par l’IA augmente-t-il les vulnérabilités de l’architecture de sécurité ou existe-t-il des moyens pour les développeurs de « coder dans l’ambiance » en toute sécurité ?
« Les incidents de sécurité résultant de vulnérabilités dans le code généré par l’IA sont l’un des sujets les moins discutés aujourd’hui », a déclaré Sanket Saurav, fondateur de DeepSource. « Il y a encore beaucoup de code généré par des plateformes comme Copilot ou Chat GPT qui ne sont pas examinés par des humains, et les failles de sécurité peuvent être catastrophiques pour les entreprises qui en sont affectées. »
Le développeur d’une plateforme open source qui utilise l’analyse statique pour la qualité et la sécurité du code, Saurav a cité l’attaque de SolarWinds en 2020 comme le type d’« événement d’extinction » que les entreprises pourraient connaître si elles n’ont pas installé les garde-fous de sécurité appropriés lors de l’utilisation du code généré par l’IA. « L’analyse statique permet d’identifier les modèles de code non sécurisés et les mauvaises pratiques de codage », a déclaré Saurav.
Attaqués par la bibliothèque
Les menaces de sécurité pour le code généré par l’IA peuvent prendre des formes inventives et peuvent être dirigées contre les bibliothèques. Les bibliothèques en programmation sont des codes réutilisables utiles que les développeurs utilisent pour gagner du temps lors de la rédaction.
Elles résolvent souvent des tâches de programmation régulières comme la gestion des interactions avec les bases de données et aident les programmeurs à ne pas avoir à réécrire le code à partir de zéro.
Une telle menace contre les bibliothèques est connue sous le nom de « hallucinations », où le code généré par l’IA affiche une vulnérabilité en utilisant des bibliothèques fictives. Une autre ligne d’attaque plus récente contre le code généré par l’IA est appelée « slopsquatting » où les attaquants peuvent cibler directement les bibliothèques pour infiltrer une base de données.
Pour faire face à ces menaces de manière frontale, il peut être nécessaire de plus de vigilance que ce que suggère le terme « vibe coding ». Parlant depuis son bureau à l’Université du Québec en Outaouais, le professeur Rafael Khoury a suivi de près les développements dans la sécurité du code généré par l’IA et est confiant que de nouvelles techniques amélioreront sa sécurité.
Dans un article de 2023, le professeur Khoury a examiné les résultats de la demande à ChatGPT de produire du code sans plus de contexte ou d’informations, une pratique qui a conduit à un code non sécurisé. Ceux-ci étaient les premiers jours de Chat GPT et Khoury est maintenant optimiste quant à l’avenir. « Depuis, il y a eu beaucoup de recherches en cours et l’avenir semble prometteur pour une stratégie d’utilisation du LLM qui pourrait conduire à de meilleurs résultats », a déclaré Khoury, ajoutant que « la sécurité s’améliore, mais nous ne sommes pas encore à un stade où nous pouvons donner une invite directe et obtenir un code sécurisé ».
Khoury a décrit une étude prometteuse où ils ont généré du code et l’ont ensuite envoyé à un outil qui l’a analysé pour les vulnérabilités. La méthode utilisée par l’outil est appelée Finding Line Anomalies with Generative AI (ou FLAG pour faire court).
« Ces outils envoient des FLAGs qui pourraient identifier une vulnérabilité à la ligne 24, par exemple, que le développeur peut ensuite renvoyer au LLM avec les informations et lui demander de regarder et de corriger le problème », a-t-il déclaré.
Khoury a suggéré que cet aller-retour pourrait être crucial pour corriger le code qui est vulnérable à l’attaque. « Cette étude suggère qu’avec cinq itérations, vous pouvez réduire les vulnérabilités à zéro ».
Ceci étant dit, la méthode FLAG n’est pas sans problèmes, en particulier car elle peut donner lieu à la fois à des faux positifs et à des faux négatifs. En outre, il y a également des limites dans la longueur du code que les LLM peuvent créer et le fait de joindre des fragments peut ajouter une autre couche de risque.
Garder l’humain dans la boucle
Certains acteurs dans le « vibe coding » recommandent de fragmenter le code et de s’assurer que les humains restent au centre des éditions les plus importantes d’une base de code. « Lorsque vous écrivez du code, pensez en termes de commits », a déclaré Kevin Hou, responsable de l’ingénierie de produit chez Windsurf, vantant la sagesse des morceaux de petite taille.
« Divisez un grand projet en petits morceaux qui seraient normalement des commits ou des demandes de tirage. Faites que l’agent construise l’échelle plus petite, une fonction isolée à la fois. Cela peut garantir que la sortie de code est bien testée et bien comprise », a-t-il ajouté.
Au moment de la rédaction, Windsurf a abordé plus de 5 milliards de lignes de code généré par l’IA (sous son ancien nom Codeium). Hou a déclaré que la question la plus urgente qu’ils répondaient était de savoir si le développeur était conscient du processus.
« L’IA est capable de faire de nombreuses éditions à travers de nombreux fichiers simultanément, donc comment pouvons-nous nous assurer que le développeur comprend réellement et examine ce qui se passe plutôt que de simplement accepter tout sans réfléchir ? » a demandé Hou, ajoutant qu’ils avaient investi lourdement dans l’UX de Windsurf « avec une tonne de moyens intuitifs pour rester pleinement à l’unisson de ce que fait l’IA, et pour garder l’humain pleinement dans la boucle ».
C’est pourquoi, à mesure que le « vibe coding » devient plus mainstream, les humains dans la boucle doivent être plus prudents de ses vulnérabilités. Des « hallucinations » aux menaces de « slopsquatting », les défis sont réels, mais les solutions le sont aussi.
Des outils émergents comme l’analyse statique, les méthodes de raffinement itératif comme FLAG, et une conception UX réfléchie montrent que la sécurité et la rapidité n’ont pas à être mutuellement exclusives.
La clé réside dans le maintien des développeurs engagés, informés et en contrôle. Avec les garde-fous appropriés et une mentalité « faire confiance mais vérifier », le codage assisté par l’IA peut être à la fois révolutionnaire et responsable.












