
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 ».
Directeur général, président et cofondateur

Secure Code Warrior 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é.
Veuillez réserver une démonstration.Directeur général, président et cofondateur
Pieter Danhieux est un expert en sécurité mondialement reconnu, avec plus de 12 ans d'expérience en tant que consultant en sécurité et 8 ans en tant qu'instructeur principal pour SANS, enseignant des techniques offensives sur la façon de cibler et d'évaluer les organisations, les systèmes et les individus pour les faiblesses de sécurité. En 2016, il a été reconnu comme l'une des personnes les plus cool d'Australie dans le domaine de la technologie (Business Insider), a reçu le prix du professionnel de la cybersécurité de l'année (AISA - Australian Information Security Association) et détient les certifications GSE, CISSP, GCIH, GCFA, GSEC, GPEN, GWAPT, GCIA.


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)

Veuillez cliquer sur le lien ci-dessous et télécharger le PDF de cette ressource.
Secure Code Warrior 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é.
Veuillez consulter le rapportVeuillez réserver une démonstration.Directeur général, président et cofondateur
Pieter Danhieux est un expert en sécurité mondialement reconnu, avec plus de 12 ans d'expérience en tant que consultant en sécurité et 8 ans en tant qu'instructeur principal pour SANS, enseignant des techniques offensives sur la façon de cibler et d'évaluer les organisations, les systèmes et les individus pour les faiblesses de sécurité. En 2016, il a été reconnu comme l'une des personnes les plus cool d'Australie dans le domaine de la technologie (Business Insider), a reçu le prix du professionnel de la cybersécurité de l'année (AISA - Australian Information Security Association) et détient les certifications GSE, CISSP, GCIH, GCFA, GSEC, GPEN, GWAPT, GCIA.
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
Directeur général, président et cofondateur

Secure Code Warrior 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é.
Veuillez réserver une démonstration.TéléchargerRessources pour vous aider à démarrer
Thèmes 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.
La Chambre de commerce établit la norme en matière de sécurité à grande échelle axée sur les développeurs
La Chambre de commerce néerlandaise explique comment elle a intégré le codage sécurisé dans le développement quotidien grâce à des certifications basées sur les rôles, à l'évaluation comparative du Trust Score et à une culture de responsabilité partagée en matière de sécurité.
Modélisation des menaces avec l'IA : transformer chaque développeur en modélisateur de menaces
Vous repartirez mieux équipé pour aider les développeurs à combiner les idées et les techniques de modélisation des menaces avec les outils d'IA qu'ils utilisent déjà pour renforcer la sécurité, améliorer la collaboration et créer des logiciels plus résilients dès le départ.
Ressources pour vous aider à démarrer
Cybermon est de retour : les missions Beat the Boss sont désormais disponibles sur demande.
Cybermon 2025 : Vaincre le Boss est désormais accessible toute l'année dans SCW. Mettez en œuvre des défis de sécurité avancés liés à l'IA et au LLM afin de renforcer le développement sécurisé de l'IA à grande échelle.
Explication de la loi sur la cyber-résilience : implications pour le développement de logiciels sécurisés dès leur conception
Découvrez les exigences de la loi européenne sur la cyber-résilience (CRA), à 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 clairement définis et mesurables
Enabler 1 inaugure notre série en 10 parties intitulée « Enablers of Success » en démontrant comment associer le codage sécurisé à des résultats commerciaux tels que la réduction des risques et la rapidité afin d'assurer la maturité à long terme des programmes.




%20(1).avif)
.avif)
