Soyons honnêtes : les développeurs de logiciels n’obtiennent pas nécessairement la formation la plus complète. Ils écrivent parfois du code non sécurisé tout en ressentant la pression de travailler à une vitesse plus rapide que celle de l’homme. Aujourd’hui, à l’ère de l’IA, ils s’appuient davantage sur des outils qui peuvent générer des snippets de code plus rapidement, et ils, ce qui fait que nous tous, en fait, avons tendance à faire davantage confiance à ce code qu’au code généré par l’homme.
Cette rapidité et cette confiance ne sont pas une excellente recette pour la sécurité des applications.
La vitesse plus élevée du code rendue possible par les grands modèles linguistiques (LLM) et l’ IA générative (GenAI) se traduit par une vitesse de vulnérabilité plus élevée, ce qui génère désormais une multitude de nouveaux défis pour les tests de sécurité, la remédiation et la gouvernance intelligente de l’IA.
Alors que nous approchons de Black Hat USA 2024, l’une des sessions les plus attendues est « De HAL à HALT : Thwarting Skynet’s Siblings in the GenAI Coding Era » de Chris Wysopal, un leader respecté en matière de sécurité des applications et cofondateur de Veracode.
Lors d’un briefing exclusif juste avant le Black Hat USA 2024, Focal Point s’est entretenu avec Wysopal pour discuter des sujets cruciaux qu’il abordera lors de sa session. Voici quelques informations clés tirées de notre conversation, fournissant un aperçu de ce que les participants peuvent s’attendre à apprendre sur l’intersection de l’IA générative et de la cybersécurité.
Cet entretien a été légèrement modifié pour plus de longueur et de clarté.
Votre session Black Hatvérifie HAL et Skynet , certains des moments les plus tristement célèbres de l’IA à Hollywood. À défaut d’Arnold Schwarzenegger débarquant dans nos bureaux, dans quelle mesure pensez-vous que le changement est vraiment sur la bonne voie ?
L’idée de la session est de parler de la manière dont le code généré par LLM est probablement l’une des plus grandes utilisations des LLM aujourd’hui. Elle se développe et a un potentiel incroyable. Cela va changer la façon dont les logiciels sont conçus.
« Le code généré par LLM est probablement l’une des plus grandes utilisations des LLM aujourd’hui. Elle se développe et a un potentiel incroyable. »
Pour moi, en tant que personne qui travaille dans la sécurité des applications depuis plus de 25 ans, il s’agit d’un changement énorme dans le développement logiciel. Généralement, lorsqu’il y a des modifications au développement logiciel, il y a des modifications à la sécurité des applications. Cette discussion porte sur la manière dont l’IA générée, le code généré, va modifier la sécurité des applications.
Vous avez mentionné que le code généré par LLM peut être aussi non sécurisé que le code généré par l’homme. Quelles en sont les implications pour les entreprises qui s’appuient sur des outils tels que ChatGPT ou Microsoft Copilot ?
Il existe plusieurs études différentes de Stanford, de l’Université de Wuhan et de Carnegie Mellon qui ont examiné ce problème et ont fondamentalement découvert que ces LLM génèrent un code qui est presque aussi non sécurisé que le code généré par l’homme. Déchets entrants, déchets sortants. Si vous apprenez à faire quelque chose d’une seule manière, vous le ferez probablement de cette manière. Donc, c’est un peu comme le point de départ de référence. Et puis c’est comme, eh bien, que faisons-nous à ce sujet ?
Comment les entreprises peuvent-elles tirer parti de GenAI tout en garantissant un développement logiciel sécurisé ?
[Au lieu de former] un modèle de base sur la manière d’écrire du code, nous pouvons l’affiner et lui donner des exemples de ce à quoi ressemble un mauvais code. Et si vous voyez ce mauvais code et qu’on vous demande d’écrire un bon code, c’est ce que le bon code serait.
« [Au lieu de former] un modèle de base sur la manière d’écrire du code, nous pouvons l’affiner et lui donner des exemples de ce à quoi ressemble un mauvais code. »
L’une des choses que nous pensons être une solution est de poursuivre, d’utiliser votre ChatGPT, votre Code Llama, votre Copilot, car il aura les meilleures connaissances sur la manière d’écrire différents types de code pour de nombreuses langues différentes et problèmes de codage. Et ignorez le fait qu’il écrit du code vulnérable, tout comme vous ignorez le fait que vos développeurs écrivent du code vulnérable. Parce que, franchement, vous ne les envoyez pas à une formation de codage sécurisé si intense qu’ils écrivent un excellent code sécurisé tout le temps. Vous dites en gros, je sais que mes développeurs écrivent du code non sécurisé.
Vous devez donc toujours tester les problèmes de sécurité et résoudre les problèmes de sécurité.
Comment voyez-vous le rôle de l’expertise humaine évoluer à l’ère du codage basé sur l’IA ? Y a-t-il toujours un endroit pour l’examen manuel du code et les tests de sécurité ?
Nous avons déjà un problème à trouver plus de problèmes dans le code développé par l’homme que nous ne pouvons résoudre, n’est-ce pas ? Vous avez donc cette dette de sécurité croissante. Vous n’engagez pas déjà suffisamment de ressources pour corriger toutes les choses que vous trouvez avec votre automatisation.
C’est donc comme le problème que nous commençons. Et maintenant, nous allons amplifier ce problème en écrivant plus de code plus rapidement avec essentiellement la même qualité de sécurité. Même s’il était deux fois plus bon, même s’il avait la moitié de la densité de vulnérabilité, vous auriez toujours un problème plus important si vous exécutiez trois fois plus de code par développeur. Nous générons donc plus de vulnérabilités en utilisant des LLM en développement.
Donc oui, nous avons besoin d’outils rapides dans le pipeline CI/CD qui trouveront le problème, mais nous avons également besoin d’outils rapides qui résoudront les problèmes.
Vous avez parlé du potentiel d’apprentissage récursif et de la dégénérescence des connaissances dans les modèles d’IA. Pouvez-vous développer ce problème et ses implications pour la cybersécurité ?
Oui, cela commence à devenir quelque chose qui inquiète les gens. Il existe des effets dégénératifs sur les connaissances lorsque vous apprenez à partir de contenu généré par l’IA, car vous apprenez ces hallucinations. L’idée est donc que, si la plupart des codes écrits sont écrits par les LLM, et ces LLM, nous savons tous, que certaines choses se passent mal. Cela cause-t-il un problème pour la prochaine génération de code dont il va tirer des enseignements ?
« Allez-y, utilisez votre ChatGPT, votre code Llama, votre copilote... Et ignorez le fait qu’il écrit du code vulnérable, [car] vous devez toujours tester les problèmes de sécurité et vous devez toujours résoudre les problèmes de sécurité. »
Vous savez, cette prochaine génération de LLM – dans trois ans, lorsqu’elle apprendra, va-t-elle apprendre sur peut-être 10 % du code dans le monde écrit par les LLM ? Et cela commencera-t-il à augmenter ? Peut-être qu’un jour, nous écrirons presque toujours du code avec des LLM, et il n’y aura presque aucune interaction humaine. Qu’est-ce que cela signifie si les LLM apprennent des autres, donc nous apprenons simplement des résultats des autres LLM ?
Nous commençons tout juste à comprendre comment cela a un effet dégénératif sur les connaissances, et il se peut que nous devions marquer le code généré par les LLM afin de ne pas former les futurs LLM avec ce code. Ou quelque chose comme ça.
Quelles préoccupations éthiques découlent de l’utilisation de GenAI pour le codage, en particulier concernant l’attribution de code et les problèmes de droit d’auteur ?
Vous avez le même problème que vous avez avec les articles du New York Times ou comme avec le livre de Sarah Silverman. Elle poursuit parce qu’elle a écrit des blagues dans un livre qu’elle n’a jamais joué nulle part. C’était juste dans le livre, et cela apparaît dans les réponses ChatGPT comme, vous savez, « Écrivez-moi une blague à ce sujet », et cela utilise ses blagues.
Il est donc clair qu’il s’agit uniquement d’utiliser mon contenu et mon contenu protégé par le droit d’auteur. C’est donc absolument le cas avec le code.
La plupart du code sur lequel il est appris est le code GPL [General Public License ]. Cela nécessite donc une attribution et, avec une partie, la GPL 3 vous obligerait à publier le code de votre logiciel, si vous l’incluez. Donc, oui, c’est quelque chose sur lequel nous n’avons vu aucune jurisprudence, mais je peux vous dire que les avocats sont très inquiets à ce sujet, et ce qu’ils font, c’est d’analyser le code avec l’analyse des extraits de code pour essayer de le faire correspondre, pour voir s’il est compatible avec l’open source, et s’il s’agit d’un bloc de code suffisamment important, cela serait une violation. Par exemple, une ligne de code sur laquelle vous ne pouvez pas enfreindre. Mais s’il s’agit d’une routine entière... S’il s’agit d’une classe entière, c’est vraiment contrefaisant.
Alors que nous concluons, qu’attendez-vous le plus avec impatience chez Black Hat, et qu’espérez-vous que les participants retirent de votre session ?
Ce que je veux vraiment dire, c’est que l’IA générative a un impact énorme sur le codage. Tout comme passer au cloud ou quelque chose comme ça, c’est un changement fondamental pour les applications et nous devons réfléchir à la manière dont cela va changer la sécurité des logiciels à l’avenir.
Nous avons besoin de processus en place pour que cela ne s’aggrave pas. Comme la réparation automatisée, je pense que c’est une bonne chose. Notre travail consiste à nous assurer, si nous sommes une banque ou une société de logiciels, que tout ce que nous mettons en œuvre dans les logiciels est sécurisé, et si l’IA générative le rend moins sécurisé, nous avons besoin d’une réponse. C’est mon message principal.
EN SAVOIR PLUS SUR BLACK HAT USA 2024
Ne manquez pas cette occasion d’entendre l’un des esprits les plus importants en matière de cybersécurité et de participer à la conversation sur l’avenir de l’IA et de la sécurité des applications lors du Black Hat USA 2024. La session de Chris Wysopal au Black Hat USA 2024 est un événement incontournable pour tous les professionnels de l’informatique et les chefs d’entreprise qui cherchent à obtenir des informations plus précises sur un obstacle majeur à la sécurité de l’IA.
- Session : de HAL à HALT : empêcher les frères et sœurs de Skynet à l’ère du codage GenAI
- Date : mercredi 7 août
- Heure : 1:30 - 14:10 PT
- Emplacement : Oceanside A, niveau 2

