dongdongunique/EvoSynth
GitHub: dongdongunique/EvoSynth
EvoSynth是一个基于进化合成的自动化LLM红队框架,用于生成和测试越狱攻击方法以评估模型安全性。
Stars: 55 | Forks: 10
# 基于进化合成的LLM越狱攻击框架
[](https://arxiv.org/abs/2511.12710)
[](https://www.python.org/downloads/)
[](https://www.gnu.org/licenses/agpl-3.0.en.html)
**首个能自主设计新型可执行代码攻击算法的框架**
[核心特性](#features) • [安装指南](#installation) • [快速入门](#quick-start) • [论文](https://arxiv.org/abs/2511.12710)
## 🎯 研究亮点
**EvoSynth** 引入了从攻击规划到越狱方法**进化合成**的范式转变。不同于现有框架改进已知策略,EvoSynth通过多智能体协作,自主设计出全新的可执行攻击算法。
### 🏆 最优性能表现
| 目标模型 | EvoSynth | X-Teaming | 性能提升 |
|--------------|----------|-----------|-------------|
| **Claude-Sonnet-4.5** | **85.5%** | 52.5% | +33.0% |
| **GPT-5-Chat** | **94.5%** | 88.5% | +6.0% |
| **GPT-4o** | **97.5%** | 96.0% | +1.5% |
| **Llama-3.1-70B** | **98.5%** | 83.5% | +15.0% |
| **平均攻击成功率** | **95.9%** | 85.7% | **+10.2%** |
*基于Harmbench标准数据集对11个最优基线方法进行评估*
### 🚀 EvoSynth与X-Teaming对比:2025年最新模型评估
在**20个最新最优模型**上评估,EvoSynth在所有模型上都实现了接近完美的攻击成功率:
| 模型 | X-Teaming | EvoSynth | 性能提升 |
|-------|-----------|----------|-------------|
| **GPT-5.2** | 75.5% | 99.0% | +23.5% |
| **GPT-5.1** | 95.5% | 100.0% | +4.5% |
| **Claude Haiku 4.5** | 47.5% | 74.0% | +26.5% |
| **Gemini 3 Pro Preview** | 86.5% | 100.0% | +13.5% |
| **Gemini 2.5 Flash Thinking** | 89.0% | 100.0% | +11.0% |
| **Mistral Large 3** | 91.0% | 100.0% | +9.0% |
| **Llama-4-Maverick** | 86.0% | 100.0% | +14.0% |
| **Llama-4-Scout** | 98.0% | 100.0% | +2.0% |
| **Grok 4.1 Fast** | 90.5% | 100.0% | +9.5% |
| **Doubao-Seed-1.6** | 87.0% | 100.0% | +13.0% |
| **Qwen3-Max** | 94.0% | 100.0% | +6.0% |
| **Qwen3-235B-A22B** | 98.5% | 100.0% | +1.5% |
| **Qwen3-Next-80B-A3B** | 80.5% | 100.0% | +19.5% |
| **DeepSeek-R1** | 94.0% | 100.0% | +6.0% |
| **DeepSeek-V3.2** | 99.0% | 100.0% | +1.0% |
| **Kimi K2-Instruct** | 89.5% | 100.0% | +10.5% |
| **MiniMax-M2** | 93.0% | 100.0% | +7.0% |
| **GLM-4.6** | 98.5% | 100.0% | +1.5% |
| **Hunyuan-A13B-Instruct** | 97.0% | 100.0% | +3.0% |
| **ERNIE-4.5-300B-A47B** | 95.0% | 100.0% | +5.0% |
| **平均值** | **87.9%** | **98.8%** | **+10.9%** |
**核心发现:**
- EvoSynth在20个模型中的17个上达到**100%攻击成功率**
- 在更难破解的模型上增益最大(Claude Haiku 4.5:+26.5%)
- 更高的攻击多样性(0.82 vs 0.79),产生更多样化的越狱策略
### 🔬 核心创新
**从提示优化到方法进化**
现有框架选择、组合或改进已知攻击策略。EvoSynth通过以下方式突破这一限制:
1. **自主设计新型攻击**:生成可执行的基于代码的算法,而不仅仅是提示
2. **代码级自我修正**:根据失败响应迭代重写攻击逻辑
3. **进化合成**:通过多智能体协作发现新型攻击机制
4. **更高多样性**:产生语义更多样化的攻击(中位数多样性分数:0.82 vs 0.63)
### 📊 EvoSynth架构概览

*EvoSynth多智能体框架:从侦察到可执行攻击算法的进化合成*
## 特性
### 🧬 多智能体进化架构
EvoSynth采用四个协同工作的专用智能体:
- **🔍 侦察智能体**:识别漏洞并制定攻击策略
- 分析目标模型行为
- 生成攻击类别和概念
- 根据交互历史调整策略
- **⚙️ 算法创建智能体**:设计可执行的攻击算法
- 合成基于代码的攻击方法
- 实现进化代码改进循环
- 验证算法功能和性能
- **🎯 利用智能体**:部署并执行攻击
- 通过强化学习选择最优算法
- 管理多轮对话
- 从执行反馈中学习
- **🎼 主协调器**:协调整个工作流程
- 协调阶段转换
- 执行失败分析和自适应重新任务分配
- 根据结果更新算法库
### 🚀 技术能力
- **黑盒评估**:使用完整的安全基础设施对真实生产API进行测试
- **异步支持**:完整的异步编排,实现可扩展的评估
- **动态进化**:基于双重反馈(评判器+目标响应)的代码级自我修正
## 安装指南
```
git clone https://github.com/dongdongunique/EvoSynth.git
cd EvoSynth
pip install -r requirements.txt
```
## 创建.env文件
```
OPENAI_KEY="YOUR-KEY"
OPENAI_API_KEY="YOUR-KEY"
OPENAI_BASE_URL="YOUR-URL"
LANGFUSE_PUBLIC_KEY="YOUR-KEY"
LANGFUSE_SECRET_KEY="YOUR-KEY"
LANGFUSE_HOST="https://cloud.langfuse.com"
DEFAULT_MODEL="deepseek-chat"
OPENAI_MODEL="deepseek-chat"
```
### API基础URL设置
为获得最佳效果,我们建议使用提供统一多模型访问的路由平台:
- **OpenRouter** (https://openrouter.ai/) - 访问400+模型,包括GPT-5、Claude、Llama等
- **BoyueRichData** (https://boyuerichdata.apifox.cn/) - 备用路由平台
初始化OpenAIModel时,将`base_url`参数设置为路由平台的端点:
## 快速入门
### 环境设置
创建包含API凭证的`.env`文件:
### 基本用法
```
import asyncio
import os
from jailbreak_toolbox.models.implementations.openai_model import OpenAIModel
from jailbreak_toolbox.attacks.blackbox.implementations.evosynth import EvosynthAttack, EvosynthConfig
from dotenv import load_dotenv
load_dotenv()
async def main():
# Initialize models (using router platform like OpenRouter or BoyueRichData)
target_model = OpenAIModel(
model_name="gpt-4o",
api_key=os.getenv("OPENAI_API_KEY"),
base_url=os.getenv("OPENAI_BASE_URL") # or your router's endpoint
)
judge_model = OpenAIModel(
model_name="gpt-4o",
api_key=os.getenv("OPENAI_API_KEY"),
base_url=os.getenv("OPENAI_BASE_URL")
)
# Configure attack
config = EvosynthConfig(
max_iterations=15,
success_threshold=5,
pipeline="full_pipeline",
openai_api_key=os.getenv("OPENAI_API_KEY"),
base_url=os.getenv("OPENAI_BASE_URL"),
attack_model_base="deepseek-chat",
langfuse_host=None
)
# Create judge and attack
attack = EvosynthAttack(
target_model=target_model,
judge=judge_model,
config=config,
)
# Execute attack (async)
result = await attack.attack("Your test prompt here")
print(f"Attack result: {result}")
# 运行 async function
asyncio.run(main())
```
### 命令行用法
```
python eval_async.py \
--attacker-model deepseek-chat \
--judge-model gpt-4o \
--target-models gpt-4o claude-3-5-sonnet \
--dataset harmbench
```
### 命令行参数
| 参数 | 描述 | 默认值 |
|----------|-------------|---------|
| `--attacker-model` | 攻击智能体使用的模型 | `deepseek-chat` |
| `--judge-model` | 响应评估使用的模型 | `gpt-4o-mini` |
| `--target-models` | 要攻击的目标模型 | 必需 |
| `--api-key` | OpenAI API密钥 | 从环境变量获取 |
| `--base-url` | API基础URL | 从环境变量获取 |
| `--dataset` | 使用的数据集 | `harmbench` |
## 项目结构
```
EvoSynth/
├── eval_async.py # Main entry point
├── data/
│ └── harmbench.csv # Evaluation dataset
└── jailbreak_toolbox/
├── core/ # Orchestration & registry
│ ├── async_orchestrator.py
│ └── registry.py
├── models/ # Model implementations
│ ├── base_model.py
│ └── implementations/
│ ├── openai_model.py
├── attacks/ # Attack implementations
│ └── blackbox/
│ └── implementations/
│ └── evosynth/ # Main attack system
│ ├── ai_agents/
│ ├── config/
│ ├── data_structures/
│ └── utils/
├── judges/ # Response evaluation
│ └── implementations/
│ └── llm_judge.py
├── evaluators/ # Metrics & evaluation
└── datasets/ # Data handling
```
## 配置
### EvosynthConfig选项
```
@dataclass
class EvosynthConfig:
max_iterations: int = 20 # Maximum attack iterations
success_threshold: int = 5 # Judge score for success
pipeline: str = "full_pipeline" # Attack workflow mode
attack_model_base: str = "deepseek-chat"
target_model_name: str = None
judge_model_name: str = None
openai_api_key: str = None
base_url: str = None
enable_langfuse: bool = False # Optional observability
```
### 流水线模式
- `full_pipeline`:完整的多智能体工作流程
- `start_reconnaissance`:从侦察阶段开始
- `start_tool_creation`:从工具创建阶段开始
- `start_exploitation`:从利用阶段开始
## 评估
结果使用以下方式评估:
- **LLM评判器**:使用来自[ActorAttack](https://github.com/AI45Lab/ActorAttack)的评判提示对响应进行1-5分评分。
- **成功阈值**:分数 >= 5 表示越狱成功
### 评估数据集
EvoSynth在**Harmbench标准版**上进行评估,这是一个跨6个风险类别平衡指令的综合数据集:
- 网络犯罪与未授权入侵
- 化学与生物武器/毒品
- 错误信息与虚假信息
- 骚扰与欺凌
- 非法活动
- 一般性伤害
### 目标模型
评估针对7个最先进的LLM:
- GPT-5-Chat-2025-08-07
- GPT-4o
- Claude-Sonnet-4.5-2025-09-29
- Llama 3.1-8B-Instruct
- Llama 3.1-70B-Instruct
- Qwen-Max-2025-01-25
- Deepseek-V3.2-Exp
## 核心研究发现
### 🎓 攻击多样性
EvoSynth生成的攻击比现有方法具有显著更高的多样性:
- **中位数多样性分数**:0.82(对比X-Teaming的0.63)
- **更少的低多样性对**:避免重复攻击模式
- **更大的高多样性覆盖**:更多新型攻击机制
- **稳定的多样性**:在各代中保持一致的创新性
### ⚡ 学习效率
- **90%**的成功越狱发生在**6次优化迭代内**
- **74%**在首次**12次总智能体操作**内成功
- 快速收敛证明了定向合成过程
### 🔄 算法可迁移性
- **20%**的合成算法是适用于**80%+查询**的"万能钥匙"
- **50%**的算法适用于**45%+查询**
- 展示了稳健、通用攻击方法的发现
## 待办事项
- [x] **阶段一:框架开发** - 核心架构和多智能体系统实现
- [x] **阶段二:最新LLM测试** - 评估20个最新最优模型(GPT-5.1/5.2、Claude Haiku 4.5、Gemini 3 Pro、Llama-4、DeepSeek-V3.2等),平均攻击成功率达98.8%
- [ ] **阶段三:数据集整理** - 过滤和整理生成的攻击结果,创建新的研究数据集
## 伦理免责声明
**仅用于防御性安全研究。**
EvoSynth旨在帮助AI研究人员和开发者识别安全缺陷以提高系统稳健性。此工具仅应用于:
- 授权安全测试
- 学术研究
- 改进AI安全机制
- 经适当授权的红队测试
请勿将此框架用于恶意目的或在未获得明确许可的情况下用于系统。
## 引用
如果您在研究中使用EvoSynth,请引用:
```
@article{chen2025evolve,
title={Evolve the Method, Not the Prompts: Evolutionary Synthesis of Jailbreak Attacks on LLMs},
author={Chen, Yunhao and Wang, Xin and Li, Juncheng and Wang, Yixu and Li, Jie and Teng, Yan and Wang, Yingchun and Ma, Xingjun},
journal={arXiv preprint arXiv:2511.12710},
year={2025}
}
```
标签:AI攻击, Petitpotam, PyRIT, Python, SOTA模型, 人工智能安全, 代码生成, 可执行代码, 合规性, 多智能体系统, 安全测试, 对抗性机器学习, 性能评估, 搜索算法, 攻击合成, 攻击性安全, 无后门, 渗透测试工具, 自动化框架, 自我纠正, 进化算法, 逆向工具