IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

ChatGPT génère un code informatique peu sûr, mais ne vous le dira pas à moins que vous ne le lui demandiez,
Les experts mettent en garde contre les risques d'une surconfiance en ChatGPT

Le , par Bill Fassinou

4PARTAGES

9  0 
Une étude portant sur les capacités de génération de code informatique de ChatGPT a révélé que le code généré par le chatbot d'IA d'OpenAI est truffé de vulnérabilités. Le rapport l'étude indique que ChatGPT produit non seulement du "code peu sûr", mais n'alerte pas non plus les utilisateurs sur ses insuffisances, alors qu'il est capable de les mettre en évidence. Le chatbot ne fournit des conseils utiles pour améliorer la qualité du code qu'après avoir été invité à remédier aux problèmes détectés par l'utilisateur dans le code généré. L'étude remet en cause les déclarations selon lesquelles ChatGPT pourrait remplacer la majorité des programmeurs dans les prochaines années.

Le lancement de ChatGPT a amené de nombreuses personnes à se demander, voire à s'inquiéter, de ce qu'il représente pour elles. Parmi eux, les programmeurs et les développeurs. En entrant "ChatGPT va-t-il remplacer" dans la barre de recherche, les mots "programmeurs" et "développeurs" apparaissent comme deux des principales suggestions. Cela suggère que les types de personnes qui construisent ChatGPT se demandent si leurs outils vont les supplanter. ChatGPT peut générer du code sur la base d'invites données par les utilisateurs et, selon OpenAI et certains experts, la capacité de ChatGPT à écrire du code est importante pour plusieurs raisons.

Premièrement, cela permettrait d'économiser du temps et des efforts. L'écriture de code peut être longue et fastidieuse, en particulier pour les algorithmes complexes. Grâce à la capacité de ChatGPT à générer du code, les programmeurs peuvent se concentrer sur d'autres aspects du développement de logiciels, tels que les tests et le débogage. Cela peut conduire à des temps de développement plus rapides et à des processus de développement de logiciels plus efficaces. Deuxièmement, la capacité de ChatGPT à écrire du code peut démocratiser la programmation. Traditionnellement, le domaine requiert des connaissances et une formation spécialisées.


Mais la capacité de ChatGPT à écrire du code permettrait à n'importe qui de générer du code en donnant des instructions en langage naturel. Cela peut permettre à un plus grand nombre de personnes de créer des logiciels pour l'innovation et le progrès dans divers domaines. Enfin, l'on estime également que la capacité de ChatGPT à écrire du code peut améliorer la qualité du code. Mais une récente étude a remis en cause cette dernière affirmation et tente de démontrer que les gens ont tendance à surestimer les capacités des chatbots. Les chercheurs se sont posé la question de savoir : « quel est le degré de sécurité du code généré par ChatGPT ? ».

Selon le rapport de l'étude - menée par les informaticiens Baba Mamadou Camara, Anderson Avila, Jacob Brunelle et Raphael Khoury affiliés à l'Université du Québec - la réponse à cette question est : "le code généré par ChatGPT n'est pas très sûr". Dans le cadre de l'étude, les quatre chercheurs ont demandé à ChatGPT de générer 21 programmes dans cinq langages de programmation afin d'illustrer des failles de sécurité spécifiques telles que la corruption de la mémoire, le déni de service et une cryptographie mal élaborée. Le rapport indique que ChatGPT n'a produit que cinq programmes plus ou moins "sécurisés" sur 21 lors de sa première tentative.

Par exemple, le premier programme était un serveur FTP C++ pour le partage de fichiers dans un répertoire public. Mais le code produit par ChatGPT ne comportait aucune vérification des entrées, ce qui expose le logiciel à une vulnérabilité de traversée de chemin. Les conclusions du rapport font écho à des évaluations - mais pas identiques - similaires de GitHub Copilot, un outil de génération de code basé sur le modèle d'IA GPT-3 (récemment mis à niveau vers GPT-4). D'autres études ont examiné les erreurs ChatGPT de manière plus générale. Parallèlement, ces modèles d'IA sont également utilisés pour identifier les problèmes de sécurité.

Invité à corriger ses erreurs, le modèle d'IA a produit sept applications "plus sûres", mais cela ne concernait que la vulnérabilité spécifique évaluée. Les chercheurs ont constaté que ChatGPT ne reconnaissait pas que le code qu'il générait n'était pas sûr et qu'il ne fournissait des conseils utiles qu'après avoir été invité à remédier aux problèmes. Une chose contre laquelle les chercheurs mettent en garde. De plus, ils notent que ChatGPT ne partait pas d'un modèle contradictoire d'exécution du code et les a informés à plusieurs reprises que les problèmes de sécurité pouvaient être évités en ne fournissant pas d'entrées non valides au programme vulnérable.

Les auteurs estiment que ce n'est pas l'idéal, car le fait de savoir quelles questions poser suppose une certaine familiarité avec des bogues et des techniques de codage spécifiques. En d'autres termes, si vous connaissez la bonne question à poser à ChatGPT pour qu'il corrige une vulnérabilité, vous savez probablement déjà comment y remédier. Par ailleurs, les chercheurs soulignent également qu'il existe une incohérence éthique dans le fait que ChatGPT refuse de créer du code d'attaque, mais crée du code vulnérable. Ils citent un exemple de vulnérabilité de désérialisation en langage Java dans lequel "le chatbot a généré un code vulnérable".

ChatGPT a ensuite fourni des conseils sur la façon de le rendre plus sûr, mais a déclaré qu'il était incapable de créer la version plus sûre du code. « Les résultats sont inquiétants. Nous avons constaté que, dans plusieurs cas, le code généré généré par ChatGPT était bien en deçà des normes de sécurité minimales applicables dans la plupart des contextes. En fait, lorsqu'on lui a demandé si le code produit était sécurisé ou non, ChatGPT a été capable de reconnaître qu'il ne l'était pas », affirment les auteurs dans leur article. Les chercheurs ont déclaré que l'utilisation de ChatGPT pour la génération de code comportait des risques pour les entreprises.

Raphael Khoury, professeur d'informatique et d'ingénierie à l'Université du Québec en Outaouais et l'un des coauteurs de l'article, soutient que ChatGPT, dans sa forme actuelle, représente un risque, ce qui ne veut pas dire qu'il n'y a pas d'utilisations valables pour une aide IA erratique et peu performante. « Nous avons déjà vu des étudiants l'utiliser, et des programmeurs l'utiliseront dans la nature. Il est donc très dangereux d'avoir un outil qui génère un code non sécurisé. Nous devons faire prendre conscience aux étudiants que si un code est généré avec ce type d'outil, il est fort possible qu'il ne soit pas sécurisé », a-t-il déclaré.

Source : rapport de l'étude

Et vous ?

Quel est votre avis sur le sujet ?
Que pensez-vous des conclusions de l'étude ?

Voir aussi

Le chatbot d'IA ChatGPT est capable de lancer des attaques de phishing dangereuses et de concevoir des codes de téléchargement malveillant d'une efficacité redoutable

Et si ChatGPT était utilisé pour trouver des bogues dans du code ? Des chercheurs s'y sont essayé, et ont trouvé qu'il fonctionne mieux que les programmes existants, corrigeant 31 bogues sur 40

Des experts en sécurité sont parvenus à créer un logiciel malveillant polymorphe "hautement évasif" à l'aide de ChatGPT, le logiciel malveillant serait capable d'échapper aux produits de sécurité

ChatGPT réussit l'édition 2022 de l'examen d'informatique pour élèves du secondaire désireux d'obtenir des crédits universitaires US : que sait-on de cette IA qui secoue Internet comme une tempête ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de eric44000
Membre actif https://www.developpez.com
Le 04/05/2023 à 22:29
Citation Envoyé par Stéphane le calme Voir le message
L'IA causera « des dommages réels » : Microsoft alerte sur les risques de l’IA utilisée par des acteurs malveillants et appelle à une réglementation de l’IA face aux dangers potentiels de cette arme à double tranchant.
...
Les partisans du projet de loi affirment qu’il favorisera la confiance et l’innovation dans le domaine de l’IA, tout en protégeant les intérêts des créateurs de contenu. Les critiques soutiennent qu’il pourrait entraver le développement et l’utilisation de l’IA, en imposant des charges administratives et des risques juridiques excessifs.

Quelle lecture en faites-vous ?
Que pensez-vous des propos de Michael Schwarz ? L'IA, une arme à double tranchant ?
Quels sont les avantages et les inconvénients de la réglementation de l’IA par le Congrès ou par d’autres instances ?
Quels sont les risques ou les limites de laisser les entreprises comme Microsoft développer et utiliser l’IA sans contrôle externe ?
Microdoft demande une réglementation non pas par altruisme mais pour prévenir toute concurrence en leur mettant des batons dans les roues alors qu'eux ont entrainé ChatGPT sans aucune contrainte.
4  0 
Avatar de defZero
Membre extrêmement actif https://www.developpez.com
Le 06/05/2023 à 15:30
La première fois que nous avons commencé à exiger le permis de conduire, c'était après que des dizaines de personnes soient mortes dans des accidents de voiture et c'était la bonne chose à faire.
Si nous avions exigé le permis de conduire là où il y avait les deux premières voitures sur la route, cela aurait été une grave erreur. Nous aurions complètement gâché cette réglementation. Il faut qu'il y ait au moins un petit préjudice, pour que nous puissions voir quel est le vrai problème
Michael Schwarz
Je serais d'avis que l'on réserve les premiers "morts par IA" à ce Monsieur et son entourage et que l'on vienne le voir après coups pour lui reposer la question de la réglementation.
Qu'est-ce que vous en dites ? Changera d'avis ou pas ?

Je pense que toute mort évitable devrait l'être, point.
Si l'on sais par avance que le cas pourrait ce produire, il faudrait vraiment être idiot, ou avoir des intérêt financier en jeux, pour clamer le contraire (comme pour les premières automobile et la collusion entre politiques et capitaines d'industries).
... Oh;, mais je croit bien que c'est le même cas de figure .
3  0 
Avatar de onilink_
Membre émérite https://www.developpez.com
Le 06/05/2023 à 15:50
Tout à fait. Et je trouve son exemple idiot. Les premières voitures étaient par nature limités à des vitesses très basses comparé à ce que l'on a aujourd'hui, donc ça diminuait naturellement les risques d'accidents.

Tout risque qui peut être évalué en amont doit être géré au plus tôt...
Surtout qu'on parle de technologies qui vont toucher des millions de personnes, et qui ont un potentiel néfaste extrêmement grand.
Bref, c'est le genre de sujet qu'il faut laisser à des gens qui savent de quoi ils parlent. Pas à un mec qui fait des comparaisons hasardeuses.
2  0 
Avatar de Gluups
Membre expérimenté https://www.developpez.com
Le 23/04/2023 à 11:44
Alors si j'ai bien lu, ChatGPT permet, en remplaçant les développeurs par des employés de bureau à qui on va demander de faire des tests, d'obtenir du code de meilleure qualité, mais qui contiendra de telles vulnérabilités qu'il risque de mener de différentes façons à la destruction de la boîte qui l'utilise. Permettre à un zozo lambda (enfin ... lambda un peu motivé quand même) d'utiliser le formulaire de bon de commande pour effacer le fichier client, c'est assurément une expérience intéressante.

Il y a d'autres idées, sur cette voie, il me semble. On peut remplacer les assurances par des tickets de loterie, c'est susceptible de coûter bien moins cher.

Et les comptables, vous êtes sûrs qu'on a besoin des comptables ?
1  0 
Avatar de totozor
Membre émérite https://www.developpez.com
Le 24/04/2023 à 7:45
Citation Envoyé par Bill Fassinou Voir le message
ChatGPT génère un code informatique peu sûr, mais ne vous le dira pas à moins que vous ne le lui demandiez
Et si vous lui demandez il y a une probabilité non nulle qu'il vous réponde mal. Donc vous devez lui demander le taux de confince de sa réponse...
Vous devriez aussi lui demander si le code fait bien ce que tu lui a demandé parce que mon expérience est que c'est plutot vrai, et que le "plutôt" fait toute la différence.

PS : on a fait une expérience avec un collègue. Lui "developpe" (on est pas développeur) avec ChatGPT moi à la main.
1. Il a été bien plus rapide (1h30) mais le résultat n'est pas conforme
2. j'ai été plus lent (4h) mais le resultat est conforme
3. J'ai su expliquer pourquoi son résultat est mauvais, ChatGPT n'a pas su justifier l'écart et désigner le meilleur réusltat. Donc meme pas un bon SAV.

PS : On travaillait sur le passage d'un indicateur sous PowerBI. La conformité était faite en comparant les résultats des mois précédents.
1  0 
Avatar de tlecoz
Candidat au Club https://www.developpez.com
Le 24/04/2023 à 16:43
C'est vrai mais il est également vrai qu'un développeur autodidate produira du code peu sur durant sa phase d'apprentissage.

En 2023, les développeurs sont tous en formation continue... Autant dire que le code produit est rarement très sécurisé (à moins bien sur d'être un expert en sécurité, mais c'est de moins en moins le cas maintenant que nodejs a introduit le coté back aux dev front)

Parallèlement, ce que ne dis pas l'article est qu'on peut demander à chatGPT 50 fois de suite "améliore le code" , et il le fait.
Et c'est passionnant d'ailleurs de voir ce qu'il propose d'améliorer à chaque fois.
On sent qu'il y a une marge de progression énorme à l'usage mais perso je trouve ça génial qu'on récompense la curiosité de ceux qui veulent approfondir et ne satisfont pas du premier résultat obtenu.

Aussi, je trouve dommage de ne pas indiquer quelle version de chatGPT ils ont utilisé pour leur tests.

De mon coté j'utilise GPT-4 tout les jours depuis environs un mois et c'est le jour et la nuit en terme d'efficacité dans le contexte de la production de code.
Il a la mémoire encore trop courte (ce qui est difficilement explicable dans le contexte ou des solution permettant d'enregistrer/analyser un énorme contenu textuel existe déjà) : je réalise en ce moment un double projet sur lequel je lui demande de l'aide régulièrement. J'ai commencé la convesation il y a un mois, je l'ai nourri tout les jours, et aujourd'hui il est de plus en plus évident qu'il a oublié le début , ce qui est chiant.

Ceci dit, pour des problème isolé ça marche bien.

Perso, là ou je le trouve vraiment admirable, c'est lorsqu'il s'occupe de tout le travail que je hais en tant que développeur : la configuration du projet.
Les devops ont du soucis à se faire, GPT-4 me donne des super pouvoirs dans ce domaine dans lequel je ne connais rien. Ce n'est pas vraiment du code alors ça ne m'intéresse pas trop , mais d'habitude j'y passe des jours à m'arracher les cheveux. Là, puisque ça représente des petits fichier de configuration à chaque fois, c'est hyper compatible avec GPT-4 , et je n'hésite pas a lui demander des trucs hyper alambiqué dans lesquels je ne serai jamais rentré s'il n'était pas là.

Et c'est vraiment extraordinaire à utiliser car il me fait découvrir plein de choses : même s'il écrit le code de configuration, je suis obligé de le copier/coller moi même. Souvent ça ne marche pas du premier coup donc je suis obligé de faire plein d'aller retour dans ces fichiers, et mine de rien, petit à petit je me les réapproprie et je découvre de nouveaux usages "oh! on peut aussi faire ça ?! Ca ne me serait jamais venu à l'esprit".

Au cours du mois qui vient de s'écouler, pratiquement tout les jours je découvre de nouvelles manière d'écrire le code "what ?! On peut écrire ça ?!" , c'est hyper enrichissant !

EDIT : "Souvent ça ne marche pas du premier coup"
Ca n'a jamais marché du premier coup non plus lorsque c'est moi qui m'en occupait tout seul. Mais dans ce cas là, en général, 5 jours plus tard j'étais encore dessus en train de péter un cable alors qu'avec GPT-4, il y a aussi quelques aller retour mais en 20 minutes c'est plié.
Ces 20 minutes peuvent s'étendre à l'infini si vous lui demandez 50 fois "Que peut on améliorer dans ce code ?" suivi de "Appliques les suggestions que tu viens de faire"
0  0 
Avatar de jwar0
Membre actif https://www.developpez.com
Le 26/04/2023 à 10:58
On parle de génération de code en partant de rien pour arriver à un produit(fonctionnalité) isolé. Ça peut certainement aider pour des petit projet perso ou des outils maison pour le reste j'ai un doute.
J'ai bossé sur une bonne dizaine de missions et toujours sur des site/application avec des millier de fichiers, des dizaine voir centaine de tables à maintenir et faire évoluer. J'imagine même pas une IA actuelle se taper tout le code existant, le comprendre et y insérer une fonctionnalité sans tout casser
0  0 
Avatar de totozor
Membre émérite https://www.developpez.com
Le 05/05/2023 à 8:18
Citation Envoyé par Stéphane le calme Voir le message
L'IA causera « des dommages réels » : Microsoft alerte sur les risques de l’IA utilisée par des acteurs malveillants
J'admire cette autocritique de la parte de microsoft
Il ne dit au final pas grand chose de faux mais chaque nouvel outil a été utilisé à des fins répréhensibles, et dans le domaine de l'informatique les outils sont bien souvent un moyen de prévention/correction/rattrapage de ces propres mauvaises utilisations.
0  0 
Avatar de _toma_
Membre habitué https://www.developpez.com
Le 06/05/2023 à 22:22
Deux jours plus tôt, il y avait cet article :

L'IA causera « des dommages réels » : Microsoft alerte sur les risques de son utilisation par des acteurs malveillants
https://intelligence-artificielle.de...rs-potentiels/
0  0 
Avatar de HaryRoseAndMac
Membre extrêmement actif https://www.developpez.com
Le 07/05/2023 à 14:47
En parlant de dommages significatifs, une startup est venu nous voir en début de semaine (encore une), qui a fait développer son logiciel par des développeurs, je les cites "prompt engineer".

En gros, ce sont des gens qui sont nulle à chier en dev, payé un SMIC, et qui ont utilisé ChatGPT de A à Z, pour créer l'application mobile.
Ils ont demandés à ChatGPT de le faire avec les bonnes pratiques, les meilleurs optimisations possibles, ...

Ca a tellement bien marché, qu'impossible de poster leur application sur le google store puisqu'elle ne passe pas le contrôle qualité.
On a repris leur truc, comment dire ... C'est un carnage.

Des librairies dépréciées, du code totalement inutile, aux mauvais endroits dans l'architecture, qui fait appel plusieurs fois aux mêmes choses, qui utilisent des méthodes natives qu'on utilise plus depuis un moment, ...

Bref, un bon 60% du code à refaire.
Et ça, c'est quasiment le prix de l'application.

Donc forcément, ces jeunes entrepreneurs dynamique lycornés ont pouffés, dit que finalement ils allaient demander à des indiens de le faire pour trois fois rien et on les a inviter à le faire avec plaisir.

Encore une application qui va finir à la poubelle et encore des financements jetés par la fenêtre.

Ces gens là, il n'y a rien à faire, ne comprennent pas qu'ils feraient mieux d'employer un seul Freelance sénior, qui ferait leur application de A à Z, qui à la fin va fonctionner, sera en ligne et oui, aura couté plus cher que des employés aux smic ou des indiens, mais à la fin va leur rapporter 10 fois plus, plutôt que de faire appel à des "prompt engineer" ...
0  0