Ciberseguridad
Código
malware
ChatGPT

ChatGPT crea un ‘malware’ mutante que elude la detección por EDR

El malware mutante o polimórfico puede construirse utilizando la API ChatGPT en el momento de la ejecución para llevar a cabo ataques avanzados que pueden evadir las aplicaciones de detección y respuesta de puntos finales (EDR).

Malware

Convertido en una sensación mundial desde su lanzamiento inicial a finales del año pasado, la popularidad de ChatGPT entre consumidores y profesionales de TI por igual ha despertado pesadillas en el mundo de la ciberseguridad ciberseguridad. Unos quebraderos de cabeza propiciados solo de pensar cómo puede utilizarse para explotar vulnerabilidades del sistema. Un problema clave, según han demostrado los expertos en ciberseguridad, es la capacidad de ChatGPT y otros grandes modelos de lenguaje (LLM) para generar código polimórfico, o mutante, con el fin de evadir los sistemas de detección y respuesta de puntos finales (EDR).

Una serie reciente de ataques de prueba de concepto muestra cómo un archivo ejecutable aparentemente benigno puede ser creado de tal manera que en cada tiempo de ejecución, hace una llamada a la API de ChatGPT. En lugar de limitarse a reproducir ejemplos de fragmentos de código ya escritos, ChatGPT puede generar versiones dinámicas y mutantes de código malicioso en cada llamada, lo que dificulta la detección de las vulnerabilidades resultantes por las herramientas de ciberseguridad.

"ChatGPT baja el listón para los hackers, los actores maliciosos que utilizan modelos de IA pueden considerarse los modernos Script Kiddies", afirma Mackenzie Jackson, defensora de los desarrolladores en la empresa de ciberseguridad GitGuardian. "El malware que ChatGPT puede producir no es ni mucho menos innovador, pero a medida que los modelos mejoren, consuman más datos de muestra y salgan al mercado productos diferentes, la IA puede acabar creando malware que sólo pueda ser detectado por otros sistemas de IA para la defensa". Qué bando ganará en este juego es una incógnita.

Ha habido varias pruebas de concepto que muestran el potencial de la herramienta para explotar sus capacidades en el desarrollo de malware avanzado y polimórfico.

 

Las instrucciones eluden los filtros para crear código malicioso

ChatGPT y otros LLM tienen filtros de contenido que les prohíben obedecer órdenes, o prompts, para generar contenido dañino, como código malicioso. Pero lo cierto es que los filtros de contenido pueden saltarse. Casi todos los exploits de los que se ha informado que pueden realizarse potencialmente a través de ChatGPT se consiguen mediante lo que se conoce como "ingeniería de instrucciones", la práctica de modificar las instrucciones de entrada para eludir los filtros de contenido de la herramienta y obtener la salida deseada. Los primeros usuarios descubrieron, por ejemplo, que podían hacer que ChatGPT creara contenidos que no debía crear - jailbreaking del programa- enmarcando las peticiones en hipótesis, por ejemplo pidiéndole que hiciera algo como si no fuera una IA sino una persona malintencionada con intención de hacer daño.

"ChatGPT ha establecido algunas restricciones en el sistema, como filtros que limitan el alcance de las respuestas que ChatGPT proporcionará mediante la evaluación del contexto de la pregunta", dijo Andrew Josephides, director de Investigación de Seguridad en KSOC, una empresa de ciberseguridad especializada en Kubernetes. "Si le pidieras a ChatGPT que te escribiera un código malicioso, denegaría la petición. Si le pidieras a ChatGPT que escribiera un código que pudiera hacer la función efectiva del código malicioso que pretendes escribir, sin embargo, ChatGPT es probable que construya ese código para ti."

Con cada actualización, ChatGPT es más difícil de engañar para que sea malicioso, pero a medida que entran en el mercado diferentes modelos y productos, no podemos confiar en que los filtros de contenidos impidan que los LLM se utilicen con fines maliciosos, afirma Josephides. La capacidad de engañar a ChatGPT para que utilice cosas que conoce pero que están amuralladas tras los filtros es lo que puede hacer que los usuarios le hagan generar código malicioso efectivo. Puede utilizarse para convertir el código en polimórfico aprovechando la capacidad de la herramienta para modificar y ajustar los resultados de la misma consulta si se ejecuta varias veces.

Por ejemplo, un ejecutable Python aparentemente inofensivo puede generar una consulta para enviar a la API ChatGPT para procesar una versión diferente de código malicioso cada vez que se ejecuta el ejecutable. De esta forma, la acción maliciosa se realiza fuera de la función exec(). Esta técnica puede utilizarse para formar un programa malicioso mutante y polimórfico difícil de detectar por los escáneres de amenazas.

 

Pruebas de concepto existentes de ‘malware’ polimórfico

A principios de este año, Jeff Sims, ingeniero de seguridad principal de la empresa de detección de amenazas HYAS InfoSec, publicó una prueba de concepto de un modelo de explotación de este tipo. Demostró el uso de la ingeniería de avisos y la consulta de la API ChatGPT en tiempo de ejecución para construir una carga útil de keylogger polimórfico, llamándolo BlackMamba. En esencia, BlackMamba es un ejecutable de Python que consulta la API de ChatGPT para construir un keylogger malicioso que muta en cada llamada en tiempo de ejecución para hacerlo polimórfico y eludir los filtros de punto final y respuesta (EDR).

"La función exec() de Python es una función integrada que permite ejecutar código Python de forma dinámica en tiempo de ejecución", explica Sims. Toma como entrada una cadena que contiene el código que se desea ejecutar y, a continuación, ejecuta dicho código". La función exec() se utiliza habitualmente para modificar programas sobre la marcha, lo que significa que se puede modificar el comportamiento de un programa en ejecución ejecutando un nuevo código mientras el programa se está procesando". En el contexto de BlackMamba, "las limitaciones del polimorfismo están constreñidas por la creatividad del ingeniero (creatividad de la entrada) y la calidad de los datos de entrenamiento del modelo para producir respuestas generativas", dijo Sims.

En la prueba de concepto de BlackMamba, después de recopilar las pulsaciones de teclas, los datos se filtran mediante un gancho web a un canal de Microsoft Teams, explicó Sims. BlackMamba evadió varias veces una aplicación EDR "líder del sector", según Sims, aunque no dijo cuál.

Otro programa de prueba de concepto, creado por Eran Shimony y Omer Tsarfati, de la empresa de ciberseguridad CyberArk, utilizaba ChatGPT dentro del propio malware. El malware incluye "un intérprete de Python que consulta periódicamente ChatGPT en busca de nuevos módulos que realicen acciones maliciosas", según un blog que Shimony y Tsarfati escribieron para explicar la prueba de concepto. "Al solicitar a ChatGPT funcionalidades específicas como inyección de código, cifrado de archivos o persistencia, podemos obtener fácilmente código nuevo o modificar el existente".

Aunque ChattyCat no estaba pensado para un tipo específico de malware, a diferencia de BlackMamba, proporciona una plantilla para construir una gran variedad de malware, incluidos ransomware e infostealers. "Nuestro POC, ChattyCaty, es un proyecto de código abierto que muestra una infraestructura para crear programas polimórficos utilizando modelos GPT", explica Tsarfati. "El polimorfismo puede utilizarse para eludir la detección de los programas antivirus/malware". Shimony y Tsarfati también descubrieron que los filtros de contenido eran más débiles o incluso inexistentes en la API ChatGPT, a diferencia de la versión inicial en línea. "Es interesante observar que cuando se utiliza la API, el sistema ChatGPT no parece utilizar su filtro de contenidos. No está claro por qué es así, pero nos facilita mucho la tarea, ya que la versión web tiende a atascarse con peticiones más complejas", escribieron Shimony y Tsarfati en su blog.

 

Regular la IA para garantizar la seguridad

Aunque los gobiernos de todo el mundo están tratando de regular la IA para evitar daños, China es el único país importante que ha promulgado nuevas normas. Los expertos proponen distintos enfoques para frenar el potencial dañino de la IA generativa. "En estos momentos, la solución para controlar los problemas de la IA parece ser 'añadir más IA', lo cual no me parece realista", afirma Jeff Pollard, analista de Forrester. "Para añadir realmente las capas adecuadas de control a estas soluciones necesitamos una mejor explicabilidad y observabilidad del contexto en el sistema. Esto debería integrarse en la API y utilizarse para proporcionar detalles significativos y ofrecer capacidades de gestión que en la actualidad no parecen existir".

Sin embargo, regular la IA generativa será difícil, ya que el sector tecnológico aún está en una fase incipiente de comprensión de lo que puede hacer, afirma Chris Steffen, director de Investigación de la empresa de análisis y consultoría Enterprise Management Associate. "La razón por la que la regulación es una perspectiva aterradora es que ChatGPT es una de esas cosas en las que las posibilidades son prácticamente infinitas, y no es algo para lo que podamos prepararnos fácilmente de forma que cubra todas las posibles circunstancias que podría abarcar una instancia de GPT", dijo Steffen. "Va a ser difícil sobre todo en aspectos como: cómo regular, el proceso a utilizar y quién es responsable".



TE PUEDE INTERESAR...

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

Documento Pure Storage y Kyndryl INFRAESTRUCTURAS