Ciberseguridad

Una IA de mil dólares encontró 21 fallas de día cero en FFmpeg

Adrian Kessler

Un agente de IA autónomo leyó cerca de 1,5 millones de líneas del código en C de FFmpeg y volvió con 21 vulnerabilidades de día cero, cada una con una entrada reproducible que la activa. FFmpeg es el motor que decodifica video y audio dentro de navegadores, reproductores, celulares y smart TV, así que una falla ahí es una falla en casi todos lados.

Para cualquiera que alguna vez abrió un enlace de video, ese es el dato que importa. FFmpeg casi nunca se ve en pantalla, pero trabaja por debajo de VLC, Chrome, un montón de apps de Android y los servidores que procesan las subidas en las plataformas más grandes. Un error en uno de sus analizadores se puede alcanzar, en principio, con un solo archivo malicioso: un clip, una transmisión o una pista de subtítulos armada para tumbar el programa o ejecutar código en el aparato que lo decodifica.

El agente viene de DepthFirst AI, una empresa de seguridad que armó un sistema para cazar fallas de memoria sin que un humano lea antes el código. Según la compañía, la corrida completa costó alrededor de mil dólares, una cifra que presenta a propósito como el 10 por ciento de lo que Anthropic gastó cuando su modelo Claude Mythos rastreó software importante en busca de vulnerabilidades a comienzos de este año. La afirmación que se esconde bajo el precio es la verdadera noticia. Encontrar fallas reales y explotables en infraestructura crítica se está volviendo tan barato que casi se puede hacer por capricho.

Los 21 hallazgos son en su mayoría las heridas clásicas del código C viejo: desbordamientos de búfer en la pila y en el montón, desbordamientos de enteros por exceso y por defecto. Se concentran en las partes de FFmpeg que reciben datos no confiables, entre ellas el demultiplexor MPEG-TS, el decodificador VP9, varios depaquetizadores RTP, el escalador swscale y los demultiplexores DASH y AVI. Son justo los componentes que tocan un archivo o un flujo de red antes que cualquier otra cosa.

Una de las fallas llevaba en el código desde 2003. Un desbordamiento de pila ligado a una tabla de descripción de servicios, ahora registrado como CVE-2026-39214, pasó inadvertido durante 23 años pese a innumerables revisiones y auditorías. La primera tanda de identificadores de DepthFirst va del CVE-2026-39210 al CVE-2026-39218, y el resto de los problemas ya quedó corregido aunque todavía sin numerar. Que una máquina destapara en días lo que dos décadas de ojos humanos no vieron es el titular incómodo para la profesión de la seguridad.

El botín de FFmpeg llegó la misma semana en que Google lanzó Chrome 149, que corrigió un récord de 429 vulnerabilidades en una sola versión. Más de 100 quedaron calificadas como críticas o altas, en su mayoría errores de uso después de liberar memoria y casos en que el navegador confió en datos que debió revisar. El peor, CVE-2026-10881, es una lectura y escritura fuera de límites en la capa gráfica ANGLE de Chrome, con un puntaje de gravedad de 9,6 sobre 10. Una página web armada podría usarlo para escapar del entorno aislado del navegador y ejecutar código en la máquina, y Google le pagó 97.000 dólares al investigador que lo reportó.

Dos números, 21 y 429, cuentan la misma historia desde extremos opuestos. La investigación de vulnerabilidades se está industrializando. No importa si quien encuentra las fallas es un agente de IA o un programa de recompensas con buen presupuesto: el volumen de errores descubiertos sube mucho más rápido que la cantidad de personas disponibles para arreglarlos.

Ese volumen es también donde la euforia choca con la realidad. La caza de fallas con IA tiene un problema de falsos positivos, porque un modelo puede describir con total seguridad una vulnerabilidad que no existe, o una que ningún atacante podría activar. Cuando Anthropic anunció que Claude Mythos había encontrado miles de días cero en los principales sistemas operativos y navegadores, varios críticos señalaron que la cifra de titular se apoyaba en un conjunto mucho menor de casos revisados a mano, y leyeron el anuncio tanto como argumento de venta como resultado de investigación. DepthFirst sostiene que su agente está hecho para evitar justamente eso, con barreras que le impiden inventar las condiciones que una falla necesita y la exigencia de que cada hallazgo llegue con una entrada que pruebe que alcanza el problema. La prueba de concepto reproducible es lo que separa un reporte real del ruido.

Aun así, incluso las fallas verificadas generan un problema. FFmpeg se mantiene en gran parte gracias a voluntarios, y una avalancha repentina de reportes generados por máquinas, por más precisos que sean, mueve el cuello de botella de encontrar las fallas a clasificarlas y parcharlas. El costo de descubrir se desploma mientras el costo de la respuesta humana no. Una herramienta capaz de producir 21 errores válidos por mil dólares también puede producirlos más rápido de lo que un equipo chico puede asumir con responsabilidad.

Por ahora las fallas de FFmpeg están corregidas en el código del proyecto, con los números CVE todavía pendientes de asignar, y Chrome 149 se está distribuyendo a los usuarios de forma automática durante los próximos días. DepthFirst dejó entrever que FFmpeg fue una demostración y no un final, y que otras bibliotecas de código abierto muy usadas son las siguientes en la lista para el mismo tratamiento. La próxima vez que un agente de IA lea un millón de líneas de código que funciona en silencio en miles de millones de dispositivos, la única pregunta real será con qué velocidad pueden seguirle el paso los humanos del otro lado.

Etiquetas:

Discussion

There are 0 comments.