
LLMs : Une approche (im) parfaitement humaine du codage sécurisé ?
Une version de cet article a été publiée dans Lecture sombre. Il a été mis à jour et diffusé ici.
Dès les premiers remous suscités par les derniers outils d'IA révolutionnaires, les développeurs comme les curieux du codage les ont utilisés pour générer du code en appuyant simplement sur un bouton. Les experts en sécurité ont rapidement fait remarquer que, dans de nombreux cas, le code produit était de mauvaise qualité et vulnérable, et entre les mains de personnes peu sensibilisées à la sécurité, pourrait provoquer une avalanche d'applications non sécurisées et de développements Web qui toucheraient des consommateurs peu méfiants.
Et puis, il y a ceux qui ont suffisamment de connaissances en matière de sécurité pour les utiliser à des fins malveillantes. Pour chaque exploit époustouflant en matière d'IA, il semble qu'il existe un contre-coup de la même technologie utilisée pour à des fins néfastes. Hameçonnage, fausses vidéos d'escroquerie, création de logiciels malveillants, manigances généralisées pour les enfants... ces activités perturbatrices sont réalisables bien plus rapidement, avec moins de barrières à l'entrée.
Il existe certainement de nombreux appâts à cliquer qui présentent cet outillage comme révolutionnaire, ou du moins qu'il se classe en tête lorsqu'il est associé à des compétences humaines « moyennes ». Bien qu'il semble inévitable que la technologie d'IA de type LLM modifie la façon dont nous abordons de nombreux aspects du travail, et pas seulement le développement de logiciels, nous devons prendre du recul et envisager les risques au-delà des gros titres.
Et en tant que compagnon de codage, ses défauts sont peut-être son attribut le plus « humain ».
Des modèles de codage médiocres dominent ses solutions de prédilection
ChatGPT étant formé sur des décennies de code et de bases de connaissances existantes, il n'est pas surprenant que, malgré toutes ses merveilles et son mystère, il présente également les mêmes pièges courants auxquels les utilisateurs sont confrontés lorsqu'ils naviguent dans le code. Les modèles de codage médiocres sont la solution idéale, et il faut tout de même un pilote sensible à la sécurité pour générer des exemples de codage sécurisés en posant les bonnes questions et en fournissant la bonne ingénierie rapide.
Même dans ce cas, rien ne garantit que les extraits de code fournis soient exacts et fonctionnels du point de vue de la sécurité ; la technologie est sujette à des hallucinations, même création de bibliothèques inexistantes lorsqu'on lui demande d'effectuer certaines opérations JSON spécifiques, comme l'a découvert Mike Shema. Cela pourrait conduire à un « squattage par hallucination » de la part des acteurs de la menace, qui seraient bien trop heureux de lancer un malware déguisé en bibliothèque fabriquée recommandée en toute confiance par ChatGPT.
En fin de compte, nous devons faire face à la réalité : en général, nous ne nous attendions pas à ce que les développeurs soient suffisamment conscients de la sécurité et que nous ne les avions pas non plus préparés de manière adéquate à écrire du code sécurisé par défaut. Cela se reflétera dans l'énorme quantité de données de formation introduites dans ChatGPT, et nous pouvons nous attendre à des résultats de sécurité similaires, du moins dans un premier temps. Les développeurs devraient être en mesure d'identifier les bogues de sécurité et de les corriger eux-mêmes ou de concevoir de meilleures instructions pour un résultat plus fiable.
Le premier étude utilisateur à grande échelle l'examen de la façon dont les utilisateurs interagissent avec un assistant de codage basé sur l'IA pour résoudre diverses fonctions liées à la sécurité, mené par des chercheurs de l'université de Stanford, confirme cette idée, avec une observation concluant :
»Nous avons observé que les participants qui avaient accès à l'assistant d'IA étaient plus susceptibles d'introduire des failles de sécurité pour la majorité des tâches de programmation, mais également plus susceptibles de qualifier leurs réponses non sécurisées de sécurisées par rapport aux membres de notre groupe témoin.. »
Cela témoigne d'un niveau de confiance par défaut dans les résultats des outils de codage d'IA, qui produisent du code toujours intrinsèquement sécurisé, alors qu'en fait ce n'est pas le cas.
Face à cela et aux inévitables menaces véhiculées par l'IA qui vont imprégner notre avenir, les développeurs doivent plus que jamais perfectionner leurs compétences en matière de sécurité et placer la barre plus haut en matière de qualité du code, quelle que soit son origine.
La route qui mène à une catastrophe en matière de violation de données est pavée de bonnes intentions
Il n'est pas surprenant que les compagnons de programmation basés sur l'IA soient populaires, d'autant plus que les développeurs sont confrontés à des responsabilités croissantes, à des délais plus serrés et aux ambitions d'innovation d'une entreprise qui reposent sur leurs épaules. Cependant, même avec les meilleures intentions, un manque de sensibilisation à la sécurité exploitable lors de l'utilisation de l'IA pour le codage entraînera inévitablement des problèmes de sécurité flagrants. Tous les développeurs dotés d'outils AI/ML généreront davantage de code, et le niveau de risque de sécurité dépendra de leur niveau de compétence. Les organisations doivent être parfaitement conscientes du fait que des personnes non formées généreront certainement du code plus rapidement, mais qu'elles augmenteront également la vitesse de la dette de sécurité technique.
Même notre test préliminaire (avril 2023) avec ChatGPT a révélé qu'il générerait des erreurs très basiques qui pourraient avoir des conséquences dévastatrices. Lorsque nous lui avons demandé de créer une routine de connexion en PHP à l'aide d'une base de données MySQL, du code fonctionnel a été généré rapidement. Cependant, par défaut, il stockait les mots de passe en texte clair dans une base de données, stockait les informations d'identification de connexion à la base de données sous forme de code et utilisait un modèle de codage susceptible d'entraîner une injection SQL (bien qu'il ait effectué un certain niveau de filtrage sur les paramètres d'entrée et généré des erreurs de base de données). Toutes les erreurs commises par les débutants, peu importe la mesure :

Des instructions supplémentaires ont permis de corriger les erreurs, mais il faut des connaissances approfondies en matière de sécurité pour corriger la situation. L'utilisation généralisée et incontrôlée de ces outils n'est rien de mieux que de laisser de jeunes développeurs participer à vos projets. Si ce code permet de créer une infrastructure sensible ou de traiter des données personnelles, nous avons affaire à une bombe à retardement.
Bien entendu, tout comme les développeurs juniors améliorent sans aucun doute leurs compétences au fil du temps, nous nous attendons à ce que les capacités d'IA/ML s'améliorent. Dans un an, il ne commettra peut-être pas d'erreurs de sécurité aussi évidentes et simples. Cependant, cela aura pour effet d'augmenter considérablement les compétences en matière de sécurité requises pour détecter les erreurs de sécurité les plus graves, cachées et non négligeables qu'elle risque toujours de produire.
Nous sommes encore mal préparés pour détecter et corriger les failles de sécurité, et l'IA creuse l'écart
Bien que l'on parle beaucoup de « virage vers la gauche » depuis de nombreuses années, il n'en demeure pas moins que, pour la plupart des organisations, il existe un manque important de connaissances pratiques en matière de sécurité au sein de la cohorte de développement, et nous devons redoubler d'efforts pour fournir les outils et la formation appropriés pour les aider sur la bonne voie.
Dans l'état actuel des choses, nous ne sommes pas préparés aux bugs de sécurité auxquels nous sommes habitués, sans parler des nouveaux problèmes liés à l'IA, tels que l'injection rapide et le squatting par hallucination, qui représentent des vecteurs d'attaque entièrement nouveaux qui sont prêts à décoller comme une traînée de poudre. Les outils de codage basés sur l'IA représentent l'avenir de l'arsenal de codage des développeurs, mais la formation nécessaire pour utiliser ces armes de productivité en toute sécurité doit être dispensée dès maintenant.
.png)


Bien qu'il semble inévitable que la technologie d'IA de type LLM modifie la façon dont nous abordons de nombreux aspects du travail, et pas seulement le développement de logiciels, nous devons prendre du recul et envisager les risques au-delà des gros titres. Et en tant que compagnon de codage, ses défauts sont peut-être son attribut le plus « humain ».
Chief Executive Officer, Chairman, and Co-Founder

Secure Code Warrior est là pour aider votre organisation à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité informatique ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Réservez une démoChief Executive Officer, Chairman, and Co-Founder
Pieter Danhieux is a globally recognized security expert, with over 12 years experience as a security consultant and 8 years as a Principal Instructor for SANS teaching offensive techniques on how to target and assess organizations, systems and individuals for security weaknesses. In 2016, he was recognized as one of the Coolest Tech people in Australia (Business Insider), awarded Cyber Security Professional of the Year (AISA - Australian Information Security Association) and holds GSE, CISSP, GCIH, GCFA, GSEC, GPEN, GWAPT, GCIA certifications.


Une version de cet article a été publiée dans Lecture sombre. Il a été mis à jour et diffusé ici.
Dès les premiers remous suscités par les derniers outils d'IA révolutionnaires, les développeurs comme les curieux du codage les ont utilisés pour générer du code en appuyant simplement sur un bouton. Les experts en sécurité ont rapidement fait remarquer que, dans de nombreux cas, le code produit était de mauvaise qualité et vulnérable, et entre les mains de personnes peu sensibilisées à la sécurité, pourrait provoquer une avalanche d'applications non sécurisées et de développements Web qui toucheraient des consommateurs peu méfiants.
Et puis, il y a ceux qui ont suffisamment de connaissances en matière de sécurité pour les utiliser à des fins malveillantes. Pour chaque exploit époustouflant en matière d'IA, il semble qu'il existe un contre-coup de la même technologie utilisée pour à des fins néfastes. Hameçonnage, fausses vidéos d'escroquerie, création de logiciels malveillants, manigances généralisées pour les enfants... ces activités perturbatrices sont réalisables bien plus rapidement, avec moins de barrières à l'entrée.
Il existe certainement de nombreux appâts à cliquer qui présentent cet outillage comme révolutionnaire, ou du moins qu'il se classe en tête lorsqu'il est associé à des compétences humaines « moyennes ». Bien qu'il semble inévitable que la technologie d'IA de type LLM modifie la façon dont nous abordons de nombreux aspects du travail, et pas seulement le développement de logiciels, nous devons prendre du recul et envisager les risques au-delà des gros titres.
Et en tant que compagnon de codage, ses défauts sont peut-être son attribut le plus « humain ».
Des modèles de codage médiocres dominent ses solutions de prédilection
ChatGPT étant formé sur des décennies de code et de bases de connaissances existantes, il n'est pas surprenant que, malgré toutes ses merveilles et son mystère, il présente également les mêmes pièges courants auxquels les utilisateurs sont confrontés lorsqu'ils naviguent dans le code. Les modèles de codage médiocres sont la solution idéale, et il faut tout de même un pilote sensible à la sécurité pour générer des exemples de codage sécurisés en posant les bonnes questions et en fournissant la bonne ingénierie rapide.
Même dans ce cas, rien ne garantit que les extraits de code fournis soient exacts et fonctionnels du point de vue de la sécurité ; la technologie est sujette à des hallucinations, même création de bibliothèques inexistantes lorsqu'on lui demande d'effectuer certaines opérations JSON spécifiques, comme l'a découvert Mike Shema. Cela pourrait conduire à un « squattage par hallucination » de la part des acteurs de la menace, qui seraient bien trop heureux de lancer un malware déguisé en bibliothèque fabriquée recommandée en toute confiance par ChatGPT.
En fin de compte, nous devons faire face à la réalité : en général, nous ne nous attendions pas à ce que les développeurs soient suffisamment conscients de la sécurité et que nous ne les avions pas non plus préparés de manière adéquate à écrire du code sécurisé par défaut. Cela se reflétera dans l'énorme quantité de données de formation introduites dans ChatGPT, et nous pouvons nous attendre à des résultats de sécurité similaires, du moins dans un premier temps. Les développeurs devraient être en mesure d'identifier les bogues de sécurité et de les corriger eux-mêmes ou de concevoir de meilleures instructions pour un résultat plus fiable.
Le premier étude utilisateur à grande échelle l'examen de la façon dont les utilisateurs interagissent avec un assistant de codage basé sur l'IA pour résoudre diverses fonctions liées à la sécurité, mené par des chercheurs de l'université de Stanford, confirme cette idée, avec une observation concluant :
»Nous avons observé que les participants qui avaient accès à l'assistant d'IA étaient plus susceptibles d'introduire des failles de sécurité pour la majorité des tâches de programmation, mais également plus susceptibles de qualifier leurs réponses non sécurisées de sécurisées par rapport aux membres de notre groupe témoin.. »
Cela témoigne d'un niveau de confiance par défaut dans les résultats des outils de codage d'IA, qui produisent du code toujours intrinsèquement sécurisé, alors qu'en fait ce n'est pas le cas.
Face à cela et aux inévitables menaces véhiculées par l'IA qui vont imprégner notre avenir, les développeurs doivent plus que jamais perfectionner leurs compétences en matière de sécurité et placer la barre plus haut en matière de qualité du code, quelle que soit son origine.
La route qui mène à une catastrophe en matière de violation de données est pavée de bonnes intentions
Il n'est pas surprenant que les compagnons de programmation basés sur l'IA soient populaires, d'autant plus que les développeurs sont confrontés à des responsabilités croissantes, à des délais plus serrés et aux ambitions d'innovation d'une entreprise qui reposent sur leurs épaules. Cependant, même avec les meilleures intentions, un manque de sensibilisation à la sécurité exploitable lors de l'utilisation de l'IA pour le codage entraînera inévitablement des problèmes de sécurité flagrants. Tous les développeurs dotés d'outils AI/ML généreront davantage de code, et le niveau de risque de sécurité dépendra de leur niveau de compétence. Les organisations doivent être parfaitement conscientes du fait que des personnes non formées généreront certainement du code plus rapidement, mais qu'elles augmenteront également la vitesse de la dette de sécurité technique.
Même notre test préliminaire (avril 2023) avec ChatGPT a révélé qu'il générerait des erreurs très basiques qui pourraient avoir des conséquences dévastatrices. Lorsque nous lui avons demandé de créer une routine de connexion en PHP à l'aide d'une base de données MySQL, du code fonctionnel a été généré rapidement. Cependant, par défaut, il stockait les mots de passe en texte clair dans une base de données, stockait les informations d'identification de connexion à la base de données sous forme de code et utilisait un modèle de codage susceptible d'entraîner une injection SQL (bien qu'il ait effectué un certain niveau de filtrage sur les paramètres d'entrée et généré des erreurs de base de données). Toutes les erreurs commises par les débutants, peu importe la mesure :

Des instructions supplémentaires ont permis de corriger les erreurs, mais il faut des connaissances approfondies en matière de sécurité pour corriger la situation. L'utilisation généralisée et incontrôlée de ces outils n'est rien de mieux que de laisser de jeunes développeurs participer à vos projets. Si ce code permet de créer une infrastructure sensible ou de traiter des données personnelles, nous avons affaire à une bombe à retardement.
Bien entendu, tout comme les développeurs juniors améliorent sans aucun doute leurs compétences au fil du temps, nous nous attendons à ce que les capacités d'IA/ML s'améliorent. Dans un an, il ne commettra peut-être pas d'erreurs de sécurité aussi évidentes et simples. Cependant, cela aura pour effet d'augmenter considérablement les compétences en matière de sécurité requises pour détecter les erreurs de sécurité les plus graves, cachées et non négligeables qu'elle risque toujours de produire.
Nous sommes encore mal préparés pour détecter et corriger les failles de sécurité, et l'IA creuse l'écart
Bien que l'on parle beaucoup de « virage vers la gauche » depuis de nombreuses années, il n'en demeure pas moins que, pour la plupart des organisations, il existe un manque important de connaissances pratiques en matière de sécurité au sein de la cohorte de développement, et nous devons redoubler d'efforts pour fournir les outils et la formation appropriés pour les aider sur la bonne voie.
Dans l'état actuel des choses, nous ne sommes pas préparés aux bugs de sécurité auxquels nous sommes habitués, sans parler des nouveaux problèmes liés à l'IA, tels que l'injection rapide et le squatting par hallucination, qui représentent des vecteurs d'attaque entièrement nouveaux qui sont prêts à décoller comme une traînée de poudre. Les outils de codage basés sur l'IA représentent l'avenir de l'arsenal de codage des développeurs, mais la formation nécessaire pour utiliser ces armes de productivité en toute sécurité doit être dispensée dès maintenant.
.png)

Une version de cet article a été publiée dans Lecture sombre. Il a été mis à jour et diffusé ici.
Dès les premiers remous suscités par les derniers outils d'IA révolutionnaires, les développeurs comme les curieux du codage les ont utilisés pour générer du code en appuyant simplement sur un bouton. Les experts en sécurité ont rapidement fait remarquer que, dans de nombreux cas, le code produit était de mauvaise qualité et vulnérable, et entre les mains de personnes peu sensibilisées à la sécurité, pourrait provoquer une avalanche d'applications non sécurisées et de développements Web qui toucheraient des consommateurs peu méfiants.
Et puis, il y a ceux qui ont suffisamment de connaissances en matière de sécurité pour les utiliser à des fins malveillantes. Pour chaque exploit époustouflant en matière d'IA, il semble qu'il existe un contre-coup de la même technologie utilisée pour à des fins néfastes. Hameçonnage, fausses vidéos d'escroquerie, création de logiciels malveillants, manigances généralisées pour les enfants... ces activités perturbatrices sont réalisables bien plus rapidement, avec moins de barrières à l'entrée.
Il existe certainement de nombreux appâts à cliquer qui présentent cet outillage comme révolutionnaire, ou du moins qu'il se classe en tête lorsqu'il est associé à des compétences humaines « moyennes ». Bien qu'il semble inévitable que la technologie d'IA de type LLM modifie la façon dont nous abordons de nombreux aspects du travail, et pas seulement le développement de logiciels, nous devons prendre du recul et envisager les risques au-delà des gros titres.
Et en tant que compagnon de codage, ses défauts sont peut-être son attribut le plus « humain ».
Des modèles de codage médiocres dominent ses solutions de prédilection
ChatGPT étant formé sur des décennies de code et de bases de connaissances existantes, il n'est pas surprenant que, malgré toutes ses merveilles et son mystère, il présente également les mêmes pièges courants auxquels les utilisateurs sont confrontés lorsqu'ils naviguent dans le code. Les modèles de codage médiocres sont la solution idéale, et il faut tout de même un pilote sensible à la sécurité pour générer des exemples de codage sécurisés en posant les bonnes questions et en fournissant la bonne ingénierie rapide.
Même dans ce cas, rien ne garantit que les extraits de code fournis soient exacts et fonctionnels du point de vue de la sécurité ; la technologie est sujette à des hallucinations, même création de bibliothèques inexistantes lorsqu'on lui demande d'effectuer certaines opérations JSON spécifiques, comme l'a découvert Mike Shema. Cela pourrait conduire à un « squattage par hallucination » de la part des acteurs de la menace, qui seraient bien trop heureux de lancer un malware déguisé en bibliothèque fabriquée recommandée en toute confiance par ChatGPT.
En fin de compte, nous devons faire face à la réalité : en général, nous ne nous attendions pas à ce que les développeurs soient suffisamment conscients de la sécurité et que nous ne les avions pas non plus préparés de manière adéquate à écrire du code sécurisé par défaut. Cela se reflétera dans l'énorme quantité de données de formation introduites dans ChatGPT, et nous pouvons nous attendre à des résultats de sécurité similaires, du moins dans un premier temps. Les développeurs devraient être en mesure d'identifier les bogues de sécurité et de les corriger eux-mêmes ou de concevoir de meilleures instructions pour un résultat plus fiable.
Le premier étude utilisateur à grande échelle l'examen de la façon dont les utilisateurs interagissent avec un assistant de codage basé sur l'IA pour résoudre diverses fonctions liées à la sécurité, mené par des chercheurs de l'université de Stanford, confirme cette idée, avec une observation concluant :
»Nous avons observé que les participants qui avaient accès à l'assistant d'IA étaient plus susceptibles d'introduire des failles de sécurité pour la majorité des tâches de programmation, mais également plus susceptibles de qualifier leurs réponses non sécurisées de sécurisées par rapport aux membres de notre groupe témoin.. »
Cela témoigne d'un niveau de confiance par défaut dans les résultats des outils de codage d'IA, qui produisent du code toujours intrinsèquement sécurisé, alors qu'en fait ce n'est pas le cas.
Face à cela et aux inévitables menaces véhiculées par l'IA qui vont imprégner notre avenir, les développeurs doivent plus que jamais perfectionner leurs compétences en matière de sécurité et placer la barre plus haut en matière de qualité du code, quelle que soit son origine.
La route qui mène à une catastrophe en matière de violation de données est pavée de bonnes intentions
Il n'est pas surprenant que les compagnons de programmation basés sur l'IA soient populaires, d'autant plus que les développeurs sont confrontés à des responsabilités croissantes, à des délais plus serrés et aux ambitions d'innovation d'une entreprise qui reposent sur leurs épaules. Cependant, même avec les meilleures intentions, un manque de sensibilisation à la sécurité exploitable lors de l'utilisation de l'IA pour le codage entraînera inévitablement des problèmes de sécurité flagrants. Tous les développeurs dotés d'outils AI/ML généreront davantage de code, et le niveau de risque de sécurité dépendra de leur niveau de compétence. Les organisations doivent être parfaitement conscientes du fait que des personnes non formées généreront certainement du code plus rapidement, mais qu'elles augmenteront également la vitesse de la dette de sécurité technique.
Même notre test préliminaire (avril 2023) avec ChatGPT a révélé qu'il générerait des erreurs très basiques qui pourraient avoir des conséquences dévastatrices. Lorsque nous lui avons demandé de créer une routine de connexion en PHP à l'aide d'une base de données MySQL, du code fonctionnel a été généré rapidement. Cependant, par défaut, il stockait les mots de passe en texte clair dans une base de données, stockait les informations d'identification de connexion à la base de données sous forme de code et utilisait un modèle de codage susceptible d'entraîner une injection SQL (bien qu'il ait effectué un certain niveau de filtrage sur les paramètres d'entrée et généré des erreurs de base de données). Toutes les erreurs commises par les débutants, peu importe la mesure :

Des instructions supplémentaires ont permis de corriger les erreurs, mais il faut des connaissances approfondies en matière de sécurité pour corriger la situation. L'utilisation généralisée et incontrôlée de ces outils n'est rien de mieux que de laisser de jeunes développeurs participer à vos projets. Si ce code permet de créer une infrastructure sensible ou de traiter des données personnelles, nous avons affaire à une bombe à retardement.
Bien entendu, tout comme les développeurs juniors améliorent sans aucun doute leurs compétences au fil du temps, nous nous attendons à ce que les capacités d'IA/ML s'améliorent. Dans un an, il ne commettra peut-être pas d'erreurs de sécurité aussi évidentes et simples. Cependant, cela aura pour effet d'augmenter considérablement les compétences en matière de sécurité requises pour détecter les erreurs de sécurité les plus graves, cachées et non négligeables qu'elle risque toujours de produire.
Nous sommes encore mal préparés pour détecter et corriger les failles de sécurité, et l'IA creuse l'écart
Bien que l'on parle beaucoup de « virage vers la gauche » depuis de nombreuses années, il n'en demeure pas moins que, pour la plupart des organisations, il existe un manque important de connaissances pratiques en matière de sécurité au sein de la cohorte de développement, et nous devons redoubler d'efforts pour fournir les outils et la formation appropriés pour les aider sur la bonne voie.
Dans l'état actuel des choses, nous ne sommes pas préparés aux bugs de sécurité auxquels nous sommes habitués, sans parler des nouveaux problèmes liés à l'IA, tels que l'injection rapide et le squatting par hallucination, qui représentent des vecteurs d'attaque entièrement nouveaux qui sont prêts à décoller comme une traînée de poudre. Les outils de codage basés sur l'IA représentent l'avenir de l'arsenal de codage des développeurs, mais la formation nécessaire pour utiliser ces armes de productivité en toute sécurité doit être dispensée dès maintenant.
.png)

Cliquez sur le lien ci-dessous et téléchargez le PDF de cette ressource.
Secure Code Warrior est là pour aider votre organisation à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité informatique ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Afficher le rapportRéservez une démoChief Executive Officer, Chairman, and Co-Founder
Pieter Danhieux is a globally recognized security expert, with over 12 years experience as a security consultant and 8 years as a Principal Instructor for SANS teaching offensive techniques on how to target and assess organizations, systems and individuals for security weaknesses. In 2016, he was recognized as one of the Coolest Tech people in Australia (Business Insider), awarded Cyber Security Professional of the Year (AISA - Australian Information Security Association) and holds GSE, CISSP, GCIH, GCFA, GSEC, GPEN, GWAPT, GCIA certifications.
Une version de cet article a été publiée dans Lecture sombre. Il a été mis à jour et diffusé ici.
Dès les premiers remous suscités par les derniers outils d'IA révolutionnaires, les développeurs comme les curieux du codage les ont utilisés pour générer du code en appuyant simplement sur un bouton. Les experts en sécurité ont rapidement fait remarquer que, dans de nombreux cas, le code produit était de mauvaise qualité et vulnérable, et entre les mains de personnes peu sensibilisées à la sécurité, pourrait provoquer une avalanche d'applications non sécurisées et de développements Web qui toucheraient des consommateurs peu méfiants.
Et puis, il y a ceux qui ont suffisamment de connaissances en matière de sécurité pour les utiliser à des fins malveillantes. Pour chaque exploit époustouflant en matière d'IA, il semble qu'il existe un contre-coup de la même technologie utilisée pour à des fins néfastes. Hameçonnage, fausses vidéos d'escroquerie, création de logiciels malveillants, manigances généralisées pour les enfants... ces activités perturbatrices sont réalisables bien plus rapidement, avec moins de barrières à l'entrée.
Il existe certainement de nombreux appâts à cliquer qui présentent cet outillage comme révolutionnaire, ou du moins qu'il se classe en tête lorsqu'il est associé à des compétences humaines « moyennes ». Bien qu'il semble inévitable que la technologie d'IA de type LLM modifie la façon dont nous abordons de nombreux aspects du travail, et pas seulement le développement de logiciels, nous devons prendre du recul et envisager les risques au-delà des gros titres.
Et en tant que compagnon de codage, ses défauts sont peut-être son attribut le plus « humain ».
Des modèles de codage médiocres dominent ses solutions de prédilection
ChatGPT étant formé sur des décennies de code et de bases de connaissances existantes, il n'est pas surprenant que, malgré toutes ses merveilles et son mystère, il présente également les mêmes pièges courants auxquels les utilisateurs sont confrontés lorsqu'ils naviguent dans le code. Les modèles de codage médiocres sont la solution idéale, et il faut tout de même un pilote sensible à la sécurité pour générer des exemples de codage sécurisés en posant les bonnes questions et en fournissant la bonne ingénierie rapide.
Même dans ce cas, rien ne garantit que les extraits de code fournis soient exacts et fonctionnels du point de vue de la sécurité ; la technologie est sujette à des hallucinations, même création de bibliothèques inexistantes lorsqu'on lui demande d'effectuer certaines opérations JSON spécifiques, comme l'a découvert Mike Shema. Cela pourrait conduire à un « squattage par hallucination » de la part des acteurs de la menace, qui seraient bien trop heureux de lancer un malware déguisé en bibliothèque fabriquée recommandée en toute confiance par ChatGPT.
En fin de compte, nous devons faire face à la réalité : en général, nous ne nous attendions pas à ce que les développeurs soient suffisamment conscients de la sécurité et que nous ne les avions pas non plus préparés de manière adéquate à écrire du code sécurisé par défaut. Cela se reflétera dans l'énorme quantité de données de formation introduites dans ChatGPT, et nous pouvons nous attendre à des résultats de sécurité similaires, du moins dans un premier temps. Les développeurs devraient être en mesure d'identifier les bogues de sécurité et de les corriger eux-mêmes ou de concevoir de meilleures instructions pour un résultat plus fiable.
Le premier étude utilisateur à grande échelle l'examen de la façon dont les utilisateurs interagissent avec un assistant de codage basé sur l'IA pour résoudre diverses fonctions liées à la sécurité, mené par des chercheurs de l'université de Stanford, confirme cette idée, avec une observation concluant :
»Nous avons observé que les participants qui avaient accès à l'assistant d'IA étaient plus susceptibles d'introduire des failles de sécurité pour la majorité des tâches de programmation, mais également plus susceptibles de qualifier leurs réponses non sécurisées de sécurisées par rapport aux membres de notre groupe témoin.. »
Cela témoigne d'un niveau de confiance par défaut dans les résultats des outils de codage d'IA, qui produisent du code toujours intrinsèquement sécurisé, alors qu'en fait ce n'est pas le cas.
Face à cela et aux inévitables menaces véhiculées par l'IA qui vont imprégner notre avenir, les développeurs doivent plus que jamais perfectionner leurs compétences en matière de sécurité et placer la barre plus haut en matière de qualité du code, quelle que soit son origine.
La route qui mène à une catastrophe en matière de violation de données est pavée de bonnes intentions
Il n'est pas surprenant que les compagnons de programmation basés sur l'IA soient populaires, d'autant plus que les développeurs sont confrontés à des responsabilités croissantes, à des délais plus serrés et aux ambitions d'innovation d'une entreprise qui reposent sur leurs épaules. Cependant, même avec les meilleures intentions, un manque de sensibilisation à la sécurité exploitable lors de l'utilisation de l'IA pour le codage entraînera inévitablement des problèmes de sécurité flagrants. Tous les développeurs dotés d'outils AI/ML généreront davantage de code, et le niveau de risque de sécurité dépendra de leur niveau de compétence. Les organisations doivent être parfaitement conscientes du fait que des personnes non formées généreront certainement du code plus rapidement, mais qu'elles augmenteront également la vitesse de la dette de sécurité technique.
Même notre test préliminaire (avril 2023) avec ChatGPT a révélé qu'il générerait des erreurs très basiques qui pourraient avoir des conséquences dévastatrices. Lorsque nous lui avons demandé de créer une routine de connexion en PHP à l'aide d'une base de données MySQL, du code fonctionnel a été généré rapidement. Cependant, par défaut, il stockait les mots de passe en texte clair dans une base de données, stockait les informations d'identification de connexion à la base de données sous forme de code et utilisait un modèle de codage susceptible d'entraîner une injection SQL (bien qu'il ait effectué un certain niveau de filtrage sur les paramètres d'entrée et généré des erreurs de base de données). Toutes les erreurs commises par les débutants, peu importe la mesure :

Des instructions supplémentaires ont permis de corriger les erreurs, mais il faut des connaissances approfondies en matière de sécurité pour corriger la situation. L'utilisation généralisée et incontrôlée de ces outils n'est rien de mieux que de laisser de jeunes développeurs participer à vos projets. Si ce code permet de créer une infrastructure sensible ou de traiter des données personnelles, nous avons affaire à une bombe à retardement.
Bien entendu, tout comme les développeurs juniors améliorent sans aucun doute leurs compétences au fil du temps, nous nous attendons à ce que les capacités d'IA/ML s'améliorent. Dans un an, il ne commettra peut-être pas d'erreurs de sécurité aussi évidentes et simples. Cependant, cela aura pour effet d'augmenter considérablement les compétences en matière de sécurité requises pour détecter les erreurs de sécurité les plus graves, cachées et non négligeables qu'elle risque toujours de produire.
Nous sommes encore mal préparés pour détecter et corriger les failles de sécurité, et l'IA creuse l'écart
Bien que l'on parle beaucoup de « virage vers la gauche » depuis de nombreuses années, il n'en demeure pas moins que, pour la plupart des organisations, il existe un manque important de connaissances pratiques en matière de sécurité au sein de la cohorte de développement, et nous devons redoubler d'efforts pour fournir les outils et la formation appropriés pour les aider sur la bonne voie.
Dans l'état actuel des choses, nous ne sommes pas préparés aux bugs de sécurité auxquels nous sommes habitués, sans parler des nouveaux problèmes liés à l'IA, tels que l'injection rapide et le squatting par hallucination, qui représentent des vecteurs d'attaque entièrement nouveaux qui sont prêts à décoller comme une traînée de poudre. Les outils de codage basés sur l'IA représentent l'avenir de l'arsenal de codage des développeurs, mais la formation nécessaire pour utiliser ces armes de productivité en toute sécurité doit être dispensée dès maintenant.
.png)
Table des matières
Chief Executive Officer, Chairman, and Co-Founder

Secure Code Warrior est là pour aider votre organisation à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité informatique ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Réservez une démoTéléchargerRessources pour vous aider à démarrer
Sujets et contenus de formation sur le code sécurisé
Notre contenu de pointe évolue constamment pour s'adapter à l'évolution constante du paysage du développement de logiciels tout en tenant compte de votre rôle. Des sujets couvrant tout, de l'IA à l'injection XQuery, proposés pour une variété de postes, allant des architectes aux ingénieurs en passant par les chefs de produit et l'assurance qualité. Découvrez un aperçu de ce que notre catalogue de contenu a à offrir par sujet et par rôle.
Threat Modeling with AI: Turning Every Developer into a Threat Modeler
Walk away better equipped to help developers combine threat modeling ideas and techniques with the AI tools they're already using to strengthen security, improve collaboration, and build more resilient software from the start.
Ressources pour vous aider à démarrer
Cybermon est de retour : les missions d'IA Beat the Boss sont désormais disponibles à la demande
Cybermon 2025 Beat the Boss est désormais disponible toute l'année dans SCW. Déployez des défis de sécurité avancés liés à l'IA et au LLM pour renforcer le développement sécurisé de l'IA à grande échelle.
Explication de la loi sur la cyberrésilience : ce que cela signifie pour le développement de logiciels sécurisés dès la conception
Découvrez ce que la loi européenne sur la cyberrésilience (CRA) exige, à qui elle s'applique et comment les équipes d'ingénieurs peuvent se préparer grâce à des pratiques de sécurité dès la conception, à la prévention des vulnérabilités et au renforcement des capacités des développeurs.
Facilitateur 1 : Critères de réussite définis et mesurables
Enabler 1 donne le coup d'envoi de notre série en 10 parties intitulée Enablers of Success en montrant comment associer le codage sécurisé à des résultats commerciaux tels que la réduction des risques et la rapidité pour assurer la maturité à long terme des programmes.




%20(1).avif)
.avif)
