ChatPaper.aiChatPaper

Favia: Agente Forense para Identificação e Análise de Correções de Vulnerabilidades

Favia: Forensic Agent for Vulnerability-fix Identification and Analysis

February 13, 2026
Autores: André Storhaug, Jiamou Sun, Jingyue Li
cs.AI

Resumo

A identificação de commits que corrigem vulnerabilidades correspondentes a CVEs divulgados é essencial para a manutenção segura de software, mas permanece um desafio em escala, uma vez que grandes repositórios contêm milhões de commits, dos quais apenas uma pequena fração aborda problemas de segurança. As abordagens automatizadas existentes, incluindo técnicas tradicionais de aprendizado de máquina e métodos recentes baseados em modelos de linguagem grande (LLM), frequentemente sofrem com compensações inadequadas entre precisão e recall. Frequentemente avaliados em commits amostrados aleatoriamente, descobrimos que elas subestimam substancialmente a dificuldade do mundo real, onde os commits candidatos já são relevantes para segurança e altamente similares. Propomos o Favia, uma estrutura forense baseada em agentes para identificação de correções de vulnerabilidades que combina a classificação escalável de candidatos com raciocínio semântico profundo e iterativo. O Favia emprega primeiro um estágio eficiente de classificação para reduzir o espaço de busca de commits. Cada commit é então rigorosamente avaliado usando um agente de LLM baseado em ReAct. Ao fornecer ao agente um repositório pré-commit como ambiente, juntamente com ferramentas especializadas, o agente tenta localizar componentes vulneráveis, navega na base de código e estabelece um alinhamento causal entre as alterações de código e as causas raiz da vulnerabilidade. Este processo orientado por evidências permite a identificação robusta de correções indiretas, multiarquivo e não triviais que escapam a métodos de passagem única ou baseados em similaridade. Avaliamos o Favia no CVEVC, um conjunto de dados em larga escala que criamos e que compreende mais de 8 milhões de commits de 3.708 repositórios do mundo real, e mostramos que ele supera consistentemente os modelos de referência tradicionais e baseados em LLM mais avançados sob seleção realista de candidatos, alcançando as mais fortes compensações entre precisão e recall e os maiores escores F1.
English
Identifying vulnerability-fixing commits corresponding to disclosed CVEs is essential for secure software maintenance but remains challenging at scale, as large repositories contain millions of commits of which only a small fraction address security issues. Existing automated approaches, including traditional machine learning techniques and recent large language model (LLM)-based methods, often suffer from poor precision-recall trade-offs. Frequently evaluated on randomly sampled commits, we uncover that they are substantially underestimating real-world difficulty, where candidate commits are already security-relevant and highly similar. We propose Favia, a forensic, agent-based framework for vulnerability-fix identification that combines scalable candidate ranking with deep and iterative semantic reasoning. Favia first employs an efficient ranking stage to narrow the search space of commits. Each commit is then rigorously evaluated using a ReAct-based LLM agent. By providing the agent with a pre-commit repository as environment, along with specialized tools, the agent tries to localize vulnerable components, navigates the codebase, and establishes causal alignment between code changes and vulnerability root causes. This evidence-driven process enables robust identification of indirect, multi-file, and non-trivial fixes that elude single-pass or similarity-based methods. We evaluate Favia on CVEVC, a large-scale dataset we made that comprises over 8 million commits from 3,708 real-world repositories, and show that it consistently outperforms state-of-the-art traditional and LLM-based baselines under realistic candidate selection, achieving the strongest precision-recall trade-offs and highest F1-scores.
PDF22March 28, 2026