Google a collaboré avec DeepMind pour découvrir et corriger avec succès une vulnérabilité de sécurité de la mémoire dans la base de données SQLite à l'aide du modèle d'IA « Big Sleep ». Il s'agit d'un problème de dépassement de tampon de pile que les tests de fuzz traditionnels n'ont pas réussi à détecter, mais Big Sleep l'a trouvé avec succès. C'est la première fois que l'IA découvre des vulnérabilités connues dans des logiciels du monde réel, apportant de nouvelles possibilités dans le domaine de la sécurité logicielle et annonçant l'orientation future du développement de la détection de sécurité logicielle assistée par l'IA. L’éditeur de Downcodes expliquera en détail cette avancée révolutionnaire.
SQLite est un moteur de base de données open source. Cette vulnérabilité peut permettre à un attaquant de provoquer un crash d'exécution de SQLite ou même de réaliser l'exécution de code arbitraire via une base de données construite de manière malveillante ou une injection SQL. Plus précisément, le problème vient d'une valeur magique de -1 utilisée accidentellement comme index de tableau, et bien qu'il y ait assert() dans le code pour résoudre ce problème, dans les versions, cette vérification du niveau de débogage sera supprimée.
Google a souligné qu'exploiter cette vulnérabilité n'est pas simple, mais plus important encore, c'est la première fois que l'IA découvre une vulnérabilité connue dans un logiciel du monde réel. Selon Google, les méthodes de fuzzing traditionnelles n'ont pas permis de détecter le problème, mais Big Sleep l'a fait. Après avoir analysé une série de commits dans le code source du projet, Big Sleep a verrouillé la vulnérabilité début octobre et elle a été corrigée dans la même journée.
Google a déclaré dans un communiqué le 1er novembre que les résultats de ces recherches présentaient un énorme potentiel en matière de défense. Bien que les tests fuzz aient obtenu des résultats significatifs, l'équipe de Google estime qu'une nouvelle méthode est nécessaire pour aider les développeurs à découvrir les vulnérabilités difficiles à trouver grâce aux tests fuzz, et ils sont pleins d'attentes quant aux capacités de l'IA à cet égard.
Avant cela, Protect AI, basé à Seattle, avait également lancé un outil open source appelé Vulnhuntr, affirmant qu'il pouvait utiliser le modèle Claude AI d'Anthropic pour trouver des vulnérabilités zero-day dans les bases de code Python. Cependant, l'équipe de Google a souligné que les deux outils répondaient à des objectifs différents et que Big Sleep avait découvert des vulnérabilités liées à la sécurité de la mémoire.
Actuellement, Big Sleep est encore au stade de la recherche et a été principalement testé sur de petits programmes présentant des vulnérabilités connues. C'est la première fois qu'il est testé dans un environnement réel. Pour les tests, l'équipe de recherche a collecté plusieurs derniers commits de la base de code SQLite et, après analyse, a ajusté le contenu de l'invite du modèle et a finalement trouvé la vulnérabilité.
Malgré cette réussite, l'équipe de Google rappelle à tous que ces résultats sont encore hautement expérimentaux et que les tests de fuzz spécifiques à une cible peuvent être tout aussi efficaces pour découvrir des vulnérabilités.
Les progrès révolutionnaires du modèle d'IA de Google, Big Sleep, dans le domaine de la sécurité logicielle fournissent de nouvelles idées et méthodes pour la future détection de la sécurité logicielle. Bien qu’il soit encore au stade expérimental, son potentiel est énorme et mérite d’être attendu. L'éditeur de Downcodes continuera de prêter attention au développement de ce domaine et vous proposera des rapports plus passionnants.