sistema: OPERATIVO
← volver a todos los hacks
DEFENSE MEDIUM NEW

WARD: un modelo guardián co-evolucionado que resiste inyecciones de prompt adaptativas en agentes web

Un artículo de la NUS del 14 de mayo de 2026 propone WARD —un modelo guardián entrenado contra un atacante adversarial con memoria— y reporta recall casi perfecto fuera de distribución frente a inyecciones de prompt en agentes web.

2026-05-29 // 8 min affects: web-agents, browser-use, llama-guard-4, prompt-guard-1, gpt-oss-safeguard

What is this?

El 14 de mayo de 2026, Tri Cao, Yulin Chen, Hieu Cao, Yibo Li, Khoi Le, Thong Nguyen, Yuexin Li, Yufei He, Yue Liu, Shuicheng Yan y Bryan Hooi (National University of Singapore, con coautores en University of Science y Vietnam National University, Ho Chi Minh City) publicaron en arXiv WARD: Adversarially Robust Defense of Web Agents Against Prompt Injections (2605.15030). El código y los modelos se distribuyen bajo licencia CC BY 4.0 en github.com/caothientri2001vn/WARD-WebAgent.

WARD es un modelo guardián para agentes web: un clasificador side-car que se ejecuta en paralelo a un agente de navegador y señala los contenidos de inyección de prompt embebidos en HTML o capturas de pantalla antes de que el agente actúe sobre ellos. La contribución es doble: un conjunto de datos a gran escala cuidadosamente etiquetado (WARD-Base, 177 585 muestras sobre 709 URLs y 10 plataformas) y un procedimiento de entrenamiento adversarial de dos bucles (A3T) que endurece el guardián frente a ataques diseñados específicamente para evadirlo.

El resultado principal del resumen es un «recall casi perfecto en benchmarks fuera de distribución, tasas bajas de falsos positivos que preservan la utilidad del agente, [y] robustez frente a ataques dirigidos contra el guardián y ataques adaptativos bajo desplazamientos sustanciales de distribución», ejecutándose «en paralelo al agente sin introducir latencia adicional».

How it works

El conjunto de datos y el bucle de entrenamiento son las piezas más interesantes.

WARD-Base se construye a partir de las 50 URLs más visitadas en 21 categorías de Similarweb (808 URLs tras el filtrado), más 20 plataformas simuladas que cubren sistemas colaborativos, correo electrónico, mensajería, comercio electrónico y redes sociales. Se generan cinco tareas benignas por URL —4 040 en total— y se ejecutan con un agente Browser-Use para registrar estados de página realistas. Los autores enumeran luego seis categorías de objetivo de ataque —exfiltración de información de usuario, ejecución de acciones no autorizadas, generación de contenido que viole la política, manipulación de UI de un solo paso, manipulación de memoria del agente y degradación de utilidad— y cuatro grupos de localización de inyección (HTML, captura de pantalla, ambos, ninguno). Los canales de inyección incluyen canales de superposición (pie de página, alerta, badge, banner, notificación, chat embebido, popup) y canales nativos (mensaje de chat, cuerpo de correo, post y comentario, README, descripción de producto). El conjunto resultante contiene 90 802 muestras benignas y 86 783 maliciosas.

# Esquema conceptual del pipeline WARD, según el artículo.
# No se reproduce ningún payload explotable contra un sistema en vivo.

[ página web o captura de pantalla ]       # modalidades de observación


[ tarea benigna del usuario ]


[ inyección en posición ℓ ∈ {HTML, Captura, Ambos, Ninguno} ]


[ guardián WARD G_θ ] ──► (etiqueta predicha ŷ, posición predicha ℓ̂)
              │                       │
              ▼                       ▼
   pasar al agente            rechazar + registro de telemetría

El pipeline de entrenamiento tiene tres etapas. Etapa 1: entrenamiento supervisado sobre WARD-Base. Etapa 2: introducción de WARD-PIG, un conjunto dedicado de 10 500 muestras maliciosas y 10 500 benignas en las que se insertan prompts dirigidos contra el guardián (Prompt Injection against Guard, «PIG») en la misma observación que el prompt dirigido al agente, de modo que el mismo contenido intenta engañar a agente y guardián a la vez. Etapa 3: A3T, un bucle de entrenamiento adversarial adaptativo:

  • Bucle interno. Un modelo atacante propone prompts adversariales p_adv que satisfacen simultáneamente el objetivo de ataque y evaden al guardián actual G_θ. Un validador filtra los candidatos por consistencia con el objetivo, plausibilidad contextual y validez como inyección. El atacante mantiene dos niveles de memoria: a nivel de muestra (intentos previos, retroalimentación del validador, predicciones del guardián, razones de fallo) y a nivel de plataforma (estrategias reutilizables para la misma URL o plataforma), de modo que los patrones exitosos se transfieren y los fallidos se refinan.
  • Bucle externo. El guardián se afina con GRPO sobre las muestras adversariales recopiladas, con una recompensa de 1,0 para etiqueta correcta y localización correcta, 0,5 para etiqueta correcta y localización incorrecta, y 0,0 en otro caso. El punto de partida es el checkpoint entrenado sobre WARD-PIG.

Los dos bucles co-evolucionan: el atacante sondea cerca de la frontera de decisión actual, el guardián se actualiza, el atacante vuelve a sondear. Los autores ejecutan este esquema sobre WARD-Seed (49 URLs y 4 plataformas reservadas fuera de WARD-Base) y evalúan sobre WARD-Test (50 URLs y 6 plataformas) más cuatro benchmarks externos —Popup, EIA, VPI y WASP— ninguno utilizado para entrenar WARD.

La comparación de referencia es severa con los guardianes de producción. Llama-Guard-4-12B registra 23,2 % de recall y un F1 de 37,46 sobre WARD-Test, y en el benchmark Popup su recall se desploma hasta 0,26 %. GPT-Oss-Safeguard-20B alcanza 40,67 % de recall sobre WARD-Test con un F1 de 57,82, pero marca 0,00 % sobre Popup, EIA y WASP. Prompt-Guard-1-86M rinde de manera similarmente pobre. Estas cifras explican por qué se necesita un guardián específico para agentes web: los guardianes de seguridad LLM genéricos no fueron diseñados para superficies de inyección en HTML y capturas, y no generalizan a ellas.

Why it matters

Tres razones para seguir WARD, incluso si no se despliega tal cual.

Primero, el modelo de amenaza es el que muchos equipos están enviando hoy a producción. Los agentes basados en navegador —OpenAI Operator, Anthropic Computer Use, ChatGPT Agent, Browser-Use, Skyvern y una larga lista de proyectos open source— operan sobre HTML y píxeles controlados por el atacante. Como ya documentó la literatura previa (arXiv:2507.14799, Manipulating LLM Web Agents), un atacante que controla una página puede secuestrar a un agente que la lea. WARD trata este modelo de amenaza como objeto de primer orden en lugar de tratar de readaptar un clasificador de seguridad de propósito general.

Segundo, los conjuntos de datos son la contribución. La mayoría de los benchmarks públicos de inyección de prompt (AdvBench, AgentDojo, InjecAgent) apuntan a superficies de chat o de llamada a herramientas y contienen, como mucho, unos pocos miles de ejemplos. Un corpus de 177 K muestras específico para web, con etiquetas explícitas de canal y localización y publicado bajo CC BY 4.0, es un recurso del que la comunidad defensiva no disponía. Incluso los equipos que ignoren el modelo pueden entrenar y evaluar sus propios guardianes sobre WARD-Base.

Tercero, el patrón de entrenamiento co-evolutivo es portable. La estructura interno-atacante / externo-guardián de A3T puede aplicarse a otras superficies de guardián (guardianes de plantillas de chat, clasificadores de resultados de herramientas, filtros de servidores MCP) siempre que pueda escribirse un validador que verifique la satisfacción del objetivo de ataque. Generaliza un patrón que el trabajo previo en robustez adversarial (clasificadores entrenados con PGD en visión, entrenamiento FGSM para texto) solo había abordado parcialmente para las superficies de la era LLM.

Defenses

WARD es en sí un artículo defensivo; las «defensas» aquí son las lecciones operativas para los equipos que despliegan agentes web, adopten o no WARD.

Ejecute un guardián side-car, no solo una jerarquía de instrucciones en el prompt. Las cifras de WARD recuerdan con fuerza que pedirle al LLM planificador que «ignore las instrucciones inyectadas» no es una defensa. Un modelo separado que ve la misma observación y vota sobre ella, en paralelo al agente, cuesta poca latencia adicional y captura una categoría de fallos que el planificador no ve. WARD está diseñado para ejecutarse en inferencia junto al agente sin convertirse en el cuello de botella.

Entrene sobre canales de inyección específicos para la web. Los benchmarks genéricos de inyección de prompt (ataques tipo chat «ignore previous instructions») no se transfieren a las superficies HTML y de captura de pantalla. Si su agente lee páginas, su evaluación debe incluir canales de superposición (popups, banners, notificaciones) y canales nativos (mensajes, comentarios, README, descripciones de producto). WARD-Base es un corpus de partida creíble.

Use la etiqueta de localización de cuatro clases. Tratar la inyección como un clasificador binario pierde información. WARD predice tanto la etiqueta como la localización (HTML / captura / ambos / ninguno); esto permite que una política aguas abajo decida de manera distinta cuando el ataque es solo texto o visual, y le da a su telemetría la granularidad para identificar qué canal está ejercitando el adversario.

Someta al propio guardián a estrés. WARD-PIG es la parte que falta en la mayoría de los despliegues actuales. Si su guardián es una ficha de modelo fija o un system prompt fijo, un atacante puede iterar fuera de línea hasta encontrar contenido que lo evada. La respuesta defensiva es incorporar ataques dirigidos al guardián en el conjunto de entrenamiento y volver a evaluar.

Adopte la co-evolución adversarial donde sea posible. La mayoría de los equipos no puede mantener un bucle A3T completo en producción, pero la estructura del artículo es reproducible a menor escala. Incluso una o dos iteraciones de «generar muestras adversariales → afinar el guardián → re-evaluar» endurecen de forma medible un filtro desplegado, y el patrón de memoria a nivel de plataforma (almacenar lo que funcionó por URL) se implementa directamente sobre un pipeline de red team existente.

No asuma que Llama-Guard o similar es suficiente. Las cifras de Llama-Guard-4-12B y GPT-Oss-Safeguard-20B en el artículo WARD son el hallazgo más directamente accionable: son valores por defecto razonables para la moderación de contenido de chat, pero sobre los canales de observación de agentes web recuperan menos de la mitad del contenido malicioso y, en algunos benchmarks, menos del 1 %. Si actualmente se apoya en un clasificador de seguridad genérico como único guardián de agente web, el artículo WARD es el aviso para volver a probarlo.

Status

ElementoReferenciaFechaNotas
Envío arXivWARD v1, arXiv 2605.150302026-05-14cs.CR / cs.AI
AutoresCao, Chen, Cao, Li, Le, Nguyen, Li, He, Liu, Yan, HooiNUS + University of Science + VNU-HCM
Código y modelosgithub.com/caothientri2001vn/WARD-WebAgent2026-05-14Repositorio público
LicenciaCC BY 4.02026-05-14Reutilización permitida con atribución
WARD-Base177 585 muestras; 709 URLs + 10 plataformas; 90 802 benignas / 86 783 maliciosasSeis categorías de objetivo, cuatro grupos de localización
WARD-PIG10 500 maliciosas + 10 500 benignas con prompts dirigidos al guardiánEntrena al guardián contra ataques conscientes del guardián
A3TBucle interno de generación de ataque + bucle externo de actualización GRPOMemoria a nivel de muestra y de plataforma
Benchmarks externosPopup, EIA, VPI, WASPEvaluación fuera de distribución
Guardianes comparadosLlama-Guard-4-12B; GPT-Oss-Safeguard-20B; Prompt-Guard-1-86M2024–2025Todos rinden por debajo en canales específicos para web

La seguridad de los agentes web está pasando de «tenemos un planificador que sabe no seguir instrucciones extrañas» a «tenemos un guardián entrenado frente a atacantes que conocen al guardián». WARD es una referencia creíble para ese segundo modo, y solo el conjunto de datos ya vale la lectura.

Sources