1 points par GN⁺ 2024-01-04 | 1 commentaires | Partager sur WhatsApp

Prime aux bugs

  • Le programme de prime aux bugs offre de véritables récompenses financières lorsque des hackers signalent des problèmes de sécurité.
  • Certaines personnes repèrent des motifs dans le code source ou lancent des scanners de sécurité basiques, puis signalent les résultats dans l’espoir d’obtenir une récompense, sans analyse supplémentaire.
  • Pendant plusieurs années d’exploitation du programme, la proportion de signalements inutiles n’a pas constitué un problème majeur, et la plupart pouvaient être facilement détectés et ignorés.
  • Plus de 70 000 USD ont été versés jusqu’à présent au titre des primes aux bugs, et sur 415 signalements de vulnérabilités, 64 ont été confirmés comme de véritables problèmes de sécurité.

De meilleurs déchets, c’est pire

  • Quand un rapport semble mieux présenté et donne l’impression d’être pertinent, il faut davantage de temps pour l’examiner puis l’écarter.
  • Un rapport de sécurité exige qu’un humain y consacre du temps pour le relire et en évaluer la portée.
  • Les signalements inutiles n’aident pas le projet et détournent le temps et l’énergie des développeurs d’activités productives.

Rapports de sécurité générés par l’IA

  • L’IA peut faire beaucoup de bonnes choses, mais elle peut aussi être utilisée à mauvais escient.
  • L’IA pourrait être utile pour trouver et signaler des problèmes de sécurité, mais aucun bon exemple de ce type n’a encore été trouvé.
  • Actuellement, des utilisateurs s’emploient activement à analyser le code de curl avec des LLM et à soumettre les résultats sous forme de rapports de vulnérabilités.

Détection des déchets produits par l’IA

  • Les personnes qui signalent des problèmes ne maîtrisent pas toujours parfaitement l’anglais, ce qui peut parfois rendre leur intention difficile à comprendre immédiatement.
  • Il arrive aussi qu’elles utilisent l’IA ou d’autres outils pour les aider à formuler leur pensée ou à traduire.
  • La simple présence de passages générés par l’IA ou par des outils similaires ne constitue pas en soi un problème immédiat.

Pièce A : divulgation d’une modification de code

  • À l’automne 2023, une annonce préalable de divulgation a été faite pour CVE-2023-38545.
  • La veille de l’annonce du problème, un utilisateur a soumis sur Hackerone un rapport intitulé : Curl CVE-2023-38545 code change for vulnerability disclosed on the Internet.
  • Le rapport dégageait une odeur d’hallucination de style IA : il inventait quelque chose de nouveau sans lien avec la réalité.
  • L’utilisateur a indiqué avoir utilisé Bard, l’IA générative de Google, pour trouver ce problème.

Pièce B : vulnérabilité de dépassement de tampon

  • C’était un cas moins évident et mieux construit, mais qui restait malgré tout prisonnier d’une hallucination.
  • Le matin du 28 décembre 2023, un utilisateur a soumis sur Hackerone un rapport intitulé : Buffer overflow vulnerability in WebSocket handling.
  • Le rapport était détaillé, rédigé dans un anglais correct, et incluait même une proposition de correctif.
  • Après plusieurs questions et hallucinations, il est apparu dans l’après-midi du même jour qu’il ne s’agissait pas d’un vrai problème, et le ticket a été clôturé sans correction.

Interdire ces rapporteurs

  • Hackerone ne dispose pas d’une fonctionnalité explicite permettant d’interdire toute communication ultérieure avec un projet.
  • Lorsqu’un problème n’est pas retenu, la « réputation » du chercheur baisse, mais si cela n’arrive qu’une seule fois sur un projet donné, la variation reste très faible.

Avenir

  • Ce type de rapports deviendra probablement plus fréquent avec le temps, et il sera possible d’apprendre à mieux détecter les signaux liés à l’IA et à ignorer les rapports sur cette base.
  • Ce serait regrettable lorsque l’IA est utilisée pour des tâches appropriées.
  • Il est certain que des outils réellement efficaces, reposant sur l’IA, apparaîtront à l’avenir, et utiliser l’IA pour trouver des problèmes de sécurité n’est pas forcément une mauvaise idée.
  • En y ajoutant une toute petite part de vérification humaine (intelligente), l’usage de ces outils et leurs résultats pourraient être bien meilleurs.

Discussion

  • Hacker news

Crédits

  • Image : Haider Mahmood par Pixabay
  • IA
  • cURL and libcurl
  • hackerone
  • Security

Avis de GN⁺

  • Les progrès des technologies d’IA apportent aussi de nouveaux défis et de nouvelles opportunités dans le domaine de la sécurité. L’IA peut aider à trouver des vulnérabilités, mais pour l’instant, ses rapports imprécis font souvent perdre du temps aux développeurs.
  • Identifier et corriger rapidement les problèmes de sécurité est essentiel pour maintenir la sûreté des logiciels. Cependant, avec l’augmentation des rapports générés par l’IA, une nouvelle approche est nécessaire pour les gérer efficacement.
  • Cet article illustre par des cas concrets comment l’IA peut être mal utilisée dans le domaine de la sécurité, et souligne l’importance d’un usage responsable de l’IA ainsi que de la supervision humaine.

1 commentaires

 
GN⁺ 2024-01-04
Avis sur Hacker News
  • Résumé des commentaires sur Hacker News :
    • Avis sur le ton particulier des LLM (grands modèles de langage) :

      Le fait que les LLM aient un ton particulier qui les fait sonner comme des majordomes robots est acceptable, mais il est inquiétant que les gens commencent à parler comme des LLM.

    • Avis sur le rapport de faille de sécurité lié à curl généré par un LLM :

      Au début, cela semblait être un doublon de quelque chose déjà vu auparavant, mais il s’est avéré qu’il s’agissait en réalité d’un faux rapport généré par un autre LLM.

    • Inquiétudes concernant les LLM et les programmes de bug bounty :

      Les faux rapports soumis par des LLM aux programmes de bug bounty pourraient rendre leur fonctionnement difficile. Il faudra peut-être gérer ces programmes plus strictement pour que seules de vraies personnes et de vrais chercheurs en sécurité puissent y participer.

    • Préoccupation sur le temps d’ingénierie gaspillé par rapport au faible coût des LLM :

      Il est préoccupant que les LLM puissent, pour un coût minime, faire gaspiller une grande quantité de temps d’ingénierie précieux.

    • Réflexion sur les problèmes de fiabilité du contenu causés par les LLM :

      La rédaction, qui servait de preuve d’un effort minimal, se transforme avec les LLM en quelque chose qui exige encore plus d’efforts de vérification. Cela affecte les programmes de bug bounty et le processus CVE, relève la barrière à l’entrée et peut, au final, conduire à ce que davantage de failles ne soient ni découvertes ni corrigées.

    • Analyse technique du code de curl :

      Il est particulièrement étrange de se plaindre de l’absence de vérification de longueur alors que curl n’utilise pas de données fournies par l’utilisateur et que la taille est fixée à la compilation. Je me demande aussi si quelqu’un de plus familier avec le langage C pourrait expliquer l’objectif de la variable locale keyval.

    • Critique de la revue de code par les LLM :

      Le fait que dineshsec / dinesh_b tente d’apprendre à Daniel à utiliser strncpy est une perte de temps, et il est avancé que l’usage de memcpy est préférable à strcpy ou strncpy. Les recommandations du LLM ne sont pas réellement des recommandations à suivre.

    • Avis sur le problème de l’IA dans le domaine de la cybersécurité :

      Jusqu’à récemment, la cybersécurité était relativement immunisée contre les informations de mauvaise qualité, mais désormais l’IA permet aux escrocs de tromper plus facilement. Le problème vient moins de l’IA elle-même que de l’éthique, et il suffit qu’un rapport de sécurité paraisse « légitime » pour qu’il soit accepté.