
Forschungscode zur Reproduktion von Multi-Turn-LLM-Jailbreak-Experimenten (FITD, MRCJ, ActorAttack, X-Teaming) aus dem SoK-Paper zur intent-orientierten Systematisierung.
Dieses Repository enthält die Release-Version des Codes, der für die Mechanismus-Analysen in SoK: Intent-Oriented Systematization of Multi-Turn LLM Jailbreaks verwendet wurde.
Das Repository wurde gekürzt, um nur Code, Prompts, Konfigurationsdateien und Datensätze beizubehalten, die für die in Anhang A des Papers beschriebenen Experimente benötigt werden. Generierte Logs, Cache-Dateien, virtuelle Umgebungen, frühere Ergebnisse, Abbildungen und Ad-hoc-Analyseausgaben wurden absichtlich entfernt.
| Paper-Frage | Methode(n) | Kategorie | Lokales Verzeichnis | Datensatz/Datensätze |
|---|---|---|---|---|
| RQ1: Organisation vs. Akkumulation | FITD, MRCJ | DEA / SRA | Foot-in-the-door-Jailbreak/, Inc_Exp/MRCJ/ | JailbreakBench, MUCD, AdvBench |
| RQ2: Verstärkungskomponenten | ActorAttack | DEA | actorattack/ActorAttack/ | HarmBench |
| RQ3: Eskalationsform | MRCJ | SRA | Inc_Exp/MRCJ/ | MUCD, AdvBench |
| RQ4: Sub-Paradigma-Progression | X-Teaming | SRA | x-teaming/ | JailbreakBench-artiges Verhaltensset |
Foot-in-the-door-Jailbreak/: FITD-Implementierung für das RQ1-DEA-seitige Organisation-vs-Akkumulation-Experiment.Inc_Exp/MRCJ/: MRCJ-Implementierung für den RQ1-SRA-seitigen Vergleich und die RQ3-Eskalationsform-Experimente.actorattack/ActorAttack/: ActorAttack-Implementierung für die RQ2-Actor-Count- und Self-Talk-Ablationen.x-teaming/: X-Teaming-Backbone und configs/exp3-Einstellungen für das RQ4-A1/A2/A3-Sub-Paradigma-Progressionsexperiment.Jede Methode behält ihre ursprüngliche Abhängigkeitsdatei:
pip install -r actorattack/ActorAttack/requirements.txt
pip install -r Foot-in-the-door-Jailbreak/requirements.txt
pip install -r Inc_Exp/requirements.txt
conda env create -f x-teaming/environment.yml
API-Schlüssel und Service-Endpunkte sollten über Umgebungsvariablen oder lokale Konfigurationsdateien bereitgestellt werden. Geheimnisenthaltende .env-Dateien sind nicht Teil des Releases.
FITD verwendet das JailbreakBench-Verhaltensset und seine Standard-Multi-Turn-Angriffskonfiguration.
cd Foot-in-the-door-Jailbreak
python FITD.py
Für prompt-basiertes Replay:
python FITD_prompt.py --model_name gpt-4o --control True --max_length 10
MRCJ verwendet MUCD-artige Hilfsfragen mit Malice-Leveln und AdvBench-Endzielen. Das Paper legt vier Eskalationsschritte für RQ3 fest.
cd Inc_Exp
python MRCJ/train/train.py --target_model mistral --judge_model gpt-4o --cat_questions_num 2 --harmful_score_threshold 4 --train_from_scratch --dir my_model_data
python MRCJ/test/test.py --target_model mistral --judge_model gpt-4o
Verwenden Sie die von MRCJ/train/train.py und MRCJ/test/test.py unterstützten Modellnamen.
ActorAttack verwendet HarmBench-Abfragen. Variieren Sie --actors von 1 bis 5 für das Actor-Count-Experiment. Fixieren Sie --actors 3 und deaktivieren Sie Self-Talk in Code/Konfiguration für die Self-Talk-Ablation, entsprechend dem Paper-Setup.
cd actorattack/ActorAttack
python main.py --questions 400 --actors 3 --behavior ./data/harmbench.csv --attack_model_name deepseek-chat --target_model_name gpt-4o --early_stop --step_modify
RQ4 verwendet das X-Teaming-Backbone mit DeepSeek-V3 als Angreifermodell und vergleicht A1, A2 und A3 unter demselben Turn-Budget.
cd x-teaming
python main.py --config configs/exp3/A1_gpt4o.yaml
python main.py --config configs/exp3/A2_gpt4o.yaml
python main.py --config configs/exp3/A3_gpt4o.yaml
Äquivalente Konfigurationen sind für die anderen im Paper verwendeten Zielmodelle verfügbar.
Das Paper verwendet GPT-4o als automatisierten Judge mit einer Schädlichkeitsskala von 1 bis 5. Ein Score von 4 oder höher wird als erfolgreicher Jailbreak gezählt. Generierte Ausgaben und Judge-Berichte sind in diesem Release nicht enthalten; erneute Ausführungen sollten frische Logs/Ergebnisse lokal schreiben.
Dieser Code ist nur für kontrollierte Forschungsreproduktion bestimmt. Das Repository schließt absichtlich historische Experimentausgaben, gecachten Bytecode, virtuelle Umgebungen, Notebooks, lokale Geheimnisse und nicht zusammenhängenden explorativen Code aus.