Favia: Agente Forense para la Identificación y Análisis de Correcciones de Vulnerabilidades
Favia: Forensic Agent for Vulnerability-fix Identification and Analysis
February 13, 2026
Autores: André Storhaug, Jiamou Sun, Jingyue Li
cs.AI
Resumen
La identificación de commits que corrigen vulnerabilidades correspondientes a CVEs divulgados es esencial para el mantenimiento seguro del software, pero sigue siendo un desafío a gran escala, ya que los repositorios grandes contienen millones de commits, de los cuales solo una pequeña fracción aborda problemas de seguridad. Los enfoques automatizados existentes, incluidas las técnicas tradicionales de aprendizaje automático y los métodos recientes basados en modelos de lenguaje grande (LLM), a menudo sufren de compensaciones deficientes entre precisión y exhaustividad. Frecuentemente evaluados en commits muestreados aleatoriamente, descubrimos que subestiman sustancialmente la dificultad del mundo real, donde los commits candidatos ya son relevantes para la seguridad y muy similares entre sí. Proponemos Favia, un marco forense basado en agentes para la identificación de correcciones de vulnerabilidades que combina la clasificación escalable de candidatos con un razonamiento semántico profundo e iterativo. Favia emplea primero una etapa eficiente de clasificación para reducir el espacio de búsqueda de commits. Luego, cada commit es evaluado rigurosamente utilizando un agente de LLM basado en ReAct. Al proporcionar al agente un repositorio pre-commit como entorno, junto con herramientas especializadas, el agente intenta localizar componentes vulnerables, navega la base de código y establece una alineación causal entre los cambios de código y las causas raíz de la vulnerabilidad. Este proceso basado en evidencias permite la identificación robusta de correcciones indirectas, multiarchivo y no triviales que eluden los métodos de pasada única o basados en similitud. Evaluamos Favia en CVEVC, un conjunto de datos a gran escala que creamos y que comprende más de 8 millones de commits de 3.708 repositorios del mundo real, y demostramos que supera consistentemente los baselines tradicionales y basados en LLM más avanzados bajo una selección realista de candidatos, logrando las compensaciones más sólidas entre precisión y exhaustividad y los puntajes F1 más altos.
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.