Récemment, les assistants de programmation IA ont connu un succès fulgurant, se vantant de pouvoir aider les programmeurs à écrire du code et à améliorer leur efficacité. De nombreux programmeurs les considèrent même comme des « sauveurs », souhaitant les utiliser quotidiennement. Cependant, une étude de l'Université de Stanford vient tempérer l'enthousiasme de ces « fans inconditionnels » : les assistants de programmation IA pourraient être un « cauchemar en termes de sécurité » !

Les chercheurs de l'Université de Stanford ont fait appel à 47 programmeurs pour réaliser cinq tâches de programmation liées à la sécurité, couvrant les langages Python, JavaScript et C. Les résultats ont révélé que les programmeurs utilisant des assistants IA produisaient du code significativement moins sûr !

image.png

Ce n'est pas une exagération. Les assistants de programmation IA sont comme des « stagiaires peu fiables », capables de produire du code apparemment correct, mais totalement ignorants des problèmes de sécurité. Par exemple, dans une tâche de chiffrement/déchiffrement, le code généré par l'assistant IA pouvait chiffrer correctement les informations, mais ne retournait pas les étiquettes d'authentification nécessaires. C'est comme installer une serrure sur un coffre-fort sans fournir la clé : la sécurité est considérablement réduite.

Plus grave encore, les programmeurs utilisant des assistants IA ont tendance à surestimer la sécurité de leur code. C'est comme si une « drogue » les aveuglait aux failles de sécurité. Ce n'est pas une bonne nouvelle, car une confiance excessive conduit souvent à des problèmes de sécurité plus graves.

Les chercheurs ont également constaté que les instructions données aux assistants IA par les programmeurs influaient directement sur la sécurité du code. Si les programmeurs décrivent clairement la tâche et fournissent des fonctions auxiliaires, l'assistant IA produit un code plus sûr. Mais si les programmeurs dépendent excessivement de l'assistant IA, voire utilisent directement le code généré, ils risquent de copier-coller des « failles de sécurité » dans leur propre code, avec des conséquences prévisibles.

Alors, peut-on utiliser les assistants de programmation IA ?

La réponse est : oui, mais avec prudence ! Les programmeurs ne doivent pas les considérer comme une « panacée » et ne doivent pas leur faire aveuglément confiance. Lors de l'utilisation d'un assistant IA, les programmeurs doivent rester vigilants, examiner attentivement le code et éviter les failles de sécurité.

Adresse de l'article : https://arxiv.org/pdf/2211.03622