Le code écrit par ChatGPT n’est généralement pas sécurisé
L’une des nombreuses applications de ChatGPT, c’est de pouvoir aussi écrire du code informatique. Mais selon certains chercheurs, ce code n’est en général pas sécurisé. L’outil lui-même en est conscient, lorsqu’on le lui demande.
Quatre chercheurs de l’université du Québec (Canada) ont examiné le code généré par ChatGPT après qu’ils lui aient demandé de développer plusieurs programmes. En tout, 21 programmes en C, C++, Python et Java ont été conçus par ChatGPT à la demande des chercheurs Raphaël Khoury, Anderson Avila, Jacob Brunelle et Baba Mamadou Camara.
ChatGPT s’est acquitté de sa tâche, mais après un contrôle approfondi, il est apparu que les programmes ne satisfaisaient pas aux exigences de sécurité minimales. C’est ainsi que le code pour un serveur FTP contenait une faille permettant une attaque par traversée de répertoire (‘directory path traversal’). Une application web pour laquelle il fallait saisir un nom d’utilisateur et un mot de passe, s’avérait pour sa part sensible à XSS (‘cross-site scripting’, où on saisit du code dangereux dans le champ pour cracker une application). En tout, seuls 5 des 21 programmes étaient protégés contre les problèmes de sécurité connus.
Conscient de ses erreurs
Assez singulièrement, ChatGPT le sait parfaitement. Lorsque les chercheurs ont demandé à l’outil si le code qu’il générait, était sûr, il répondit en effet souvent que tel n’était pas le cas. Suite à quelques ajustements apportés au code, ChatGPT généra finalement douze programmes corrects.
Les chercheurs ont fait part de leurs résultats dans un article prépresse. Ils apportent cependant la nuance, selon laquelle ChatGPT est certes capable d’écrire du code, mais il convient d’être suffisamment familiarisé avec l’environnement pour interroger l’outil sur ses erreurs et lui demander de les corriger.
Les chercheurs en concluent que ChatGPT n’est pas encore prêt à remplacer des programmeurs expérimentés et soucieux de la sécurité, mais qu’il peut jouer un rôle dans d’apprentissage des bonnes pratiques de programmation.
Vous avez repéré une erreur ou disposez de plus d’infos? Signalez-le ici