Des chercheurs de l’université de Stanford ont découvert que le code généré automatiquement par l’intelligence artificielle Codex d’OpenAI n’était pas fiable lorsqu’on lui demande de renforcer la sécurité d’un programme. L’IA vient ajouter des failles qu’un humain ne laisserait pas passer en temps normal.
Réaliser sa rédaction à partir de l’IA imaginative de ChatGTP permet sans doute de faire illusion devant les enseignants, mais lorsque les IA se mettent à coder, cela se voit. Une étude réalisée par des chercheurs affiliés à l’université de Stanford, aux États-Unis, révèle que les développeurs qui utilisent des IA pour générer automatiquement du code sont plus susceptibles de créer des failles de sécurité dans les applications que si le travail avait été réalisé manuellement. Au final, lorsqu’il s’agit de gagner du temps pour développer en utilisant une IA, il faut nécessairement en perdre pour vérifier sa qualité, selon les chercheurs.
L’équipe a étudié plus précisément le cas de Codex, un algorithme spécialisé dans la programmation automatique. Cette IA provient, tout comme ChatGPT et Dall-e des labos d’OpenAI et repose sur GPT-3. On la trouve directement sur GitHub qui propose son générateur de code Copilot. Son apprentissage automatique a assimilé 50 millions de dépôts de code sur GitHub, ce qui totalise au total 159 Go de code source.
Pour leur enquête, les chercheurs se sont appuyés sur un panel de seulement 47 développeurs dont certains ont exploité Codex pour accélérer leurs développements. L’IA devait s’occuper de programmer un procédé de chiffrement/déchiffrement dans les langages de programmation comme Python, JavaScript et C.
Trop compter sur une IA est dangereux
Selon les chercheurs, sur ce petit panel, les participants qui ont utilisé Codex étaient plus susceptibles de développer des applications truffées de vulnérabilités que le groupe témoin qui programmait manuellement. Sans doute influencés par le fait qu’une IA performante a été à l’œuvre, les développeurs ayant utilisé Codex étaient aussi plus sûrs d’eux et affirmaient que leur code était plus fiable que celui du groupe de contrôle. Ils se retrouvaient incapables de repérer les failles que l’IA avait laissées. Mais, selon les auteurs de l’étude, il faut souligner que l’IA peut parfois produire du code difficile à interpréter à la lecture et cela vient compliquer le débogage.
Pour autant, les chercheurs considèrent que l’IA peut être utile pour coder des éléments qui ne présentent pas de risque. Autrement dit, les IA de codage automatique, nourries avec des millions de lignes de code public, ne sont pas performantes pour tout ce qui est programmation liée à la cybersécurité. Le souci, c’est que les codes ainsi générés peuvent se retrouver sur GitHub, puis être réexploités ensuite dans des logiciels spécifiques pour des entreprises, par exemple.
futura