Actualidad
Google
Vulnerabilidades

Google ofrece acceso gratuito al marco de ‘fuzzing’

La herramienta OSS-Fuzz, impulsada por inteligencia artificial, puede ayudar a encontrar vulnerabilidades y combinarse con un canal de autoparcheo.

lupa, análisis
Créditos: Agence Olloweb (Unsplash).

Fuzzing puede ser una herramienta valiosa para descubrir vulnerabilidades de día cero en el software. Con la esperanza de fomentar su uso por parte de desarrolladores e investigadores, Google anunció el miércoles que ahora ofrece acceso gratuito a su marco de fuzzingOSS-Fuzz.

Según Google, se pueden obtener mejoras de seguridad tangibles utilizando el marco para automatizar los aspectos manuales de las pruebas fuzz con la ayuda de grandes modelos de lenguaje (LLM). "Usamos LLM para escribir código específico del proyecto para aumentar la cobertura de fuzzing y encontrar más vulnerabilidades", escribieron en un blog de la empresa los miembros del equipo de seguridad de código abierto de Google, Dongge Liu y Oliver Chang, y los miembros del equipo de seguridad de lenguaje de máquina, Jan Nowakowski y Jan Keller.

Hasta ahora, OSS-Fuzz y su cobertura ampliada de fuzzing ofrecida por mejoras generadas por LLM han permitido a Google descubrir dos nuevas vulnerabilidades en cJSON y libplist, a pesar de que ambos proyectos ampliamente utilizados ya habían sido fuzzed durante años, señalaron. Sin el código completamente generado por LLM, estas dos vulnerabilidades podrían haber permanecido sin descubrir y sin corregir indefinidamente, agregaron.

 

'Fuzzing' es una prueba automatizada

"Fuzzing existe desde hace décadas y está ganando popularidad gracias a su éxito en la búsqueda de vulnerabilidades de día cero o previamente desconocidas", afirma John McShane, director senior de productos de seguridad de Synopsys Software Integrity Group, un proveedor de una plataforma de seguridad optimizada para DevSecOps. "La infame vulnerabilidad Heartbleed fue descubierta por ingenieros de seguridad que utilizaban Defensics, un producto comercial de fuzzing".

El fuzzing puede atrapar muchos “frutos maduros”, pero también puede exponer algunos elementos de alto impacto, como desbordamientos de buffer, agrega Gisela Hinojosa, jefa de servicios de ciberseguridad en Cobalt Labs, una empresa de pruebas de penetración. "Dado que la fuzzing es una prueba automatizada, no necesita una niñera", afirma. “Simplemente hará lo suyo y realmente no tienes que preocuparte por eso. Es una manera relativamente fácil de encontrar vulnerabilidades”.

 

El ‘fuzzing’ no sustituye a las tácticas de seguridad por diseño

Sin embargo, Shane Miller, asesor de la Fundación Rust y miembro principal del Atlantic Council, un grupo de expertos en economía y asuntos internacionales, con sede en Washington, DC, advierte: "Las inversiones en herramientas de prueba dinámicas como la fuzzing no son un sustituto de la seguridad". Son tácticas predeterminadas, como elegir lenguajes de programación seguros para la memoria, pero son una herramienta poderosa para mejorar la seguridad del software”.

"Fuzzing amplía el alcance de las pruebas al explorar el comportamiento del software con entradas inesperadas que pueden revelar vulnerabilidades, como las explotadas en recientes ataques cibernéticos patrocinados por el estado contra plantas de tratamiento de agua, redes eléctricas, oleoductos y gas natural y centros de transporte de EE. UU.", añade Miller.

Si bien la fuzzing puede ser beneficiosa para los desarrolladores, sus aspectos manuales han impedido que los mantenedores de código abierto difumen sus proyectos de manera efectiva, un problema que Google espera abordar ofreciendo acceso gratuito a su marco de fuzzing. "Dado que los mantenedores de código abierto son a menudo voluntarios que tienen fondos limitados o nulos, no siempre es factible tomarse el tiempo y pagar el coste de ejecutar herramientas que consumen muchos recursos", dice Michael J. Mehlberg, director ejecutivo de Dark Sky Technology, una empresa de seguridad de la cadena de suministro de software

"Incluso si lo es", continúa Mehlberg, "las herramientas de fuzzing pueden complicar un entorno de construcción que de otro modo sería simple, pueden producir una gran cantidad de falsos positivos que generan trabajo de revisión y análisis para un equipo ya sobrecargado, y pueden producir acciones que no se pueden tomar debido a habilidades o experiencia inadecuadas en ciberseguridad”.

 

Seguridad, no automatización, la parte más importante de la aplicación de parches

Google también ofrece orientación a desarrolladores e investigadores sobre el uso de LLM para crear un proceso de parcheo automático. "Este enfoque de parcheo basado en IA resolvió el 15% de los errores específicos, lo que generó un importante ahorro de tiempo para los ingenieros", escribieron los miembros del equipo de seguridad de Google en su blog.

Si bien usar LLM para automatizar la aplicación de parches es una idea interesante, Hinojosa señala que el desafío será que el LLM tenga todo el conocimiento contextual que necesita para parchar de manera efectiva sin romper cosas. "Creo que sería una buena idea que el sistema automatizado sugiriera una solución, pero que un humano la revisara manualmente antes de implementarla".

"En general, la parte más importante de la aplicación de parches no es la automatización sino la seguridad", añade Dave (Jing) Tian, ??profesor asistente de informática en la Universidad Purdue. "Resulta que no es trivial demostrar que un parche hace exactamente lo que debería hacer, ni más ni menos", afirma. “Así que, por ahora, sólo se puede inyectar automáticamente un número limitado de parches. Esos parches son simples, como cambiar un entero de 32 bits a un entero de 64 bits para una variable. Para parches más complejos, aún necesitamos y debemos pedir a expertos en el dominio que los revisen después de que la IA inyecte el parche”.



TE PUEDE INTERESAR...

Webinars

Accede a la cobertura de nuestros encuentros
 
Lee aquí nuestra revista digital de canal

DealerWorld Digital

 

Forma parte de nuestra comunidad
 
¿Interesado en nuestros foros? 

 

Whitepaper