OSS-Fuzz de Google, una herramienta de prueba difusa basada en la inteligencia artificial, ha logrado resultados significativos en el futuro cercano, y descubrió con éxito las vulnerabilidades de 26 bibliotecas de código de código abierto, incluida una vulnerabilidad de gravedad media en la biblioteca de cifrado OpenSSL que ha estado en el Pasados 20 años. Este avance indica que las pruebas de vulnerabilidad automatizadas han entrado en un nuevo hito. Este artículo presentará el último descubrimiento de OSS-Fuzz, el papel de la tecnología de IA en TI y las medidas tomadas por Google para mejorar la seguridad del código.
Recientemente, Google anunció que había descubierto con éxito las vulnerabilidades en 26 bibliotecas de código de código abierto basadas en herramientas de prueba difusas basadas en inteligencia artificial, incluida una vulnerabilidad de gravedad media en la biblioteca de cifrado OpenSSL.
El equipo de seguridad de código abierto de Google declaró en una publicación de blog compartida: "El descubrimiento de estas vulnerabilidades marca el nuevo hito de la prueba de vulnerabilidad de automatización: cada vulnerabilidad se encuentra con el objetivo de prueba difuso generado y mejorado por la IA".
Observaciones de la fuente de imágenes: AI generan imágenes, proveedor de servicios de autorización de imágenes MidJourney
La vulnerabilidad de OpenSSL descubierta esta vez es CVE-2024-9143 (la puntuación CVSS es 4.3), que se manifiesta como un error de escritura de memoria transfronteriza, que puede hacer que la aplicación colapse o la ejecución de código remoto. Este problema se ha solucionado en múltiples versiones de OpenSSL, incluyendo 3.3.3, 3.2.4, 3.1.8, 3.0.16, 1.1ZB y 1.0.2Zl. Google señaló que esta vulnerabilidad puede haber estado en la biblioteca de códigos durante casi 20 años, y no se puede encontrar el problema de los objetivos de prueba difusos escritos por humanos tradicionales.
Google también mencionó que con el objetivo de prueba difuso generado por AI, la cobertura de código de 272 proyectos C/C ++ se ha mejorado para aumentar el nuevo código de más de 370,000 líneas. Google explicó que se ignoraron muchos errores porque la tasa de cobertura del código no era equivalente a la función y no había lagunas. El indicador de la cobertura de código por sí sola no mide las posibles rutas de código y el estado del código, porque diferentes signos y configuraciones pueden desencadenar diferentes comportamientos, exponiendo así diferentes lagunas.
Esta vulnerabilidad asistida por IA encontró que también se benefició del rendimiento sobresaliente del modelo de lenguaje grande (LLMS) para simular las pruebas difusas del desarrollador, lo que mejoró aún más el grado de automatización. Además, Google también reveló a principios de este mes que su marco basado en LLM Big Sleep ayudó a detectar una vulnerabilidad cero en el motor de la base de datos de código abierto SQLite.
Para mejorar la seguridad de su propia biblioteca de código, Google está presionando para migrar el código a los idiomas de seguridad de la memoria, como el óxido, y reparar los proyectos C ++ existentes para reparar la vulnerabilidad de seguridad de la memoria espacial. Esto incluye la migración a tampones seguros y se agrega endurecimiento de LibC ++ a través de la estructura de datos estándar de C ++ para eliminar un tipo de lagunas de seguridad espacial importantes. Google dijo que la pérdida de rendimiento causada por estas mejoras fue muy pequeña, con un promedio de solo 0.30%.
Google ha enfatizado aún más que el reciente endurecimiento LibC ++ agregado por los contribuyentes de código abierto introdujo una serie de inspecciones de seguridad, cuyo objetivo es capturar vulnerabilidades, como las visitas a fondo en el entorno de producción. Aunque el lenguaje C ++ no puede lograr completamente la seguridad de la memoria, estas mejoras sin duda reducirán el riesgo y hará que el software sea más confiable y seguro.
Agujas:
La herramienta OSS-Fuzz de Google descubrió vulnerabilidades en 26 proyectos de código abierto, incluida una vulnerabilidad de OpenSSL que tiene casi 20 años.
El objetivo de prueba difuso generado por AI ha aumentado la cobertura de código de 272 proyectos C/C ++, un aumento de más de 370,000 líneas de nuevo código.
Google está migrando código al lenguaje de seguridad de la memoria y mejorando la seguridad de los proyectos de C ++ a través del endurecimiento de LibC ++ y otras medidas.
En general, Google utiliza la tecnología AI para mejorar las capacidades de detección de seguridad de software, y su experiencia proporciona referencias valiosas para otras instituciones. En el futuro, la IA desempeñará un papel cada vez más importante en el campo de la seguridad del software para ayudar a los desarrolladores a construir un sistema de software más seguro y confiable.