Phase 18 - Lesson 12
Red-Teaming: PAIR y Ataques Automatizados
Chao, Robey, Dobriban, Hassani, Pappas, Wong (NeurIPS 2023, arXiv:2310.08419). PAIR — Prompt Automatic Iterative Refinement — es el jailbreak automatizado de caja negra canónico. Un LLM atacante con un prompt de sistema de red-team propone de manera iterativa jailbreaks para un LLM objetivo, acumulando intentos y respuestas en su propio historial de chat como feedback en contexto. PAIR normalmente tiene éxito en menos de 20 consultas, lo que resulta órdenes de magnitud más eficiente que GCG (búsqueda de gradiente a nivel de token de Zou et al.) y sin requerir acceso de caja blanca. PAIR es ahora una línea base estándar en JailbreakBench (arXiv:2404.01318) y HarmBench, junto con GCG, AutoDAN, TAP y Prompt Adversario Persuasivo (Persuasive Adversarial Prompt).
Tipo: Construir Lenguajes: Python (stdlib, loop PAIR simulado contra un objetivo de juguete) Requisitos previos: Fase 18 · 01 (seguimiento de instrucciones), Fase 14 (ingeniería de agentes) Tiempo: ~75 minutos
Objetivos de Aprendizaje
- Describir el algoritmo PAIR: prompt del sistema del atacante, refinamiento iterativo, feedback en contexto.
- Explicar por qué PAIR es estrictamente más eficiente que GCG cuando el objetivo es de caja negra.
- Nombrar otras cuatro líneas base de ataques automatizados (GCG, AutoDAN, TAP, PAP) y mencionar una característica distintiva de cada una.
- Describir los protocolos de evaluación de JailbreakBench y HarmBench y qué significa la "tasa de éxito del ataque" en cada uno.
El Problema
El red-teaming solía ser una actividad manual. Un pequeño número de evaluadores expertos construían prompts adversarios y realizaban un seguimiento de cuáles funcionaban. Esto no escala: la tasa de éxito del ataque necesita una muestra estadística, y el objetivo es un blanco móvil con cada lanzamiento de modelo. PAIR operacionaliza el red-teaming como un problema de optimización con un objetivo de caja negra.
El Concepto
Algoritmo PAIR
Entradas:
- LLM Objetivo T (el modelo que estamos atacando).
- LLM Juez J (califica si una respuesta es un jailbreak).
- LLM Atacante A (el optimizador del red-team).
- String objetivo G: "responder con [instrucción dañina]".
- Presupuesto K (normalmente 20 consultas).
Loop, para k de 1..K:
- Se le presenta a A el objetivo G y el historial de pares (prompt, respuesta) hasta el momento.
- A emite un nuevo prompt p_k.
- Se envía p_k a T; se recibe la respuesta r_k.
- J califica (p_k, r_k) con respecto al objetivo.
- Si la calificación >= umbral, se detiene: jailbreak encontrado.
- De lo contrario, se añade (p_k, r_k) al historial de A; continuar.
Resultado empírico (NeurIPS 2023): tasa de éxito del ataque >50% contra GPT-3.5-turbo, Llama-2-7B-chat; promedio de consultas para el éxito en el rango de 10 a 20.
Por qué PAIR es eficiente
GCG (Zou et al. 2023) busca sufijos de tokens adversarios mediante gradiente; requiere acceso de caja blanca al modelo y produce sufijos ilegibles. PAIR es de caja negra y genera ataques en lenguaje natural que se pueden transferir entre modelos. El feedback en contexto de PAIR permite al atacante aprender de cada rechazo; GCG no tiene equivalente (cada nueva actualización de token tiene que redescubrir el progreso anterior).
Ataques automatizados relacionados
- GCG (Zou et al. 2023, arXiv:2307.15043). Búsqueda de gradiente a nivel de token para sufijos adversarios. Caja blanca, transferible, genera cadenas ilegibles.
- AutoDAN (Liu et al. 2023). Búsqueda evolutiva sobre prompts, guiada por un objetivo hierárquico.
- TAP (Mehrotra et al. 2024). Árbol de ataques con poda (tree-of-attacks with pruning): ramifica múltiples ejecuciones al estilo PAIR.
- PAP (Zeng et al. 2024). Prompts Adversarios Persuasivos (Persuasive Adversarial Prompts): codifica técnicas de persuasión humana como plantillas de prompt.
JailbreakBench y HarmBench
Ambos (2024) estandarizan la evaluación:
- JailbreakBench (arXiv:2404.01318). 100 comportamientos dañinos clasificados en 10 categorías de políticas de OpenAI. Tasa de éxito del ataque (ASR) como métrica principal. Requiere un juez (GPT-4-turbo, Llama Guard o StrongREJECT).
- HarmBench (Mazeika et al. 2024). 510 comportamientos distribuidos en 7 categorías, con pruebas de daño semántico y funcional. Compara 18 ataques contra 33 modelos.
La ASR generalmente se reporta para un presupuesto fijo de consultas. La comparación de ataques requiere presupuestos equivalentes; una ASR del 90% con 200 consultas no es comparable con una ASR del 85% con 20.
Por qué es importante para los despliegues en 2026
Todos los laboratorios de frontera ejecutan actualmente PAIR y TAP contra sus modelos de producción antes de su lanzamiento. Las trayectorias de ASR aparecen en las tarjetas de modelo (model cards) (Lección 26) y en los apéndices de casos de seguridad (Lección 18). El ataque no es algo exótico: es infraestructura estándar.
Dónde encaja esto en la Fase 18
La Lección 12 es la base de los ataques automatizados. La Lección 13 (Jailbreak de Muchas Intentonas / Many-Shot Jailbreaking) es una explotación de longitud complementaria. La Lección 14 (ASCII Art / Visual) es un ataque de codificación. La Lección 15 (Inyección Indirecta de Prompts) es la superficie de ataque en producción de 2026. La Lección 16 cubre las herramientas de defensa equivalentes (Llama Guard, Garak, PyRIT).
Úsalo
code/main.py construye un loop PAIR de juguete. El objetivo es un clasificador simulado que rechaza prompts dañinos "obvios" (filtro de palabras clave). El atacante es un refinador basado en reglas que intenta paráfrasis, encarnación de roles (roleplay) y codificación. El juez califica la respuesta. Verás cómo el atacante tiene éxito en unas ~5 a 15 iteraciones contra el filtro de palabras clave y falla contra el filtro semántico.
Envíalo
Esta lección produce outputs/skill-attack-audit.md. Dado el informe de una evaluación de red-team, audita: qué ataques se ejecutaron (PAIR, GCG, TAP, AutoDAN, PAP), con qué presupuesto cada uno, con qué juez y sobre qué conjunto de comportamientos dañinos (JailbreakBench, HarmBench, interno).
Ejercicios
Ejecuta
code/main.py. Mide el promedio de consultas para el éxito en cada una de las tres estrategias del atacante integradas. Explica qué supuesto de defensa del objetivo explota cada una.Implementa una cuarta estrategia de atacante (por ejemplo, traducción a otro idioma, codificación base64). Reporta el nuevo promedio de consultas para el éxito contra el objetivo con filtro de palabras clave y el objetivo con filtro semántico.
Lee la Figura 5 de Chao et al. 2023 (comparación PAIR vs. GCG). Describe dos escenarios donde se prefiera GCG a pesar de la ventaja de eficiencia de PAIR.
JailbreakBench reporta la ASR en relación con un conjunto de objetivos fijo. Diseña una métrica adicional que mida la diversidad del ataque (varianza en prompts exitosos). Explica por qué la diversidad es importante para evaluar las defensas.
TAP (Mehrotra 2024) extiende PAIR con ramificación + poda. Esboza una extensión de tipo TAP para
code/main.pyy describe el equilibrio entre el costo computacional y la tasa de éxito.
Términos clave
| Término | Qué dice la gente | Qué significa realmente |
|---|---|---|
| PAIR | "jailbreak automatizado" | Prompt Automatic Iterative Refinement; bucle de LLM atacante + LLM juez |
| GCG | "jailbreak por gradiente" | Búsqueda de gradiente a nivel de token en caja blanca para sufijos adversarios |
| Tasa de éxito del ataque (ASR) | "% de jailbreaks en k consultas" | Métrica principal; debe reportarse junto con el presupuesto de consultas y la identidad del juez |
| LLM Juez | "el calificador" | LLM que evalúa si una respuesta satisface el objetivo dañino |
| JailbreakBench | "la evaluación" | Conjunto estandarizado de comportamientos dañinos con categorías etiquetadas |
| HarmBench | "el benchmark general" | 510 comportamientos, pruebas de daño funcional y semántico |
| TAP | "árbol de ataques" | PAIR con ramificación + poda; mejor ASR con mayor coste computacional |
Lectura adicional
- Chao et al. — Jailbreaking Black Box LLMs in Twenty Queries (arXiv:2310.08419) — el artículo de PAIR, NeurIPS 2023
- Zou et al. — Universal and Transferable Adversarial Attacks on Aligned LLMs (arXiv:2307.15043) — el artículo de GCG
- Chao et al. — JailbreakBench (arXiv:2404.01318) — evaluación estandarizada
- Mazeika et al. — HarmBench (ICML 2024) — evaluación de espectro amplio