Google a récemment annoncé que son dernier modèle d'IA, « Big Sleep », a réussi à détecter une faille de sécurité mémoire dans la base de données SQLite. Cette faille est un débordement de tampon de pile exploitable qui a permis de corriger le code avant sa publication officielle. Big Sleep est le fruit d'une collaboration entre Google Project Zero et DeepMind, et est considéré comme une version améliorée du Project Naptime initial.
SQLite, étant un moteur de base de données open source, cette faille pourrait permettre à un attaquant, via une base de données malveillante ou une injection SQL, de provoquer le crash de SQLite ou même d'exécuter du code arbitraire. Plus précisément, le problème provient d'une valeur magique -1 utilisée par inadvertance comme index de tableau. Bien que le code contienne une instruction assert() pour détecter ce problème, cette vérification de niveau débogage est supprimée dans la version de production.
Google souligne que l'exploitation de cette faille n'est pas simple. Cependant, plus important encore, c'est la première fois qu'une IA découvre une faille connue dans un logiciel réel. Selon Google, les méthodes traditionnelles de fuzzing n'ont pas réussi à trouver ce problème, mais Big Sleep l'a fait. Après avoir analysé une série de soumissions du code source du projet, Big Sleep a identifié cette faille début octobre et elle a été corrigée le même jour.
Dans un communiqué du 1er novembre, Google a déclaré que ces résultats de recherche présentaient un potentiel énorme en matière de défense. Bien que le fuzzing ait déjà montré des résultats significatifs, l'équipe Google estime qu'une nouvelle méthode est nécessaire pour aider les développeurs à détecter les failles difficiles à trouver par le fuzzing, et elle est pleine d'espoir quant aux capacités de l'IA dans ce domaine.
Auparavant, la société Protect AI, basée à Seattle, avait également lancé un outil open source appelé Vulnhuntr, qui prétend pouvoir utiliser le modèle d'IA Claude d'Anthropic pour détecter des failles zero-day dans les bibliothèques de code Python. Cependant, l'équipe Google souligne que ces deux outils ont des objectifs différents : Big Sleep détecte les failles liées à la sécurité mémoire.
Actuellement, Big Sleep est encore au stade de la recherche, et a principalement été testé sur de petits programmes contenant des failles connues. Il s'agit de sa première expérience en environnement réel. Pour effectuer les tests, l'équipe de recherche a collecté plusieurs soumissions récentes du code source de SQLite, et après analyse, a ajusté les invites du modèle, ce qui a finalement permis de trouver cette faille.
Malgré cette réussite, l'équipe Google rappelle que ces résultats sont encore hautement expérimentaux, et que les tests de fuzzing ciblés actuels peuvent être tout aussi efficaces pour la détection de failles.
Points clés :
🔍 ** Le modèle d'IA Big Sleep de Google a détecté pour la première fois une faille de sécurité mémoire dans SQLite. **
🛠️ ** Cette faille a été corrigée avant la publication officielle, marquant une nouvelle avancée de l'IA dans la détection de failles. **
📊 ** Malgré les résultats obtenus, Google souligne que les résultats actuels sont encore expérimentaux, et que le fuzzing reste efficace. **