Google a franchi une étape importante en matière de cybersécurité avec la découverte d’une faille logicielle critique vieille de 20 ans dans la bibliothèque OpenSSL. Cette découverte s’inscrit dans le cadre des travaux continus de Google sur OSS-Fuzz, un projet destiné à détecter et à signaler les bugs logiciels dans les projets open source. Grâce à des cibles de fuzzing générées et améliorées par l’IA — essentiellement des tests automatisés conçus pour détecter les vulnérabilités — Google a récemment identifié 26 nouvelles vulnérabilités, dont la faille d’OpenSSL (CVE-2024-9143).
Cette réussite est remarquable, car les cibles de fuzzing traditionnelles écrites par des humains n’étaient pas parvenues à détecter la faille, dissimulée depuis deux décennies dans le code source critique d’OpenSSL. Les cibles de fuzzing générées par l’IA ont exploré des chemins d’exécution qui n’avaient encore jamais été testés, permettant de découvrir des vulnérabilités qui seraient autrement peut-être passées inaperçues. Cette avancée montre comment l’intelligence artificielle transforme la détection des vulnérabilités et renforce la sécurité des logiciels open source.
Comment l’IA a rendu cela possible
Cette avancée repose sur un grand modèle de langage (LLM) intégré au workflow de fuzzing de Google. Ce logiciel d’IA améliore la couverture en automatisant des tâches qui nécessitaient traditionnellement une intervention manuelle, notamment :
- Rédaction des cibles de fuzzing : Le LLM génère des tests ciblés à partir du contexte propre au projet.
- Correction des erreurs de compilation : Il résout les problèmes de manière itérative lors de la création des cibles de fuzzing.
- Exécution des tests initiaux : L’IA affine les cibles de fuzzing en corrigeant les problèmes d’exécution.
- Tri et analyse : Les plantages sont analysés afin d’en déterminer les causes profondes et de vérifier s’ils correspondent bien à des vulnérabilités.
Ce processus itératif a étendu la couverture du code à 272 projets, améliorant considérablement les tests.
Principales vulnérabilités découvertes
En plus de la faille d’OpenSSL, Google a découvert une vulnérabilité dans le projet cJSON, démontrant l’efficacité des cibles de fuzzing générées par l’IA dans des projets auparavant testés avec des harnesses écrits par des humains. Ces résultats montrent que même les logiciels ayant fait l’objet de tests approfondis peuvent abriter des failles non détectées.
Les métriques traditionnelles, comme la couverture des lignes, ne tiennent souvent pas compte de tous les chemins d’exécution et de tous les états possibles, ce qui fait des cibles de fuzzing générées par l’IA un outil important et utile pour renforcer la sécurité.
L’avenir des produits d’IA de Google
Google prévoit de repousser encore les limites de la détection des vulnérabilités alimentée par l’IA. Parmi ses prochains objectifs figurent l’automatisation des processus de tri afin de réduire la supervision humaine, l’intégration directe d’outils d’IA à la plateforme OSS-Fuzz et la possibilité pour les LLM de générer de manière autonome des correctifs pour les vulnérabilités découvertes.
En intégrant des architectures basées sur des agents, qui permettent aux modèles d’IA d’utiliser des outils de débogage et de valider les résultats, Google entend créer une solution entièrement automatisée, de bout en bout, pour détecter et corriger les bugs logiciels.
La découverte de Google souligne le potentiel transformateur des outils d’IA pour sécuriser les infrastructures critiques. À mesure que les modèles d’IA évoluent, ils promettent de découvrir les vulnérabilités cachées plus rapidement et plus efficacement que jamais, afin de garantir que les projets open source restent robustes et protégés contre les exploitations malveillantes.

