Logiciels

Buttercup : L’IA open source qui détecte et corrige les failles de sécurité 

Trail of Bits a récemment rendu open source Buttercup, un système d’intelligence artificielle conçu pour détecter et corriger automatiquement les vulnérabilités de sécurité dans les logiciels.

Développé dans le cadre du défi AI Cyber Challenge (AIxCC) organisé par la DARPA, Buttercup a obtenu la deuxième place lors de la finale à DEF CON 33 en août 2025, remportant un prix de 3 millions de dollars. Ce challenge, en collaboration avec ARPA-H, vise à accélérer l’utilisation de l’IA pour renforcer la cybersécurité face à l’augmentation des failles dans les codes open source.

buttercup figure

Buttercup intègre des techniques traditionnelles comme le fuzzing, qui teste le code avec des entrées aléatoires pour identifier des plantages, et l’analyse statique, combinées à sept agents IA spécialisés. Ces agents collaborent pour analyser le contexte d’une vulnérabilité, générer des patches et vérifier leur impact sans introduire de régressions. Le système utilise des outils comme Tree-sitter pour modéliser le programme et des modèles d’IA abordables, tels que ceux d’OpenAI ou Anthropic.

Lors de la compétition, Buttercup a identifié et corrigé 28 vulnérabilités couvrant 20 des 25 catégories CWE (Common Weakness Enumeration) les plus critiques selon MITRE, incluant des buffer overflowsinjections SQL et conditions de course. Son efficacité a été soulignée par un prix pour un patch de plus de 300 lignes fonctionnant sans faille, avec un taux de précision de 90 % et un coût moyen de 181 dollars par point. Ces résultats surpassent les attentes pour un outil utilisant des modèles IA non avancés en raisonnement.

Disponible sur GitHub, Buttercup est optimisé pour fonctionner sur des ordinateurs portables standards, nécessitant au minimum 8 cœurs CPU, 16 Go de RAM et 100 Go d’espace disque. L’installation se fait via des commandes simples comme « git clone » suivi de « make setup-local » et « make deploy-local ». 

Une interface web permet de monitorer les tâches, et un budget API peut être défini pour contrôler les coûts des services IA externes.

Le système supporte actuellement les langages C et Java, avec une compatibilité OSS-Fuzz pour une intégration facile dans les pipelines de développement existants. Des initiatives similaires, comme celles de Google pour détecter des vulnérabilités dans des projets open source ou le framework AutoPatchBench de Meta, soulignent une tendance vers l’automatisation, mais Buttercup se distingue par son approche complète et open source.

Allez faire un tour sur le GitHub de Buttercup — qui sait, peut-être qu’un jour on se demandera comment on faisait pour sécuriser notre code sans l’aide de l’IA.

Cet article a été modifié pour la dernière fois le 17 août 2025 14h24

Redaction