Prospective : Les algorithmes d’apprentissage automatique font fureur maintenant, car ils sont utilisés pour générer tout type de contenu « original » après avoir été formés sur d’énormes ensembles de données préexistants. Cependant, les IA génératrices de code pourraient poser un réel problème pour la sécurité des logiciels à l’avenir.
Les systèmes d’IA comme GitHub Copilot promettent de faciliter la vie des programmeurs en créant des morceaux entiers de « nouveau » code basé sur des entrées textuelles en langage naturel et un contexte préexistant. Mais les algorithmes générateurs de code peuvent également apporter un facteur d’insécurité, comme l’a récemment découvert une nouvelle étude impliquant plusieurs développeurs.
En ce qui concerne spécifiquement Codex, la plate-forme d’IA développée par OpenAI, qui est également le moteur de création de code du copilote GitHub susmentionné, l’étude a recruté 47 développeurs différents. Allant des étudiants de premier cycle aux professionnels expérimentés, les développeurs ont été chargés d’utiliser Codex pour résoudre les problèmes liés à la sécurité en Python, JavaScript, C et d’autres langages de programmation de haut niveau.
Les chercheurs m’a dit que lorsque les programmeurs avaient accès au Codex AI, le code résultant était plus probablement incorrect ou peu sûr par rapport aux solutions « faites à la main » conçues par le groupe de contrôle. De plus, les programmeurs disposant de solutions assistées par l’IA étaient plus susceptibles de dire que leur code non sécurisé était sécurisé par rapport au groupe de contrôle susmentionné.
Neil Perry, doctorant à Stanford et co-auteur principal de l’étude, a déclaré que « les systèmes de génération de code ne remplacent pas actuellement les développeurs humains ». Ces développeurs pourraient utiliser des outils assistés par l’IA pour effectuer des tâches en dehors de leurs propres domaines d’expertise, ou pour accélérer une tâche de programmation dans laquelle ils sont déjà qualifiés. Ils devraient être tous les deux concernés, a déclaré l’auteur de l’étude, et ils devraient toujours revérifier le code généré.
Selon Megha Srivastava, étudiante de troisième cycle à Stanford et deuxième co-auteur de l’étude, le Codex est tout sauf inutile : malgré les défauts de l’IA « stupide », les systèmes de génération de code peuvent être utiles lorsqu’ils sont utilisés pour des tâches à faible risque. De plus, les programmeurs impliqués dans l’étude n’avaient pas d’expertise particulière en matière de sécurité, ce qui aurait pu aider à repérer le code vulnérable ou non sécurisé, a déclaré Srivastava.
Les algorithmes d’IA pourraient également être affinés pour améliorer leurs suggestions de codage, et les entreprises qui développent leurs propres systèmes peuvent obtenir de meilleures solutions avec un modèle générant du code plus conforme à leurs propres pratiques de sécurité. La technologie de génération de code est un développement « excitant » avec de nombreuses personnes désireuses de l’utiliser, ont déclaré les auteurs de l’étude. C’est juste qu’il reste encore beaucoup de travail à faire pour trouver des solutions appropriées aux lacunes de l’IA.