Cibersegurança

Uma IA de US$ 1.000 achou 21 falhas zero-day no FFmpeg

Adrian Kessler

Um agente de IA autônomo leu cerca de 1,5 milhão de linhas do código em C do FFmpeg e voltou com 21 vulnerabilidades zero-day funcionais, cada uma acompanhada de uma entrada reproduzível que a dispara. O FFmpeg é o motor que decodifica vídeo e áudio dentro de navegadores, players, celulares e smart TVs, então uma brecha ali é uma brecha em quase todo lugar.

Para quem já abriu um link de vídeo, é justamente esse o detalhe que importa. O FFmpeg quase nunca aparece na tela, mas roda por baixo do VLC, do Chrome, de inúmeros apps Android e dos servidores que processam os envios nas maiores plataformas. Um erro em um de seus analisadores pode, em princípio, ser alcançado por um único arquivo malicioso: um clipe, uma transmissão, uma faixa de legendas montada para travar o programa ou executar código no aparelho que está decodificando.

O agente vem da DepthFirst AI, uma startup de segurança que construiu um sistema para caçar falhas de memória sem que um humano leia o código antes. Segundo a empresa, a varredura completa custou cerca de US$ 1.000, um número que ela apresenta de propósito como 10 por cento do que a Anthropic gastou quando seu modelo Claude Mythos vasculhou softwares importantes em busca de vulnerabilidades no começo deste ano. A verdadeira notícia está embaixo da etiqueta de preço. Encontrar falhas reais e exploráveis em infraestrutura crítica está ficando barato o bastante para fazer quase por capricho.

Os 21 achados são, em sua maioria, as feridas clássicas do código C antigo: estouros de buffer na pilha e no heap, estouros e subtrações de inteiros. Eles ficam nas partes do FFmpeg que recebem dados não confiáveis, entre elas o demuxer MPEG-TS, o decodificador VP9, vários depacketizers RTP, o redimensionador swscale e os demuxers DASH e AVI. São exatamente os componentes que tocam um arquivo ou um fluxo de rede antes de qualquer outra coisa.

Uma das falhas estava no código desde 2003. Um estouro de pilha ligado a uma tabela de descrição de serviços, agora registrado como CVE-2026-39214, passou despercebido por 23 anos apesar de inúmeras revisões e auditorias. A primeira leva de identificadores da DepthFirst vai de CVE-2026-39210 a CVE-2026-39218, e os demais problemas já estão corrigidos, mas ainda sem numeração. Que uma máquina tenha trazido à tona em dias o que duas décadas de olhos humanos deixaram passar é a manchete incômoda para a profissão de segurança.

A colheita no FFmpeg chegou na mesma semana em que o Google lançou o Chrome 149, que corrigiu um recorde de 429 vulnerabilidades em uma única versão. Mais de 100 foram classificadas como críticas ou altas, em sua maioria erros de uso após liberação de memória e casos em que o navegador confiou em dados que deveria ter verificado. A pior, CVE-2026-10881, é uma leitura e escrita fora dos limites na camada gráfica ANGLE do Chrome, com nota de gravidade 9,6 de 10. Uma página montada poderia usá-la para escapar do ambiente isolado do navegador e executar código na máquina, e o Google pagou US$ 97.000 ao pesquisador que a reportou.

Dois números, 21 e 429, contam a mesma história por pontas opostas. A pesquisa de vulnerabilidades está se industrializando. Não importa se quem encontra as falhas é um agente de IA ou um programa de recompensas bem financiado: o volume de erros descobertos sobe muito mais rápido do que o número de pessoas disponíveis para corrigi-los.

Esse volume também é onde a empolgação esbarra na realidade. A caça a bugs com IA tem um problema de falsos positivos, porque um modelo pode descrever com total confiança uma vulnerabilidade que não existe, ou uma que nenhum atacante conseguiria acionar. Quando a Anthropic anunciou que o Claude Mythos havia encontrado milhares de zero-days nos principais sistemas operacionais e navegadores, críticos apontaram que o número de manchete se apoiava em um conjunto bem menor de casos revisados à mão, e leram o anúncio tanto como argumento de venda quanto como resultado de pesquisa. A DepthFirst diz que seu agente foi feito para evitar exatamente isso, com travas que o impedem de inventar as condições de que uma falha precisa e a exigência de que cada achado chegue com uma entrada que prove alcançar o problema. A prova de conceito reproduzível é o que separa um relatório real do ruído.

Ainda assim, mesmo as falhas verificadas criam um problema. O FFmpeg é mantido em grande parte por voluntários, e uma enxurrada repentina de relatórios gerados por máquina, por mais precisos que sejam, desloca o gargalo de encontrar as falhas para triá-las e corrigi-las. O custo de descobrir despenca enquanto o custo da resposta humana, não. Uma ferramenta capaz de produzir 21 bugs válidos por US$ 1.000 também pode produzi-los mais rápido do que uma equipe pequena consegue absorver com responsabilidade.

Por ora, as falhas do FFmpeg estão corrigidas no código-fonte do projeto, com os números CVE restantes ainda a serem atribuídos, e o Chrome 149 está sendo distribuído aos usuários de forma automática nos próximos dias. A DepthFirst deu a entender que o FFmpeg foi uma demonstração, não um ponto final, e que outras bibliotecas de código aberto muito usadas são as próximas da fila para o mesmo tratamento. Da próxima vez que um agente de IA ler um milhão de linhas de código que roda em silêncio em bilhões de dispositivos, a única pergunta real será com que rapidez os humanos do outro lado vão conseguir acompanhar.

Tags:

Discussão

Há 0 comentários.