← Últimos artículos
🤖 machine learning

FuzzingBrain-Bench V1: Evaluating Open-Ended Bug Discovery by LLMs

Este artículo presenta FuzzingBrain-Bench, un nuevo benchmark diseñado para evaluar las capacidades de descubrimiento de errores de código abierto de los modelos de lenguaje de gran tamaño mediante la medición de su habilidad para generar entradas que activen fallos distintos en entornos instrumentados con sanitizers a través de 77 desafíos de 43 proyectos de código abierto.

Autores originales: Ze Sheng, Aleksandar Kezic, Zhicheng Chen, Jeff Huang

Publicado 2026-08-27
📖 6 min de lectura🧠 Análisis profundo

Autores originales: Ze Sheng, Aleksandar Kezic, Zhicheng Chen, Jeff Huang

Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo

En el vasto e invisible paisaje del software que hace funcionar nuestro mundo moderno, las fallas ocultas son una realidad constante. Estas fallas, conocidas como vulnerabilidades, son como pequeñas grietas en una presa; si se dejan sin parchear, pueden permitir que los atacantes irrumpan en los sistemas, roben datos o detengan servicios críticos. Durante décadas, encontrar estas grietas ha sido un proceso manual y laborioso donde expertos humanos inspeccionan meticulosamente el código, buscando patrones que sugieran una debilidad. Sin embargo, a medida que el volumen de software crece, el número de fallas reportadas ha alcanzado máximos históricos, sobrepasando la capacidad humana para mantenerse al día. Esto ha llevado a los investigadores a plantearse una nueva pregunta: ¿puede la inteligencia artificial, específicamente los modelos de lenguaje extensos que pueden escribir y comprender código, ser entrenada para encontrar estos errores de forma más rápida y efectiva que antes? El desafío no es solo detectar una falla en el papel, sino demostrar que existe creando una entrada específica que obligue al software a fallar, un proceso que requiere una comprensión profunda de cómo se comporta el código bajo estrés.

Un equipo de investigadores de la Universidad Texas A&M ha dado un paso significativo hacia la respuesta de esta pregunta mediante la creación de un nuevo campo de pruebas llamado FuzzingBrain-Bench. A diferencia de las pruebas anteriores que pedían a los modelos de inteligencia artificial simplemente identificar una debilidad conocida o reproducir un error específico y preanunciado, este nuevo benchmark pide a los modelos que actúen como exploradores independientes. Los investigadores proporcionaron a los modelos el código fuente de proyectos de software de código abierto reales que se sabía que contenían errores, junto con una herramienta de prueba especializada llamada "harness" (arnés). Este harness es un entorno controlado diseñado para ejecutar el software y observar de cerca cualquier signo de falla. A los modelos no se les dijo dónde estaban los errores ni qué aspecto tenían. En su lugar, su tarea consistía en generar miles de entradas diferentes, introducirlas en el software y ver si podían provocar un fallo. Un fallo, en este contexto, es un momento en el que el software deja de funcionar inesperadamente, revelando a menudo una vulnerabilidad oculta. Los modelos no fueron recompensados por encontrar un error específico y preseleccionado, sino por descubrir la mayor cantidad posible de tipos distintos de fallas, independientemente de si esas fallas coincidían con los problemas originales conocidos.

El benchmark consistió en setenta y siete desafíos extraídos de cuarenta y tres proyectos de software diferentes, que iban desde librerías de procesamiento de imágenes y códecs de video hasta herramientas de bases de datos y servidores web. Estos proyectos fueron escritos en tres lenguajes de programación principales: C, C++ y Java. Para garantizar la imparcialidad y evitar que los modelos accedieran a información externa, cada desafío fue empaquetado en un contenedor seguro y aislado. Dentro de este contenedor, el modelo solo podía ver el código y la herramienta de prueba; no tenía acceso a internet, ni al historial de los informes de errores, ni información sobre cómo se reparó el software. El modelo tuvo que confiar enteramente en su propio razonamiento para diseñar entradas que rompieran el sistema. Los investigadores midieron el éxito contando cuántas formas únicas podían los modelos hacer que el software fallara. Utilizaron un sistema que agrupaba fallos similares, asegurando que se le acreditara al modelo el hallazgo de un nuevo tipo de error en lugar de simplemente repetir el mismo error una y otra vez.

Cuando los investigadores probaron tres versiones diferentes de un sistema de inteligencia artificial avanzado, los resultados revelaron tanto el potencial como los límites actuales de esta tecnología. La versión más capaz, conocida como Opus, logró provocar un fallo en sesenta de los setenta y siete desafíos, encontrando con éxito nuevas formas de romper el software en la mayoría de los casos. Una versión ligeramente menos potente, Sonnet, tuvo éxito en cincuenta desafíos, mientras que la versión más rápida y económica, Haiku, encontró fallos en treinta y cinco. Los investigadores asignaron una puntuación de dificultad a cada desafío basada en qué tan difícil era para los modelos encontrar un error. Los desafíos más difíciles, donde ningún modelo pudo encontrar un fallo, fueron aquellos que requerían un razonamiento más sofisticado. Incluso el modelo con mejor desempeño no logró encontrar un solo error en trece de los desafíos, lo que sugiere que, aunque estos modelos son herramientas poderosas, aún no son perfectos y todavía luchan con los tipos de defectos de software más complejos u oscuros.

El estudio también descubrió diferencias interesantes en cómo los modelos abordaron la tarea. El modelo más potente tendía a terminar su búsqueda antes que los otros, a menudo encontrando un error rápidamente y pasando a otra cosa, mientras que los otros modelos tendían a utilizar todo su tiempo permitido, realizando más pruebas antes de rendirse. Este comportamiento significó que el modelo más potente era a veces menos minucioso en los problemas más difíciles, a pesar de ser mejor resolviendo los más fáciles. Los investigadores observaron que el costo de ejecutar estas pruebas variaba significamente; el modelo más potente era más caro de ejecutar, especialmente en los desafíos difíciles donde pasaba más tiempo y generaba más datos. Sin embargo, los modelos menos costosos también eran menos efectivos al encontrar los errores más profundos. Los hallazgos sugieren que, si bien la inteligencia artificial se está convirtiendo en un socio viable en la caza de errores de software, aún no es un reemplazo para la experiencia humana. Los modelos son excelentes para encontrar fallas comunes o accesibles, pero todavía pasan por alto las más elusivas, lo que indica que el futuro de la seguridad del software probablemente implicará una colaboración entre expertos humanos y estos asistentes digitales cada vez más capaces.

En última instancia, este trabajo proporciona una forma clara y medible de juzgar qué tan bien puede la inteligencia artificial encontrar errores de software en el mundo real. Al alejarse de las pruebas simples que piden a los modelos que coincidan con una respuesta conocida, los investigadores crearon una simulación más realista de cómo trabajan realmente los expertos en seguridad. Los resultados muestran que los modelos actuales pueden descubrir una amplia variedad de fallas de software, pero aún no son capaces de encontrar cada defecto. A medida que el benchmark se amplíe para incluir más desafíos y más tipos de software, servirá como una herramienta vital para rastrear el progreso de la inteligencia artificial en la ciberseguridad. El objetivo no es solo construir modelos que puedan pasar una prueba, sino desarrollar sistemas que puedan proteger de manera confiable la infraestructura digital en la que todos dependemos, encontrando las grietas antes de que puedan ser explotadas por otros.

¿Ahogado en artículos de tu campo?

Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.

Probar Digest →