Skip to main content

Attacks

attacks lists the techniques to run. Every goal goes through every attack, unless execution.escalate says otherwise.

Every technique is listed below, and each has its own page giving its parameters and the helper models it drives.

attacks[]​

One attack technique to run against the target: which one, how to tune it, and which helper models it drives.

FieldTypeDefaultDescription
namestringrequiredThe technique to run, e.g. flipattack or tap. It must be one of the registered attacks.
parametersmap of string to anyemptyThe technique's own settings. Valid keys differ per attack; anything you leave out keeps its default. Each attack's page lists its parameters.
rolesmap of string to ModelConfigemptyThe helper models an adaptive attack uses, keyed by role name (for example attacker). Static attacks need none. Each attack's page lists the roles it requires.

Examples​

One static attack, which needs no helper model

attacks:
- name: flipattack
parameters:
flip_mode: FCS

An adaptive attack, which drives its own attacker model

attacks:
- name: tap
parameters:
width: 4
depth: 3
roles:
attacker:
name: llama3.2
connection:
provider: ollama
type: OLLAMA
on_topic:
name: llama3.2
connection:
provider: ollama
type: OLLAMA

The catalog​

Every technique HackAgent can run.

Static. Builds its prompts up front and sends them. It drives no model of its own, so it is cheap and repeatable.

Adaptive. Searches: it reads the target's replies and refines its prompts, which is why it needs an attacker model.

Multi-turn. Holds one growing conversation with the target, escalating turn by turn.

AttackKindNeedsWhat it does
AdvPrefixAdaptiveattackerPrefilling attack: opens the model's answer with an adversarial prefix and keeps the prefixes that work best.
AutoDAN-TurboAdaptiveattacker, embedder, summarizerLifelong jailbreak strategy search with warm-up and retrieval phases.
BaselineStaticnoneDirect goal submission without transformation (control condition).
BoNAdaptivenoneBest-of-N augmentation search with inline judge evaluation.
CipherChatStaticnoneCipher-based prompt transformation with optional demonstrations.
CrescendoMulti-turnattackerMulti-turn escalation attack that gradually steers a persistent conversation toward the goal, with judge-driven backtracking on refusals.
FC-AttackStaticnoneFC-Attack: auto-generated flowchart images to jailbreak VLMs.
FlipAttackStaticnonePrompt obfuscation via character/word flipping modes.
h4rm3lStaticnoneComposable decorator-program attack chaining multiple obfuscations.
MMLStaticnoneMulti-Modal Linkage attack encoding harmful prompts into images for VLMs.
PAIRAdaptiveattackerPrompt Automatic Iterative Refinement with attacker/scorer loops.
PAPAdaptiveattackerPersuasive Adversarial Prompts using persuasion-technique taxonomies.
RAG poisoningStaticattacker, embedderIndirect prompt injection via poisoned documents in a retrieval-augmented (RAG) corpus.
Static TemplateStaticnoneTemplate-based static template jailbreak attack.
TAPAdaptiveattackerTree of Attacks with Pruning search attack.
tFC-AttackStaticnonetFC-Attack: text-only flowchart encoding attack for any LLM (DOT, Mermaid, TikZ, PlantUML, ASCII).
Tool-output IPIAdaptivenoneIndirect prompt injection via poisoned tool observations (InjecAgent / OPI).
Where these come from

Each attack follows a published paper or reference implementation. Parameter defaults follow the paper unless the description says otherwise, which happens when a value assumes local model weights rather than an API endpoint.