GPT-4 de OpenAI puede explotar de forma autónoma el 87% de las vulnerabilidades de un día
El gran modelo de lenguaje GPT-4 de OpenAI puede explotar vulnerabilidades del mundo real sin intervención humana, un nuevo estudio descubierto por investigadores de la Universidad de Illinois Urbana-Champaign. Otros modelos de código abierto, incluidos GPT-3.5 y escáneres de vulnerabilidad, no son capaces de hacer esto.
Un gran agente de modelo de lenguaje (un sistema avanzado basado en un LLM que puede realizar acciones mediante herramientas, razonamiento, autorreflexión y más) que se ejecuta en GPT-4 explotó con éxito el 87% de las vulnerabilidades de «un día» cuando se le proporcionó su Instituto Nacional de Normas y Descripción de Tecnología. Las vulnerabilidades de un día son aquellas que se han divulgado públicamente pero aún no han sido parcheadas, por lo que todavía están abiertas a la explotación.
«A medida que los LLM se vuelven cada vez más poderosos, también lo hacen las capacidades de los agentes de LLM», escribieron los investigadores en la preimpresión de arXiv. También especularon que el fracaso comparativo de los otros modelos se debía al hecho de que eran «mucho peores en el uso de herramientas» que el GPT-4.
Los hallazgos muestran que GPT-4 tiene una «capacidad emergente» para detectar y explotar de forma autónoma vulnerabilidades antiguas que los escáneres podrían pasar por alto.
Daniel Kang, profesor asistente de la UIUC y autor del estudio, espera que los resultados de su investigación se utilicen en el entorno defensivo; sin embargo, es consciente de que esta capacidad podría representar un modo de ataque emergente para los ciberdelincuentes.
Le dijo a TechRepublic en un correo electrónico: “Sospecho que esto reduciría las barreras para explotar vulnerabilidades de un día cuando bajen los costos de LLM. Anteriormente, este era un proceso manual. Si los LLM se vuelven lo suficientemente baratos, este proceso probablemente se automatizará más”.
¿Qué éxito tiene GPT-4 en la detección y explotación autónoma de vulnerabilidades?
GPT-4 puede explotar de forma autónoma vulnerabilidades de hace un día
El agente GPT-4 pudo explotar de forma autónoma vulnerabilidades web y no web de un día, incluso aquellas que se publicaron en la base de datos de vulnerabilidades y exposiciones comunes después de la fecha límite de conocimiento del modelo del 26 de noviembre de 2023, lo que demuestra sus impresionantes capacidades.
«En nuestros experimentos anteriores, descubrimos que GPT-4 es excelente para planificar y seguir un plan, por lo que no nos sorprendió», dijo Kang a TechRepublic.
VER: Hoja de referencia de GPT-4: ¿Qué es GPT-4 y de qué es capaz?
El agente GPT-4 de Kang tenía acceso a Internet y, por lo tanto, a cualquier información disponible públicamente sobre cómo podría explotarse. Sin embargo, explicó que sin IA avanzada, la información no sería suficiente para dirigir a un agente a través de una exploración exitosa.
«Usamos 'autónomo' en el sentido de que GPT-4 es capaz de elaborar un plan para explotar una vulnerabilidad», dijo a TechRepublic. “Muchas vulnerabilidades del mundo real, como ACIDRain, que causó más de 50 millones de dólares en pérdidas en el mundo real, tienen información en línea. Sin embargo, explorarlos no es trivial y, para un ser humano, requiere ciertos conocimientos de informática”.
De las 15 vulnerabilidades de un día a las que estuvo expuesto el agente GPT-4, sólo dos no pudieron ser explotadas: Iris XSS y Hertzbeat RCE. Los autores especularon que esto se debía a que la aplicación web Iris es particularmente difícil de navegar y la descripción de Hertzbeat RCE está en chino, lo que puede ser más difícil de interpretar cuando el mensaje está en inglés.
GPT-4 no puede explotar de forma autónoma las vulnerabilidades de día cero
Aunque el agente GPT-4 tuvo una fenomenal tasa de éxito del 87% al acceder a descripciones de vulnerabilidades, el número se redujo a solo el 7% cuando esto no sucedió, lo que demuestra que actualmente no es capaz de explotar vulnerabilidades de «día cero». Los investigadores escribieron que este resultado demuestra cómo LLM es «mucho más capaz de explotar vulnerabilidades que de encontrarlas».
Es más barato utilizar GPT-4 para explotar vulnerabilidades que un hacker humano
Los investigadores determinaron que el costo promedio de un exploit GPT-4 exitoso era de $8,80 por vulnerabilidad, mientras que emplear un probador de penetración humano costaría alrededor de $25 por vulnerabilidad si tomara media hora.
Aunque el agente LLM ya es 2,8 veces más barato que la mano de obra humana, los investigadores esperan que los costos de funcionamiento asociados con GPT-4 disminuyan aún más, ya que GPT-3.5 se volvió tres veces más barato en solo un año. «Los agentes LLM también son trivialmente escalables, en contraste con el trabajo humano», escribieron los investigadores.
GPT-4 toma muchas acciones para explotar de forma autónoma una vulnerabilidad
Otros hallazgos incluyeron que una cantidad significativa de vulnerabilidades requería muchas acciones para explotar, algunas hasta 100. Sorprendentemente, el número promedio de acciones tomadas cuando el agente tenía acceso a las descripciones y cuando no difería solo marginalmente, y GPT-4 En verdad, tomó menos acciones en la última configuración de día cero.
Kang especuló a TechRepublic: «Creo que sin la descripción CVE, GPT-4 se rinde más fácilmente porque no sabe qué camino tomar».
¿Cómo se probaron las capacidades de explotación de vulnerabilidades de los LLM?
Los investigadores primero recopilaron un conjunto de datos de referencia de 15 vulnerabilidades de software del mundo real de un día de la base de datos CVE y artículos académicos. Estas vulnerabilidades reproducibles de código abierto consistían en vulnerabilidades de sitios web, vulnerabilidades de contenedores y paquetes de Python vulnerables, y más de la mitad se clasificaron como de gravedad «alta» o «crítica».
Luego desarrollaron un agente LLM basado en el marco de automatización ReAct, lo que significa que podría razonar sobre su siguiente acción, construir un comando de acción, ejecutarlo con la herramienta adecuada y repetirlo en un bucle interactivo. Los desarrolladores solo necesitaron escribir 91 líneas de código para crear su agente, lo que demuestra lo sencillo que es implementarlo.
El modelo de lenguaje base se podría cambiar entre GPT-4 y estos otros LLM de código abierto:
- GPT-3.5.
- OpenHermes-2.5-Mistral-7B.
- Chat Llama-2 (70B).
- Charla LLaMA-2 (13B).
- Charla LLaMA-2 (7B).
- Instrucción Mixtral-8x7B.
- Mistral (7B) Instrucción v0.2.
- Nous Hermes-2 Yi 34B.
- OpenChat 3.5.
El agente estaba equipado con las herramientas necesarias para explotar de forma autónoma las vulnerabilidades en los sistemas de destino, como elementos de navegación web, una terminal, resultados de búsqueda web, capacidades de creación y edición de archivos y un intérprete de código. También podría acceder a descripciones de vulnerabilidades de la base de datos CVE para emular la configuración de un día.
Luego, los investigadores proporcionaron a cada agente una advertencia detallada que los animó a ser creativos, persistentes y a explorar diferentes enfoques para explotar las 15 vulnerabilidades. Este mensaje constaba de 1.056 «tokens» o unidades individuales de texto, como palabras y signos de puntuación.
El rendimiento de cada agente se midió en función de la explotación exitosa de las vulnerabilidades, la complejidad de la vulnerabilidad y el costo en dólares del esfuerzo en función de la cantidad de tokens insertados y emitidos y los costos de la API de OpenAI.
VER: La tienda GPT de OpenAI ahora está abierta para los creadores de chatbots
El experimento también se repitió cuando al agente no se le dieron descripciones de las vulnerabilidades para emular una configuración de día cero más difícil. En este caso, el agente debe descubrir la vulnerabilidad y explotarla con éxito.
Junto con el agente, las mismas vulnerabilidades fueron alimentadas a los escáneres de vulnerabilidades ZAP y Metasploit, los cuales son comúnmente utilizados por los probadores de penetración. Los investigadores querían comparar su eficacia para identificar y explotar vulnerabilidades en los LLM.
Al final, resultó que sólo un agente LLM basado en GPT-4 podía encontrar y explotar vulnerabilidades de un día, es decir, cuando tenía acceso a sus descripciones CVE. Todos los demás LLM y los dos escáneres tuvieron una tasa de éxito del 0% y, por lo tanto, no fueron probados con vulnerabilidades de día cero.
¿Por qué los investigadores probaron las capacidades de explotación de vulnerabilidades de los LLM?
Este estudio se realizó para abordar la brecha de conocimiento sobre la capacidad de los LLM para explotar con éxito vulnerabilidades antiguas en sistemas informáticos sin intervención humana.
Cuando se revelan vulnerabilidades en la base de datos CVE, la entrada no siempre describe cómo se pueden explotar; por lo tanto, los actores de amenazas o los evaluadores de penetración que quieran explotarlos deben resolver esto ellos mismos. Los investigadores intentaron determinar la viabilidad de automatizar este proceso con los LLM existentes.
VER: Aprenda a utilizar la IA para su negocio
El equipo de Illinois ya ha demostrado las capacidades de piratería autónoma de los LLM a través de ejercicios de “capturar la bandera”, pero no en implementaciones del mundo real. Otros trabajos se han centrado principalmente en la IA en el contexto de la “elevación humana” en la ciberseguridad, por ejemplo, donde los piratas informáticos cuentan con la ayuda de un chatbot impulsado por GenAI.
Kang dijo a TechRepublic: “Nuestro laboratorio se centra en la cuestión académica de cuáles son las capacidades de los métodos de inteligencia artificial de vanguardia, incluidos los agentes. Recientemente nos hemos centrado en la ciberseguridad debido a su importancia”.
Se ha contactado a OpenAI para hacer comentarios.