Los investigadores de seguridad y los atacantes están recurriendo a modelos de inteligencia artificial para detectar vulnerabilidades, una tecnología cuyo uso probablemente conducirá a un aumento en el número anual de fallas de software, pero que eventualmente podría conducir a una disminución en la cantidad de fallas en las versiones públicas, dicen los expertos.
El 1 de noviembre, Google dijo que su agente Big Sleep Large Language Model (LLM) había descubierto una vulnerabilidad de desbordamiento de búfer en el popular motor de base de datos SQLite. El experimento muestra tanto el peligro como la promesa de las herramientas de descubrimiento de vulnerabilidades basadas en IA: el agente de IA buscó en el código variaciones de una vulnerabilidad específica, pero identificó la falla del software a tiempo para que Google pueda hacerlo. notificar al proyecto SQLite y trabajar con ellos para resolver el problema.
El uso de IA únicamente para el descubrimiento de defectos de software podría conducir a un aumento en la divulgación de vulnerabilidades, pero la introducción de agentes LLM en el proceso de desarrollo podría revertir la tendencia y llevar a que menos vulnerabilidades de software escapen a la naturaleza, dice Tim Willis, director del Proyecto Cero de Google, el esfuerzo de la empresa por identificar vulnerabilidades de día cero.
“Aunque todavía estamos en una etapa temprana, creemos que las técnicas que desarrollemos a través de esta investigación se convertirán en una parte útil y general del conjunto de herramientas disponibles para los desarrolladores de software”, afirma.
Google no es el único que busca mejores formas de detectar y corregir vulnerabilidades. En agosto, un grupo de investigadores de Georgia Tech, Samsung Research y otras empresas (conocidos colectivamente como Team Atlanta) utilizaron un sistema de búsqueda de errores LLM para encontrar y corregir automáticamente un error en SQLite. Y el mes pasado, la empresa de ciberseguridad GreyNoise Intelligence reveló que había utilizó su sistema Sift AI para analizar los registros de honeypot lo que llevó al descubrimiento y solución de dos vulnerabilidades de día cero que afectan a las cámaras conectadas a Internet utilizadas en entornos sensibles.
En general, las empresas tienen cada vez más formas de automatizar el descubrimiento de vulnerabilidades y, si se toman en serio la seguridad, podrán reducir la cantidad de vulnerabilidades en sus productos utilizando las herramientas en desarrollo, dice Corey Bodzin, director de productos de GreyNoise. Inteligencia.
“Lo interesante es que tenemos tecnología que permite a las personas que [care about] “La seguridad es más eficaz”, afirma. “Desafortunadamente… no hay muchas empresas en las que sea… un factor principal, pero incluso en empresas en las que [security is] considerado puramente como un costo” puede beneficiarse del uso de estas herramientas.
Sólo los primeros pasos
Actualmente, el enfoque personalizado de Google todavía está hecho a medida y requiere trabajo para adaptarse a tareas específicas de escaneo de vulnerabilidades. El agente Big Sleep de la compañía no busca vulnerabilidades completamente nuevas, sino que utiliza los detalles de una vulnerabilidad descubierta previamente para buscar problemas similares. El proyecto ha analizado programas más pequeños con vulnerabilidades conocidas como casos de prueba, pero el experimento SQLite es la primera vez que descubren vulnerabilidades en el código de producción, dijeron los investigadores de Google Project Zero y Google DeepMind. indicado en la publicación del blog de Google que describe la búsqueda.
Aunque los fuzzers especializados probablemente habrían encontrado el error, ajustar estas herramientas para que funcionen correctamente es un proceso muy manual, dice Willis de Google.
“Una promesa de [L]”Los agentes LM se pueden generalizar a todas las aplicaciones sin necesidad de ajustes especializados”, afirma. “Además, esperamos que [L]Los agentes de LM podrán descubrir un subconjunto diferente de vulnerabilidades que las que normalmente se descubren mediante fuzzing. »
El uso de herramientas de descubrimiento de vulnerabilidades basadas en IA será una carrera entre atacantes y defensores. La revisión manual de código es una forma viable de encontrar errores para los atacantes, que solo necesitan una única vulnerabilidad explotable o una corta cadena de vulnerabilidades. Pero los defensores necesitan una forma escalable de encontrar y corregir aplicaciones, afirma Willis. Si bien las herramientas de búsqueda de errores pueden ser un multiplicador de fuerza tanto para los atacantes como para los defensores, la capacidad de analizar el código probablemente será un mayor beneficio para los defensores, afirma Willis.
“Esperamos que los avances en el descubrimiento, clasificación y corrección automatizados de vulnerabilidades beneficien desproporcionadamente a los defensores”, afirma.
Enfoque la IA en encontrar y corregir errores
Las empresas que se centran en utilizar la IA para generar código seguro y corregir errores cuando se encuentren entregarán código de mayor calidad a los desarrolladores, afirma Chris Wysopal, cofundador y evangelista jefe de seguridad de Veracode, una empresa de seguridad de aplicaciones. Sostiene que automatizar la búsqueda y corrección de errores son dos problemas completamente diferentes. Encontrar vulnerabilidades es un problema de datos muy grande, mientras que corregir errores normalmente requiere tal vez una docena de líneas de código.
“Una vez que sabes que el error está ahí (si lo encontraste mediante fuzzing, mediante un LLM o mediante revisión de código humano) y sabes qué tipo de error es, es relativamente fácil de corregir”, afirma. “Entonces, los LLM favorecen a los defensores porque es fácil acceder al código fuente y solucionar problemas. Así que soy bastante optimista en cuanto a que podemos eliminar clases enteras de vulnerabilidades, pero no encontrando más, sino siendo capaces de corregir más. “
Las empresas que requieren que los desarrolladores ejecuten herramientas de seguridad automatizadas antes de que se registre el código estarán en camino de pagar su deuda de seguridad: el conjunto de problemas que conocen pero que no tuvieron tiempo de resolver, dijo. Actualmente, aproximadamente la mitad (46%) de las organizaciones tienen deudas de seguridad en forma de vulnerabilidades críticas persistentes en las aplicaciones. según Veracode Estado de la seguridad del software en 2024 informe.
“La idea de que estás cometiendo código que tiene un problema y no se soluciona se convertirá en la excepción, no en la regla, como lo es hoy”, afirma Wysopal. “Una vez que puedas comenzar a automatizar esa solución, y siempre estamos mejorando en la automatización de la búsqueda, [vulnerabilities] — Creo que así cambian las cosas.
Sin embargo, la tecnología aún tendrá que superar el enfoque de las empresas en la eficiencia y la productividad por encima de la seguridad, dice Bob Rudis, vicepresidente de ciencia de datos e investigación de seguridad de GreyNoise Intelligence. Destaca la corrección de las dos vulnerabilidades de seguridad encontradas y divulgadas responsablemente por GreyNoise Intelligence. La empresa sólo solucionó los problemas en dos modelos de productos, pero no en los demás, a pesar de que los otros productos probablemente tenían problemas similares, afirma.
Google y GreyNoise Intelligence han demostrado que la tecnología funcionará, pero sigue siendo una cuestión abierta si las empresas integran la IA en los procesos de desarrollo para corregir errores.
Rudis tiene dudas.
“Estoy seguro de que un puñado de organizaciones lo implementarán; hará que siete archivos C sean un poco más seguros en un grupo de organizaciones, y tal vez obtengamos un poco más de seguridad para aquellos que realmente puedan implementarlo. “Pero, en última instancia, hasta que cambiemos la estructura de incentivos sobre cómo las empresas de software construyen e implementan cosas, y cómo los consumidores realmente compran, implementan y configuran. los elementos, no veremos ninguna ventaja”.
