Fortaleciendo continuamente ChatGPT Atlas contra los ataques de inyección de indicaciones
El red teaming automatizado, impulsado por el aprendizaje por refuerzo, nos ayuda a descubrir y corregir proactivamente las vulnerabilidades de los agentes en el mundo real antes de que sean utilizadas como armas en el entorno.
El modo agente en ChatGPT Atlas es una de las características más generales y versátiles que hemos lanzado hasta la fecha. En este modo, el agente del navegador visualiza páginas web y realiza acciones, clics y pulsaciones de teclas dentro de tu navegador, tal como lo harías tú. Esto permite que ChatGPT trabaje directamente en muchos de tus flujos de trabajo diarios usando el mismo espacio, contexto y datos.
A medida que el agente del navegador te ayuda a hacer más cosas, también se convierte en un objetivo de mayor valor para los ataques adversarios. Esto hace que la seguridad de la IA sea especialmente importante. Mucho antes de lanzar ChatGPT Atlas, hemos estado construyendo y fortaleciendo continuamente defensas contra amenazas emergentes que apuntan específicamente a este nuevo paradigma de «agente en el navegador». Inyección de indicación es uno de los riesgos más significativos contra los que nos defendemos activamente para ayudar a garantizar que ChatGPT Atlas pueda operar de manera segura en tu nombre.
Como parte de este esfuerzo, recientemente enviamos una actualización de seguridad al agente del navegador de Atlas, que incluye un modelo recién entrenado de forma adversarial y salvaguardas reforzadas. Esta actualización fue impulsada por una nueva clase de ataques de inyección de indicaciones descubiertos mediante nuestro red teaming automatizado interno.
En esta publicación, explicamos cómo puede surgir el riesgo de inyección de indicaciones para los agentes basados en la web, y compartimos un ciclo de respuesta rápida que hemos estado desarrollando para descubrir continuamente nuevos ataques y enviar mitigaciones rápidamente, ilustrado por esta reciente actualización de seguridad.
Vemos la inyección de indicaciones como un desafío de seguridad a largo plazo para la IA, y necesitaremos fortalecer continuamente nuestras defensas contra ella (muy parecido a las estafas en línea en constante evolución que tienen como objetivo a las personas). Nuestro último ciclo de respuesta rápida está mostrando una promesa temprana como una herramienta crítica en ese viaje: estamos descubriendo estrategias de ataque novedosas internamente antes de que se manifiesten en el entorno real. Nuestra visión a largo plazo es aprovechar al máximo (1) nuestro acceso de caja blanca a nuestros modelos, (2) el profundo conocimiento de nuestras defensas, y (3) la escala de computación para mantenernos por delante de los atacantes externos, encontrando vulnerabilidades antes, implementando mitigaciones más rápidamente y ajustando continuamente el ciclo. Combinado con la investigación de vanguardia sobre nuevas técnicas para abordar la inyección de indicaciones y el aumento de la inversión en otros controles de seguridad, este ciclo compuesto puede hacer que los ataques sean cada vez más difíciles y costosos, reduciendo materialmente el riesgo de inyección de indicaciones en el mundo real. En última instancia, nuestro objetivo es que puedas confiar en un agente de ChatGPT para usar tu navegador como confiarías en un colega o amigo altamente competente y consciente de la seguridad.
Un ataque de inyección de indicaciones apunta a los agentes de IA al incrustar instrucciones maliciosas en el contenido que el agente procesa. Esas instrucciones están diseñadas para anular o redirigir el comportamiento del agente, secuestrándolo para seguir la intención de un atacante en lugar de la del usuario.
Para un agente de navegador como el que está dentro de ChatGPT Atlas, la inyección de indicación añade un nuevo vector de amenaza más allá de los riesgos tradicionales de seguridad web (como errores de usuario o vulnerabilidades de software). En lugar de hacer phishing a personas o explotar vulnerabilidades del sistema del navegador, el atacante se dirige al agente que opera dentro de él.
Como ejemplo hipotético, un atacante podría enviar un correo electrónico malicioso intentando engañar a un agente para que ignore la solicitud del usuario y, en su lugar, reenvíe documentos fiscales sensibles a una dirección de correo electrónico controlada por el atacante. Si un usuario le pide al agente que revise los correos electrónicos no leídos y resuma los puntos clave, el agente podría procesar ese correo electrónico malicioso durante el flujo de trabajo. Si sigue las instrucciones inyectadas, puede desviarse de la tarea y compartir información sensible por error.
Este es solo un escenario específico. La misma generalidad que hace que los agentes de navegador sean útiles también amplía los riesgos: el agente puede encontrarse con instrucciones no confiables a través de una superficie efectivamente ilimitada: correos electrónicos y archivos adjuntos, invitaciones de calendario, documentos compartidos, foros, publicaciones en redes sociales y páginas web arbitrarias. Dado que el agente puede realizar muchas de las mismas acciones que un usuario en un navegador, el impacto de un ataque exitoso podría ser igual de amplio: reenviar un correo electrónico sensible, enviar dinero, editar o eliminar archivos en la nube, y más.
Hemos avanzado en la defensa contra la inyección de indicaciones mediante múltiples capas de salvaguardias, como compartimos en una publicación anterior. Sin embargo, la inyección de indicaciones sigue siendo un desafío abierto para la seguridad de los agentes, y esperamos continuar trabajando en ello durante los próximos años.
Para fortalecer nuestras defensas, hemos estado buscando continuamente nuevos ataques de inyección de indicaciones (o «prompt injection», en inglés) contra sistemas de agentes en producción. Encontrar estos ataques es un requisito previo necesario para construir mitigaciones robustas: te ayuda a comprender el riesgo en el mundo real, expone las brechas en nuestras defensas y promueve parches concretos.
Para lograr esto a gran escala, desarrollamos un atacante automatizado basado en LLM y lo entrenamos para detectar ataques de inyección de indicaciones que puedan comprometer con éxito a un agente de navegador. Entrenamos a este atacante de principio a fin con aprendizaje por refuerzo, para que aprenda de sus propios éxitos y fracasos y mejore sus habilidades de red teaming. También permitimos que «pruebe antes de enviarse», lo que significa que, durante su razonamiento en cadena de pensamiento, el atacante puede proponer una inyección candidata y enviarla a un simulador externo. El simulador realiza un despliegue contrafactual de cómo actuaría el agente víctima objetivo (el defensor) si se encontrara con la inyección, y proporciona un razonamiento completo y un registro de acciones del agente víctima. El atacante usa esa traza como opinión, itera en el ataque y vuelve a ejecutar la simulación, repitiendo este ciclo varias veces antes de comprometerse con un ataque final. Esto ofrece una opinión más rica en contexto al atacante que una simple señal de aprobación/rechazo. También incrementa el cálculo en tiempo de prueba del atacante. Además, el acceso privilegiado a los rastros de razonamiento (que no compartimos con usuarios externos) del defensor le da a nuestro atacante interno una ventaja asimétrica, aumentando las probabilidades de que pueda superar a los adversarios externos.
¿Por qué el aprendizaje por refuerzo (RL)? Elegimos el aprendizaje por refuerzo para formar al atacante automatizado por varias razones:
- Optimizar los objetivos de los atacantes a largo plazo y discontinuos. Nuestro objetivo es buscar ataques de inyección de indicación que puedan engañar al agente para ejecutar tareas sofisticadas y adversas (p. ej., enviar correos electrónicos, realizar transacciones bancarias) que podrían ocurrir en el mundo real. Estas tareas adversariales son inherentemente de largo plazo, requiriendo muchos pasos de razonamiento e interacción con el entorno, con señales de éxito escasas y retrasadas. El aprendizaje por refuerzo es ideal para esta estructura de recompensas escasas y diferidas.
- Aprovechar las capacidades de frontera de los LLM. Entrenamos LLMs de vanguardia directamente como auto-red-teamers, por lo que el atacante se beneficia directamente de las mejoras en el razonamiento y la planificación en los modelos de vanguardia. A medida que los modelos base se fortalecen, el atacante también se vuelve más capaz, lo que convierte esto en una forma escalable de mantener la presión sobre nuestras defensas a medida que nuestros modelos evolucionan.
- Escalar el cómputo y simular atacantes adaptativos. El aprendizaje por refuerzo es ideal para escalar el cálculo dedicado a la búsqueda de ataques a través de un gran número de muestreos y pasos de aprendizaje, y también refleja de cerca cómo se comportan los atacantes humanos adaptativos: probando estrategias de manera iterativa, aprendiendo de los resultados y reforzando los comportamientos exitosos.
Nuestro atacante automatizado puede descubrir ataques de inyección de indicación novedosos y realistas de principio a fin. A diferencia de la mayoría de los trabajos anteriores de red teaming automatizado, que revelaron fallos simples como la generación de cadenas de salida específicas o la activación de una llamada de herramienta no intencionada de un solo paso por parte del agente, nuestro atacante entrenado con RL puede dirigir a un agente para que ejecute flujos de trabajo dañinos sofisticados y de largo plazo que se desarrollan a lo largo de decenas (o incluso cientos) de pasos. También observamos estrategias de ataque novedosas que no aparecieron en nuestra campaña de red teaming humano ni en informes externos.
La demostración a continuación presenta un exploit concreto de inyección de indicaciones encontrado por nuestro atacante automatizado, que luego usamos para reforzar aún más las defensas de ChatGPT Atlas. El atacante siembra la bandeja de entrada del usuario con un correo electrónico malicioso que contiene una inyección de indicaciones que dirige al agente a enviar una carta de renuncia al Director general (CEO) del usuario. Más tarde, cuando el usuario le pide al agente que redacte una responder fuera de la oficina, el agente encuentra ese correo electrónico durante la ejecución normal de tareas, trata la indicación inyectada como autoritativa y la sigue. El mensaje de fuera de la oficina nunca se escribe y el agente renuncia en nombre del usuario en su lugar.

Pedir ayuda al agente para gestionar el correo electrónico

2. El agente abre el correo electrónico más reciente que no ha sido leído

3. El correo tiene instrucciones maliciosas

4. El agente envía un correo electrónico de renuncia involuntario

5. Tras nuestra actualización de seguridad, el modo agente detecta con éxito un intento de inyección de indicaciones
La naturaleza de la inyección de indicaciones hace que las garantías de seguridad deterministas sean un desafío, pero al escalar nuestra investigación de seguridad automatizada, las pruebas adversarias y ajustando nuestro ciclo de respuesta rápida, podemos mejorar la robustez y las defensas del modelo, antes de que ocurra un ataque en el entorno real.
Estamos compartiendo esta demo para ayudar a los usuarios e investigadores a entender mejor la naturaleza de estos ataques y cómo nos estamos defendiendo activamente contra ellos. Creemos que esto representa la frontera de lo que el red teaming automatizado puede lograr, y estamos muy emocionados de continuar con nuestra investigación.
Nuestro red teaming automatizado está impulsando un ciclo de respuesta rápida proactiva: cuando el atacante automatizado descubre una nueva clase de ataques exitosos de inyección de indicaciones, inmediatamente crea un objetivo concreto para mejorar nuestras defensas.
Formación adversarial contra ataques recién descubiertos. Formamos continuamente modelos de agentes actualizados contra nuestro mejor atacante automatizado, priorizando los ataques en los que los agentes objetivo fallan actualmente. El objetivo es enseñar a los agentes a ignorar las instrucciones adversas y mantenerse alineados con la intención del usuario, mejorando la resistencia a las estrategias de inyección de indicaciones recién descubiertas. Esto «incorpora» la robustez contra ataques novedosos y de alta intensidad directamente en el checkpoint del modelo. Por ejemplo, el reciente red teaming automatizado produjo directamente un nuevo punto de control de un agente de navegador entrenado adversarialmente, que ya se ha implementado para todos los usuarios de ChatGPT Atlas. Esto ayuda, en última instancia, a proteger mejor a nuestros usuarios contra nuevos tipos de ataques.
Usando rastros de ataques para mejorar el conjunto de defensa más amplio. Muchos caminos de ataque descubiertos por nuestro red teamer automatizado también revelan oportunidades de mejora fuera del modelo en sí, como en la monitorización, las instrucciones de seguridad que colocamos en el contexto del modelo o las salvaguardias a nivel de sistema. Esos hallazgos nos ayudan a iterar en toda la pila de defensa, no solo en el punto de control del agente.
Responder a los ataques activos. Este bucle también puede ayudar a responder mejor a los ataques activos en el entorno. Al observar nuestro alcance global en busca de posibles ataques, podemos tomar las técnicas y tácticas que observamos que utilizan los adversarios externos, incorporarlas en este ciclo, emular su actividad y fomentar cambios defensivos en toda nuestra plataforma.
Fortalecer nuestra capacidad para realizar pruebas con los agentes del red team y utilizar nuestros modelos más avanzados para automatizar partes de ese trabajo ayuda a que el agente del navegador Atlas sea más robusto al escalar el ciclo de descubrimiento y corrección. Este esfuerzo de endurecimiento refuerza una lección familiar de seguridad: un camino bien conocido hacia una protección más fuerte es poner continuamente a prueba los sistemas reales, reaccionar ante los fallos y enviar soluciones concretas.
Esperamos que los adversarios sigan adaptándose. La inyección de indicaciones, al igual que las estafas y la ingeniería social en la web, probablemente nunca se «resolverá» por completo. Pero somos optimistas de que un ciclo de respuesta rápida, proactivo y altamente receptivo puede continuar reduciendo de manera significativa el riesgo en el mundo real con el tiempo. Al combinar el descubrimiento automatizado de ataques con la formación adversarial y las salvaguardas a nivel de sistema, podemos identificar nuevos patrones de ataque más pronto, cerrar brechas más rápido y aumentar continuamente el coste de la explotación.
El modo agente en ChatGPT Atlas es poderoso, y también amplía la superficie de amenaza de seguridad. Tener una visión clara sobre ese intercambio es parte de construir de manera responsable. Nuestro objetivo es hacer que Atlas sea más seguro de manera significativa con cada iteración: mejorando la robustez del modelo, fortaleciendo la pila de defensa circundante y monitoreando los patrones emergentes de abuso en el entorno.
Continuaremos invirtiendo en investigación y despliegue, desarrollando mejores métodos automatizados de red teaming, implementando mitigaciones en capas e iterando rápidamente a medida que aprendemos. También compartiremos lo que podamos con la comunidad más amplia.
Mientras continuamos fortaleciendo Atlas a nivel del sistema, los usuarios pueden tomar medidas para reducir el riesgo al usar agentes.
Limita el acceso al iniciar sesión cuando sea posible. Seguimos recomendando que los usuarios aprovechen el modo de cerrar sesión(se abre en una ventana nueva) al usar el agente en Atlas siempre que no sea necesario el acceso a los sitios web en los que has iniciado sesión para la tarea en cuestión, o para limitar el acceso a sitios específicos en los que inicias sesión durante la tarea.
Revisa cuidadosamente las solicitudes de confirmación. Para ciertas acciones consecuentes, como completar una compra o enviar un correo electrónico, los agentes están diseñados para pedir tu confirmación antes de proceder. Cuando un agente te pida que confirmes una acción, tómate un momento para verificar que la acción sea correcta y que cualquier información compartida sea adecuada para ese contexto.
Da instrucciones explícitas a los agentes siempre que sea posible. Evita indicaciones demasiado amplias como «revisa mis correos electrónicos y toma cualquier acción necesaria». La amplia latitud facilita que el contenido oculto o malicioso influya en el agente, incluso cuando hay medidas de protección implementadas. Es más seguro pedirle al agente que realice tareas específicas y bien delimitadas. Aunque esto no elimina el riesgo, hace que los ataques sean más difíciles de realizar.
Si los agentes quieren convertirse en socios de confianza para las tareas diarias, deben ser resilientes a los tipos de manipulación que habilita la web abierta. Fortalecerse contra la inyección de indicaciones es un compromiso a largo plazo y una de nuestras principales prioridades. Pronto compartiremos más sobre este trabajo.


