Phase 18 - Lesson 12

Red-Teaming: PAIR e Ataques Automatizados

Chao, Robey, Dobriban, Hassani, Pappas, Wong (NeurIPS 2023, arXiv:2310.08419). O PAIR — Prompt Automatic Iterative Refinement — é o jailbreak de caixa-preta automatizado canônico. Um LLM atacante com um prompt de sistema de red-team propõe jailbreaks iterativamente para um LLM alvo, acumulando tentativas e respostas em seu próprio histórico de chat como feedback em contexto. O PAIR normalmente obtém sucesso em menos de 20 consultas, sendo ordens de magnitude mais eficiente que o GCG (pesquisa de gradiente no nível de token de Zou et al.) e sem exigir acesso de caixa-branca. O PAIR é agora uma linha de base padrão no JailbreakBench (arXiv:2404.01318) e no HarmBench, ao lado do GCG, AutoDAN, TAP e Prompt Adversarial Persuasivo.

Tipo: Construir Linguagens: Python (stdlib, loop PAIR simulado contra um alvo simples) Pré-requisitos: Fase 18 · 01 (seguimento de instruções), Fase 14 (engenharia de agentes) Tempo: ~75 minutos

Objetivos de Aprendizagem

  • Descrever o algoritmo PAIR: prompt do sistema atacante, refinamento iterativo, feedback em contexto.
  • Explicar por que o PAIR é estritamente mais eficiente que o GCG quando o alvo é de caixa-preta.
  • Nomear outras quatro linhas de base de ataques automatizados (GCG, AutoDAN, TAP, PAP) e apontar uma característica distintiva de cada um.
  • Descrever os protocolos de avaliação JailbreakBench e HarmBench e o que significa "taxa de sucesso de ataque" em cada um.

O Problema

O red-teaming costumava ser uma atividade manual. Um pequeno grupo de testadores especialistas construía prompts adversariais e rastreava quais funcionavam. Isso não escala: a taxa de sucesso de ataque precisa de uma amostragem estatística, e o alvo muda a cada lançamento de modelo. O PAIR operacionaliza o red-teaming como um problema de otimização com um alvo de caixa-preta.

O Conceito

Algoritmo PAIR

Entradas:

  • LLM Alvo T (o modelo que estamos atacando).
  • LLM Juiz J (avalia se uma resposta é um jailbreak).
  • LLM Atacante A (o otimizador de red-team).
  • String objetivo G: "responder com [instrução prejudicial]."
  • Orçamento K (normalmente 20 consultas).

Loop, para k de 1..K:

  1. A é provocado com o objetivo G e o histórico de pares (prompt, resposta) obtidos até o momento.
  2. A emite um novo prompt p_k.
  3. Enviar p_k para T; receber resposta r_k.
  4. J avalia (p_k, r_k) com base no objetivo.
  5. Se a nota >= limite, interrompe — jailbreak encontrado.
  6. Caso contrário, anexa (p_k, r_k) ao histórico de A; continua.

Resultado empírico (NeurIPS 2023): taxa de sucesso de ataque >50% contra GPT-3.5-turbo, Llama-2-7B-chat; média de consultas para obter sucesso na faixa de 10 a 20.

Por que o PAIR é eficiente

O GCG (Zou et al. 2023) realiza buscas em sufixos de tokens adversariais por gradiente; ele exige acesso ao modelo em caixa-branca e produz sufixos ilegíveis. O PAIR funciona em caixa-preta e produz ataques em linguagem natural que podem ser transferidos entre modelos. O feedback em contexto do PAIR permite que o atacante aprenda com cada rejeição; o GCG não possui equivalente (cada atualização de token precisa redescobrir o progresso anterior).

Ataques automatizados relacionados

  • GCG (Zou et al. 2023, arXiv:2307.15043). Busca por gradiente ao nível de token para sufixos adversariais. Caixa-branca, transferível, produz strings ilegíveis.
  • AutoDAN (Liu et al. 2023). Busca evolutiva sobre prompts, guiada por um objetivo hierárquico.
  • TAP (Mehrotra et al. 2024). Árvore de ataques com poda (tree-of-attacks with pruning) — ramifica múltiplas execuções no estilo PAIR.
  • PAP (Zeng et al. 2024). Prompts Adversariais Persuasivos — codifica técnicas de persuasão humana como templates de prompt.

JailbreakBench e HarmBench

Ambos (2024) padronizam a avaliação:

  • JailbreakBench (arXiv:2404.01318). 100 comportamentos prejudiciais divididos em 10 categorias da política da OpenAI. Taxa de sucesso de ataque (ASR) como métrica primária. Exige um juiz (GPT-4-turbo, Llama Guard ou StrongREJECT).
  • HarmBench (Mazeika et al. 2024). 510 comportamentos divididos em 7 categorias, com testes de danos semânticos e funcionais. Compara 18 ataques contra 33 modelos.

A ASR é geralmente relatada com base em um orçamento fixo de consultas. A comparação de ataques exige orçamentos equivalentes; uma ASR de 90% com 200 consultas não é comparável a uma ASR de 85% com 20.

Por que isso é importante para implantações em 2026

Todo laboratório de fronteira agora executa o PAIR e o TAP contra seus modelos de produção antes do lançamento. As trajetórias de ASR aparecem nos cartões de modelo (model cards) (Lição 26) e nos apêndices de casos de segurança (Lição 18). O ataque não é exótico — é infraestrutura padrão.

Onde isso se encaixa na Fase 18

A Lição 12 é a fundação de ataques automatizados. A Lição 13 (Jailbreak de Muitas Tentativas / Many-Shot Jailbreaking) é uma exploração complementar de comprimento. A Lição 14 (ASCII Art / Visual) é um ataque de codificação. A Lição 15 (Injeção Indireta de Prompt) é a superfície de ataque em produção de 2026. A Lição 16 aborda as ferramentas de contrapartida defensiva (Llama Guard, Garak, PyRIT).

Use-o

code/main.py constrói um loop PAIR simples. O alvo é um classificador simulado que recusa prompts prejudiciais "óbvios" (filtro de palavras-chave). O atacante é um refinador baseado em regras que tenta paráfrases, encenação (roleplay) e codificação. O juiz pontua a resposta. Você observa o atacante obter sucesso em ~5 a 15 iterações contra o filtro de palavras-chave e falhar contra o filtro semântico.

Envie

Esta lição produz outputs/skill-attack-audit.md. Dado o relatório de uma avaliação de red-team, ela audita: quais ataques foram executados (PAIR, GCG, TAP, AutoDAN, PAP), com qual orçamento cada um, com qual juiz e em qual conjunto de comportamentos prejudiciais (JailbreakBench, HarmBench, interno).

Exercícios

  1. Execute code/main.py. Meça o número médio de consultas para o sucesso em cada uma das três estratégias de ataque integradas. Explique qual suposição de defesa do alvo cada uma delas explora.

  2. Implemente uma quarta estratégia de atacante (por exemplo, tradução para outro idioma, codificação em base64). Relate a nova média de consultas para o sucesso contra o alvo com filtro de palavras-chave e contra o alvo com filtro semântico.

  3. Leia a Figura 5 de Chao et al. 2023 (comparação entre PAIR e GCG). Descreva dois cenários nos quais o GCG é preferível, apesar da vantagem de eficiência do PAIR.

  4. O JailbreakBench relata a ASR com base em um conjunto fixo de objetivos. Projete uma métrica adicional que meça a diversidade de ataques (variância nos prompts bem-sucedidos). Explique por que a diversidade é importante para a avaliação de defesas.

  5. O TAP (Mehrotra 2024) estende o PAIR com ramificação + poda. Esboce uma extensão no estilo TAP para code/main.py e descreva o custo computacional vs. a taxa de sucesso.

Termos-chave

Termo O que as pessoas dizem O que realmente significa
PAIR "jailbreak automatizado" Prompt Automatic Iterative Refinement; loop contendo LLM atacante + LLM juiz
GCG "jailbreak por gradiente" Busca por gradiente ao nível de token em caixa-branca para sufixos adversariais
Taxa de sucesso de ataque (ASR) "% de jailbreaks em k consultas" Métrica primária; deve ser informada com o orçamento de consultas e o juiz utilizado
LLM Juiz "o pontuador" LLM que avalia se uma resposta satisfaz o objetivo prejudicial
JailbreakBench "a avaliação" Conjunto padronizado de comportamentos prejudiciais com categorias etiquetadas
HarmBench "a benchmark amplo" 510 comportamentos, testes funcionais + semânticos de danos
TAP "árvore de ataques" PAIR com ramificação + poda; melhor ASR com maior custo computacional

Leitura Adicional

0 lifetime access. Curriculum based on AI Engineering from Scratch by Rohit Ghumare (MIT, used under attribution).