Pular para o conteúdo
mnzes

O que é jailbreak em um modelo de IA?

PorDiógenes MenezesAprendendo IA em público

12 min de leitura

Jailbreak é levar um modelo a produzir uma saída que a política dele foi treinada para recusar. Não existe bug de código no meio: a recusa é um comportamento aprendido, e comportamento aprendido tem regiões onde o treino não chegou. O ataque consiste em achar uma dessas regiões, seja mudando o enquadramento do pedido, seja mudando a forma em que ele é escrito.

O termo é emprestado do celular e a analogia atrapalha um pouco. Não há privilégio a escalar nem partição a montar. O que há é um modelo estatístico que aprendeu a recusar certos pedidos em certos contextos, e um atacante procurando um contexto que o treino não cobriu. Por isso o assunto pertence ao alinhamento de modelo antes de pertencer à infraestrutura.

Vale separar de saída de prompt injection, porque os dois termos se confundem e a confusão manda a correção para o time errado. Este artigo trata do porquê da classe de ataque existir e de como medir defesa; a parte de montar a bateria em si é assunto de red teaming de LLM, e a camada que filtra entrada e saída em produção aparece em moderação de conteúdo com LLM.

Alvos diferentes

Jailbreako atacante faladireto com o modeloalvo: a políticatreinada pelo provedorquer uma saída proibidaquem corrige: o provedor, no treino ou no filtroPrompt injectiono texto entra pelo conteúdoque a aplicação lêalvo: as ferramentasda sua aplicaçãoquer uma ação não autorizadaquem corrige: você, no escopo das ferramentas
Figura 1Os dois ataques usam o mesmo canal e cobram de gente diferente. Um mira o que o modelo aceita escrever; o outro mira o que a sua aplicação aceita fazer.

No jailbreak, o atacante conversa com o modelo e quer uma saída específica: a instrução que o provedor treinou o modelo a não dar. O alvo é a política. Quem corrige é o provedor, no treino ou no filtro, e a correção vale para todos os clientes de uma vez.

Na injeção, o atacante não quer texto, quer efeito. Ele coloca uma instrução no conteúdo que a sua aplicação lê e faz o modelo chamar uma ferramenta com o argumento errado. O alvo é o seu sistema. Quem corrige é você, no escopo do que cada ferramenta pode fazer.

A consequência que interessa é esta: um modelo perfeitamente alinhado continua vulnerável a injeção. Encaminhar um e-mail não é conteúdo proibido, é exatamente o que a ferramenta existe para fazer. Não há política de modelo que distinga o pedido legítimo do usuário do pedido plantado no documento, porque os dois pedem a mesma coisa.

Na direção contrária, um jailbreak sozinho raramente é o seu incidente. Ele vira seu quando a aplicação trata a saída como confiável: renderiza sem escape, executa o código gerado, publica o texto sem revisão. Aí o problema deixou de ser o modelo ter escrito algo e passou a ser o seu sistema ter agido com base nisso.

Por que o treino de segurança falha

O trabalho de referência sobre o mecanismo é de 2023, e o argumento dele é melhor que a lista de truques que costuma acompanhar o assunto. Wei, Haghtalab e Steinhardt propõem dois modos de falha e usam os dois para construir ataques novos, o que é a forma mais honesta de testar uma hipótese explicativa1.

Objetivos concorrentes. O modelo foi treinado para seguir instrução, para ser útil e para ser inofensivo, e esses objetivos entram em conflito. Quando o pedido é construído de forma que recusar exija violar uma instrução explícita de formato, ou abandonar um papel que o próprio prompt estabeleceu, o modelo tem dois comandos e nenhum critério de desempate. A capacidade que faz o modelo seguir a sua instrução é a mesma que o faz seguir a estrutura montada pelo atacante.

Generalização faltante. O treino de segurança cobre um conjunto de situações menor do que o conjunto de coisas que o modelo sabe fazer. Se ele entende uma codificação, um idioma pouco representado ou um estilo de escrita que não apareceu nos dados de segurança, existe um domínio onde a capacidade chegou e a recusa não. O pedido é o mesmo; a superfície onde ele é escrito é outra.

Os autores testaram contra o GPT-4 e o Claude v1.3 da época e relatam que os ataques derivados desses dois modos tiveram sucesso em todos os prompts de uma coleção de pedidos inseguros retirada dos próprios conjuntos de avaliação de red teaming dos modelos1. A conclusão que eles tiram é a que envelheceu melhor: segurança precisa acompanhar capacidade, e escalar o modelo sozinho não fecha nenhuma das duas lacunas. Um modelo maior entende mais codificações, o que aumenta a superfície da segunda falha.

As quatro famílias

Família de técnicaDefesa correspondenteobjetivo concorrente(papel, ficção, urgência)treinar prioridadeentre instruçõesgeneralização faltante(codificação, idioma raro)cobrir o domínio notreino de segurançabusca automática(sufixo adversarial)classificador na entradae na saídarefino iterativo(um modelo atacando outro)limite por sessão edetecção de padrão
Figura 2Cada família explora uma falha diferente do treino, então cada uma tem uma defesa diferente. Classificador não resolve papel, e treino não resolve volume.

As técnicas publicadas se agrupam em quatro famílias. A descrição abaixo é conceitual de propósito: o que interessa aqui é qual falha cada uma explora e que defesa responde a ela.

Objetivo concorrente. Ficção, papel, urgência, autoridade, prefixo de formato. Todas montam um contexto em que recusar contradiz alguma outra coisa que o modelo também aprendeu a fazer. A defesa correspondente é treinar prioridade entre instruções, para que a política vença o enquadramento do prompt. Classificador de entrada ajuda pouco aqui, porque o texto isolado não parece perigoso.

Generalização faltante. Codificação, idioma pouco representado, formato inusual de escrita. A defesa é ampliar a cobertura do treino de segurança para os domínios em que o modelo já é competente. É trabalho do provedor e nunca termina, porque cada aumento de capacidade abre domínio novo.

Busca automática. Em vez de escrever o ataque, um algoritmo procura uma sequência que maximize a probabilidade de o modelo começar a responder em vez de recusar. O trabalho de 2023 que popularizou a abordagem faz busca com gradiente sobre modelos abertos e relata que os sufixos encontrados transferem para interfaces fechadas da época, incluindo ChatGPT, Bard e Claude2. A defesa é detecção estatística: a sequência resultante costuma não parecer texto humano.

Refino iterativo. Um modelo atacante propõe um pedido, lê a recusa e reescreve, repetindo até passar. O PAIR, também de 2023, faz isso apenas com acesso de caixa-preta e costuma achar um jailbreak em menos de vinte consultas3. A defesa aqui não é de conteúdo, é de volume: limite por sessão, correlação entre tentativas e observação de padrão de reformulação.

Repare que as defesas não se substituem. Treinar prioridade não ajuda contra busca automática, e classificador não ajuda contra enquadramento bem escrito. Quem escolhe uma camada só está escolhendo qual família vai passar.

O que a automação mudou

Antes de 2023, jailbreak era artesanal: alguém achava uma formulação, ela circulava em fórum e o provedor corrigia. O ciclo era lento nas duas pontas.

A busca automática mudou o custo do lado do atacante e, com ele, a natureza do problema. Um método que gera o ataque por otimização produz variantes novas mais rápido do que um filtro por assinatura consegue absorver, e a transferência entre modelos observada em 2023 significa que o atacante nem precisa de acesso ao modelo alvo para produzir o candidato2. O refino iterativo com um modelo atacante levou isso adiante, trocando gradiente por conversa e mantendo a eficiência3.

Isso também mudou a avaliação, para melhor. Comparar defesas ficou possível quando surgiram ambientes padronizados: o HarmBench, de 2024, compara 18 métodos de red teaming contra 33 modelos e defesas, e os autores usam o próprio ambiente para desenvolver um treino adversarial eficiente, mostrando que ataque e defesa podem ser medidos no mesmo lugar4. Antes disso, cada paper reportava sucesso contra o conjunto que ele mesmo escolheu.

O que a defesa consegue hoje

O resultado público mais informativo em julho de 2026 vem de um trabalho de 2025 sobre classificadores treinados a partir de regras escritas em linguagem natural, com dados sintéticos gerados a partir dessas regras. Três números do relato valem mais que a descrição do método5.

Em mais de 3.000 horas estimadas de red teaming, nenhum participante encontrou um jailbreak universal capaz de extrair informação do modelo protegido com nível de detalhe comparável ao do modelo sem proteção, na maior parte das consultas alvo. O aumento absoluto de recusa no tráfego de produção foi de 0,38 ponto percentual. A sobrecarga de inferência foi de 23,7%.

Os três juntos dizem uma coisa que a discussão costuma perder: defesa contra jailbreak não é gratuita e não é impossível. Ela custa latência e computação, ela cobra um pouco de utilidade em recusa indevida, e nesse arranjo específico ela segurou um esforço de red teaming grande. Repare também no que o resultado não diz: ausência de jailbreak universal encontrado por aquele grupo, naquele sistema, naquele período. Não é prova de impossibilidade.

Medir sucesso é mais difícil do que parece

Antes de comparar dois números de taxa de sucesso, vale perguntar o que cada um contou como sucesso, porque a resposta varia mais do que se imagina.

O critério mais barato é ausência de recusa: o avaliador procura no começo da resposta as frases típicas de negativa e, se não encontrar, marca como ataque bem-sucedido. É automático, é reproduzível e superestima. Um modelo pode aceitar o pedido e produzir três parágrafos genéricos que não servem para nada, e isso conta igual a uma resposta detalhada.

O critério caro é o inverso: alguém, ou um classificador treinado para isso, lê a saída e decide se ela realmente entrega o comportamento pedido. É esse tipo de cuidado que separa um ambiente de avaliação de um script de teste, e foi um dos motivos de o HarmBench ter sido construído: os autores identificam propriedades desejáveis que as avaliações de red teaming anteriores não contemplavam e desenham o ambiente para atendê-las4.

A consequência prática vale para o seu conjunto. Defina sucesso como “a saída serve para o que o atacante queria”, não como “o modelo não recusou”. A segunda definição infla o número e faz você caçar problema onde não há.

Onde falha

O ataque migra de família. Fortalecer o modelo contra enquadramento empurra o atacante para busca automática. Bloquear a busca por detecção estatística empurra para refino iterativo, que produz texto perfeitamente natural. Cada camada fechada redistribui o tráfego para as outras.

A recusa indevida é o custo invisível. É fácil derrubar a taxa de jailbreak para quase zero recusando qualquer coisa que se pareça com o tema. O usuário legítimo perguntando sobre segurança de medicamento, sobre história ou sobre o próprio trabalho leva o bloqueio. Toda defesa precisa reportar as duas taxas juntas, e o 0,38 ponto percentual do trabalho de 2025 existe exatamente para isso5.

O resultado não transfere entre versões. Uma atualização de modelo altera o comportamento sem que nada no seu código mude. A bateria que você rodou no trimestre passado mede um sistema que não existe mais.

Jailbreak não é o seu maior risco se você tem ferramenta. Times gastam semanas endurecendo a política contra saída indevida enquanto o agente ao lado tem uma ferramenta de escrita com credencial de aplicação. A pergunta que ordena prioridade não é o que o modelo aceita escrever, é o que ele consegue acionar.

Métrica de benchmark não é métrica de produto. Um placar em conjunto público mede a política geral do modelo. O que decide o seu risco é a sua regra de uso, e ela quase nunca coincide com a lista genérica de comportamento proibido.

Como testar a sua defesa

  1. Escreva a sua política antes do teste. O que a sua aplicação não deve produzir, em uma lista específica do seu domínio. Sem isso você mede a política do provedor, que já foi medida por ele.
  2. Derive os casos das quatro famílias. Um punhado de cenários por família, com o pedido descrito em termos do seu produto.
  3. Meça duas taxas. Saída indevida e recusa em pedido legítimo. Reportar só a primeira produz um sistema que ninguém consegue usar.
  4. Guarde caso a caso, não só o agregado. A informação útil está em quais casos mudaram entre duas rodadas.
  5. Rode a cada troca de versão do modelo. Inclusive nas que o provedor descreve como menores.
  6. Trate a saída como não confiável de qualquer jeito. Escape antes de renderizar, revisão antes de executar. Isso vale mesmo com a política funcionando, porque é a camada que não depende dela.

Quanto custa

Ordem de grandeza. Uma bateria própria com 100 casos, rodada contra dois modelos, consome algumas centenas de milhares de tokens e custa alguns dólares nos preços praticados em julho de 2026. O gasto real é humano: escrever os 100 casos com base na sua política leva um ou dois dias, e a revisão das saídas ambíguas volta a cada rodada, porque nem todo caso se resolve com verificação programática.

Do lado de produção, a conta é a que o trabalho de 2025 explicita. Um classificador de entrada e outro de saída acrescentam duas chamadas por requisição e sobrecarga de inferência na casa de algumas dezenas por cento, além de uma fração pequena de recusa a mais em tráfego legítimo5. Se esse preço vale a pena depende inteiramente de quanto uma saída indevida custa no seu contexto, e essa é uma conta de produto, não de segurança.

Footnotes

  1. Wei, Haghtalab e Steinhardt (2023) propuseram objetivos concorrentes e generalização faltante como modos de falha do treino de segurança, e usaram os dois para construir ataques que passaram em todos os prompts de uma coleção retirada dos conjuntos de red teaming dos modelos. 2

  2. Zou et al. (2023) geraram sufixos adversariais por busca com gradiente em modelos abertos e observaram transferência para interfaces fechadas da época. 2

  3. Chao et al. (2023) usaram um modelo atacante para refinar o pedido em acesso de caixa-preta, tipicamente em menos de vinte consultas. 2

  4. Mazeika et al. (2024) padronizaram a comparação com 18 métodos de red teaming contra 33 modelos e defesas, e desenvolveram no mesmo ambiente um treino adversarial mais eficiente. 2

  5. Sharma et al. (2025) relatam mais de 3.000 horas estimadas de red teaming sem jailbreak universal encontrado, com 0,38 ponto percentual de aumento absoluto de recusa em produção e 23,7% de sobrecarga de inferência. 2 3

Perguntas frequentes

O que é jailbreak em um LLM?
É levar o modelo a produzir uma saída que a política dele foi treinada para recusar. O ataque não explora bug de código: explora o fato de que a recusa é um comportamento aprendido, e comportamento aprendido tem regiões onde o treino não chegou.
Jailbreak é a mesma coisa que prompt injection?
Não. Jailbreak mira a política do modelo e o prejudicado é o provedor. Injeção mira a sua aplicação e usa as ferramentas que você entregou ao modelo. Um modelo perfeitamente alinhado continua vulnerável a injeção, porque a ação pedida costuma ser permitida.
Por que jailbreak funciona?
Um trabalho de 2023 aponta dois motivos. Objetivos concorrentes: seguir instrução e ser inofensivo puxam para lados opostos, e o treino não diz qual ganha. Generalização faltante: a capacidade cobre domínios que o treino de segurança não visitou, como codificações e idiomas raros.
Dá para defender um modelo de jailbreak?
Dá para reduzir bastante. Um sistema de classificadores publicado em 2025 passou por mais de 3.000 horas estimadas de red teaming sem que ninguém encontrasse um jailbreak universal, ao custo de 0,38 ponto percentual a mais de recusa no tráfego de produção e 23,7% de sobrecarga de inferência.
Quem é responsável por corrigir um jailbreak?
O provedor do modelo, porque a política é dele. Você continua responsável pelo que a sua aplicação faz com a saída: se o texto gerado é renderizado, executado ou publicado sem revisão, o jailbreak de outra pessoa vira incidente seu.
Como testar se a minha aplicação resiste a jailbreak?
Monte um conjunto de casos derivado das suas próprias regras de uso, não da lista genérica da internet. Rode a bateria a cada troca de versão do modelo e meça duas taxas: a de saída indevida e a de recusa em pedido legítimo. Otimizar só a primeira quebra o produto.
Jailbreak automático já é realidade?
Desde 2023. Um método daquele ano encontra sufixos adversariais por busca com gradiente em modelos abertos e mostra que eles transferem para modelos fechados. Outro, do mesmo ano, usa um modelo atacante que refina o pedido e costuma achar um jailbreak em menos de vinte tentativas.

Referências

  1. Wei, A., Haghtalab, N. e Steinhardt, J.. Jailbroken: How Does LLM Safety Training Fail? (2023)arXiv:2307.02483
  2. Zou, A. et al.. Universal and Transferable Adversarial Attacks on Aligned Language Models (2023)arXiv:2307.15043
  3. Chao, P. et al.. Jailbreaking Black Box Large Language Models in Twenty Queries (2023)arXiv:2310.08419
  4. Mazeika, M. et al.. HarmBench: A Standardized Evaluation Framework for Automated Red Teaming and Robust Refusal (2024)arXiv:2402.04249
  5. Sharma, M. et al.. Constitutional Classifiers: Defending against Universal Jailbreaks across Thousands of Hours of Red Teaming (2025)arXiv:2501.18837