Los chatbots de IA han quedado al descubierto en más de una ocasión. Su ineficaz arquitectura de software y elevada vulnerabilidad hace que sean un objetivo fácil para los ciberdelincuentes. Así pues, no es de extrañar que ChatGPT haya sufrido una vulnerabilidad que permitía a los atacantes almacenar información falsa e instrucciones maliciosas en la configuración de memoria a largo plazo de un usuario; un spyware persistente.
El investigador de seguridad, Johann Rehberger detectó esta alerta. Los atacantes lograban almacenar información falsa e informaciones maliciosas en la configuración de memoria a largo plazo de un usuario. A partir de ese momento, OpenAI decidió cerrar las investigaciones y etiquetar la falla como ‘problema de seguridad’.
El experimento: un exploit de prueba de concepto
Así fue como, gracias a un exploit de prueba de concepto, fue posible extraer toda la información ingresada por los usuarios. De este modo, la memoria de conversaciones a largo plazo de ChatGPT se vio mermada y conversaciones anteriores y futuras fueron sustraídas.
El hecho de robar datos sensibles vertidos a ChatGPT supone hacerse con detalles tan específicos como: edad, género, creencias filosóficas y religiosas o cualquier otro dato que el usuario pudiesen incorporar.
A los pocos meses de la implementación, Rehberger detectó que podían crearse y almacenarse recuerdos permanentemente, a través de la denominada inyección indirecta de mensajes.
En otras palabras, un exploit de IA que hace que un LLM siga instrucciones de contenido no confiable (emails, publicaciones de blogs o documentos). Así pues, logró engañar a ChatGPT con datos inventados, logrando su objetivo: que el LLM incorporase esa información para determinar el resto de conversaciones futuras.
En este sentido, Rehberger informó de manera privada a OpenAI del hallazgo en mayo de 2024, incluso incluyó una PoC, que provocó que la aplicación ChatGPT para macOS enviara una copia literal de todas las entradas del usuario y las salidas de ChatGPT a un servidor de su elección.
Bastaba con indicarle al LLM que viera un enlace web que alojaba una imagen maliciosa y todas las entradas y salidas hacia y desde ChatGPT eran enviadas al sitio web del atacante.
Reacciones de ChatGPT
La inyección rápida o POC afecta directamente a la memoria en el almacenamiento a largo plazo de ChatGPT. Así fue como OpenAI introdujo una solución que evita que los recuerdos se empleen de forma abusiva, como ventor de exfiltración.
De este modo, el contenido no confiable puede realizar inyecciones rápidas que provocan que la herramienta de memoria siga almacenando información a largo plazo instaurada por un ciberdelincuente.
OpenAI implementó una mitigación para un vector común de exfiltración de datos a finales de 2023 mediante una API; url_safe. De esta forma, alertaba al cliente si es seguro mostrar una URL o una imagen al usuario. Además, logra mitigar muchos ataques en los que la inyección rápida renderiza imágenes de servidores de terceros para usar la URL como canal de exfiltración de datos. Pese a todo, la url_safe como función no puede evitar que se filtre cierta información.
¿Cómo protegerse?
A los usuarios de ChatGPT no les queda otra que indicar que prestar mucha atención a las indicaciones que hacen alusión a que se ha añadido una nueva memoria y revisar periódicamente las memorias almacenadas, comprobando así si procede de fuentes no fiables. Una guía oficial de OpenAI intenta contribuir a alcanzar el objetivo de gestionar la herramienta de memoria y las memorias específicas almacenadas en ella.
No hay que olvidar que la técnica de exfiltración no es nueva. Siempre se trabaja mostrando una imagen en un servidor controlado por un atacante y se le pide a ChatGPT que incluya los datos del usuario como parámetro de consulta.
Por consiguiente, es difícil anteponerse y frenar a estos actores maliciosos, ya que una inyección rápida desde un sitio web persiste las instrucciones del software espía en la memoria de ChatGPT y continuamente va exfiltrando todo lo que el usuario escribe en el futuro.
Se recomienda a los usuarios de ChatGPT que revisen periódicamente los recuerdos que el sistema almacena sobre ellos, detectando los casos más sospechosos o incorrectos y limpiándolos por completo, a modo de prevención. Todos los recuerdos pueden ser gestionados, eliminados y desactivados de la función específica. Lo ideal será iniciar chats temporales que no utilizasen memoria.
Con esta cadena de ataques instaurada, queda demostrado el enorme peligro que implica tener memoria a largo plazo agregada automáticamente a un sistema, tanto desde el punto de vista de la desinformación como de la estafa. Esto puede conducir a una exfiltración persistente de datos y, técnicamente, también a establecer un canal de comando y control para actualizar las instrucciones.
De ahí la importancia a ejecutar siempre la última versión de sus aplicaciones ChatGPT y revisar las memorias periódicamente para evitar problemas de seguridad y de vulnerabilidad realmente inesperados.