Cybersécurité

Une IA à 1 000 dollars a trouvé 21 failles zero-day dans FFmpeg

Adrian Kessler

Un agent d’IA autonome a lu environ 1,5 million de lignes du code source C de FFmpeg et en est revenu avec 21 failles zero-day fonctionnelles, chacune accompagnée d’une entrée reproductible qui la déclenche. FFmpeg est le moteur qui décode la vidéo et l’audio dans les navigateurs, les lecteurs multimédias, les téléphones et les téléviseurs connectés. Un trou à cet endroit est donc un trou presque partout.

Pour quiconque a déjà ouvert un lien vidéo, c’est précisément ce qui compte. FFmpeg n’apparaît presque jamais à l’écran, mais il tourne sous VLC, Chrome, d’innombrables applis Android et les serveurs qui traitent les envois sur les plus grandes plateformes. Un bug dans l’un de ses analyseurs peut, en principe, être atteint par un seul fichier malveillant : un clip, un flux, une piste de sous-titres conçue pour faire planter le programme ou exécuter du code sur l’appareil qui décode.

L’agent vient de DepthFirst AI, une jeune entreprise de sécurité qui a bâti un système pour traquer les failles mémoire sans qu’un humain lise d’abord le code. Selon la société, la campagne complète a coûté environ 1 000 dollars, un chiffre qu’elle présente délibérément comme 10 pour cent de ce qu’Anthropic a dépensé quand son modèle Claude Mythos a ratissé des logiciels majeurs en quête de failles plus tôt cette année. La vraie information est sous l’étiquette de prix. Trouver des bugs réels et exploitables dans une infrastructure critique devient assez bon marché pour le faire presque sur un coup de tête.

Les 21 découvertes sont surtout les blessures classiques du vieux code C : débordements de tampon sur le tas et sur la pile, dépassements et sous-dépassements d’entiers. Elles se logent dans les parties de FFmpeg qui ingèrent des données non fiables, dont le démultiplexeur MPEG-TS, le décodeur VP9, plusieurs dépaquetiseurs RTP, le redimensionneur swscale et les démultiplexeurs DASH et AVI. Ce sont exactement les composants qui touchent un fichier ou un flux réseau avant tout le reste.

L’une des failles dormait dans le code depuis 2003. Un débordement de pile lié à une table de description de services, désormais suivi sous CVE-2026-39214, est passé inaperçu pendant 23 ans malgré d’innombrables relectures et audits. La première série d’identifiants de DepthFirst va de CVE-2026-39210 à CVE-2026-39218, les autres problèmes étant corrigés mais pas encore numérotés. Qu’une machine ait exhumé en quelques jours ce que deux décennies d’yeux humains avaient manqué, voilà le titre embarrassant pour le métier de la sécurité.

La moisson FFmpeg est tombée la semaine même où Google a livré Chrome 149, qui a corrigé un record de 429 failles dans une seule version. Plus de 100 ont été jugées critiques ou élevées, surtout des erreurs d’usage après libération mémoire et des cas où le navigateur a fait confiance à des données qu’il aurait dû vérifier. La pire, CVE-2026-10881, est une lecture et écriture hors limites dans la couche graphique ANGLE de Chrome, avec une note de gravité de 9,6 sur 10. Une page web piégée pourrait s’en servir pour s’évader du bac à sable du navigateur et exécuter du code sur la machine, et Google a versé 97 000 dollars au chercheur qui l’a signalée.

Deux chiffres, 21 et 429, racontent la même histoire par les deux bouts. La recherche de failles s’industrialise. Que celui qui trouve soit un agent d’IA ou un programme de primes bien financé, le volume de bugs découverts grimpe bien plus vite que le nombre de personnes disponibles pour les corriger.

Ce volume est aussi l’endroit où la hype rencontre la réalité. La chasse aux bugs par IA souffre d’un problème de faux positifs, car un modèle peut décrire avec aplomb une faille qui n’existe pas, ou une que nul attaquant ne pourrait jamais déclencher. Quand Anthropic a annoncé que Claude Mythos avait trouvé des milliers de zero-days à travers les grands systèmes d’exploitation et navigateurs, des critiques ont noté que le chiffre du titre reposait sur un ensemble bien plus restreint de cas revus à la main, et ont lu l’annonce autant comme un argumentaire commercial que comme un résultat de recherche. DepthFirst affirme que son agent est conçu pour éviter justement cela, avec des garde-fous qui l’empêchent d’inventer les conditions dont un bug a besoin et l’obligation que chaque découverte arrive avec une entrée prouvant qu’elle atteint la faille. La preuve de concept reproductible est ce qui sépare un vrai rapport du bruit.

Pourtant, même les bugs vérifiés posent un problème. FFmpeg est entretenu en grande partie par des bénévoles, et un déluge soudain de rapports générés par des machines, aussi exacts soient-ils, déplace le goulet d’étranglement de la découverte des failles vers leur tri et leur correction. Le coût de la découverte s’effondre quand celui de la réponse humaine, non. Un outil capable de produire 21 bugs valides pour 1 000 dollars peut aussi les produire plus vite qu’une petite équipe ne peut raisonnablement les absorber.

Pour l’instant, les failles de FFmpeg sont corrigées dans le code source du projet, les numéros CVE restants étant encore en cours d’attribution, et Chrome 149 se déploie automatiquement vers les utilisateurs au fil des prochains jours. DepthFirst a laissé entendre que FFmpeg était une démonstration et non un aboutissement, et que d’autres bibliothèques open source très utilisées sont les prochaines sur la liste pour le même traitement. La prochaine fois qu’un agent d’IA lira un million de lignes de code qui tourne en silence sur des milliards d’appareils, la seule vraie question sera la vitesse à laquelle les humains, en face, pourront suivre.

Étiquettes:

Discussion

Il y a 0 commentaire.