EndlessCao/Overthink-HGA
GitHub: EndlessCao/Overthink-HGA
基于分层遗传算法的黑盒 LLM 推理模型 DoS 攻击框架,通过演化对抗性 prompt 诱导模型过度思考以浪费计算资源。
Stars: 5 | Forks: 0
# 诱导过度思考:基于分层遗传算法的黑盒大型语言推理模型 DoS 攻击
[](https://arxiv.org/abs/2605.13338)
[](https://icml.cc/)
本仓库包含论文**《诱导过度思考:基于分层遗传算法的黑盒大型语言推理模型 DoS 攻击》**的官方实现,该论文已被 **ICML 2026** 接收。
## 概述
本项目实现了一个分层遗传算法(GA),旨在对黑盒大型语言推理模型发起拒绝服务(DoS)攻击。通过策略性地在目标模型中诱发“过度思考”,该攻击能显著增加生成的推理 token 数量,从而浪费计算资源并导致 DoS。
核心算法通过演化输入的数学问题(例如,通过拆分、交叉和突变前提条件)来寻找最优的对抗性 prompt,从而促使目标 LLM 产生最大数量的推理 token。
## 安装说明
本项目基于 Python 3.10+ 构建,并使用 `uv` 或 `pip` 进行依赖管理。
```
# Clone 仓库
git clone https://github.com/EndlessCao/Overthink-HGA.git
cd Overthink-HGA
# 使用 pip (或 uv) 安装 dependencies
pip install -r pyproject.toml
# 或者直接
pip install openai python-dotenv numpy swanlab
```
## 配置
该框架为攻击者(提出问题变体)和目标(被攻击者)使用了不同的模型。您需要为两者配置 API 访问权限。
复制 `.env.example` 文件来创建您的 `.env` 文件:
```
cp .env.example .env
```
使用适当的 API 端点和密钥更新您的 `.env` 文件:
```
TARGET_BASE_URL=https://api.openai.com/v1
TARGET_API_KEY=your_target_api_key_here
ATTACKER_BASE_URL=https://api.openai.com/v1
ATTACKER_API_KEY=your_attacker_api_key_here
```
## 使用说明
要使用遗传算法在示例数据集(如 `svamp_test.json`)上启动测试运行,只需运行 `main.py` 脚本:
```
python main.py
```
该脚本将:
1. 从数据集中加载初始数学问题。
2. 使用特定的种群规模和繁衍代数限制初始化 `GeneAttacker`。
3. 迭代演化问题,并使用 [SwanLab](https://swanlab.cn/) 跟踪适应度(token 数量和过度思考惩罚)。
4. 输出导致目标模型出现最严重过度思考的对抗性 prompt。
## 仓库结构
- `main.py`:运行遗传算法攻击的入口点。
- `algorithm.py`:`GeneAttacker` 和遗传算子(选择、交叉、突变)的核心实现。
- `model.py`:`TargetModel` 和 `AttackerModel` 的 API 封装。
- `prompts.py`:攻击者模型用于拆分/突变问题的 prompt 模板。
- `types.py`:结构化问题(`MathProblem`、`Problem`)的定义。
- `utils.py`:用于读取和采样数据集的实用工具。
- `algorithm_concept_design.md`:算法的理论设计与解释(英文)。
## 引用
如果您的研究中发现我们的工作有用,请考虑引用我们的论文:
```
@article{overthink_dos_2026,
title={Inducing Overthink: Hierarchical Genetic Algorithm-based DoS Attack on Black-Box Large Language Reasoning Models},
author={Shuqiang Wang and Wei Cao and Jiaqi Weng and Jialing Tao and Licheng Pan and Hui Xue and Zhixuan Chu},
journal={arXiv preprint arXiv:2605.13338},
year={2026}
}
```
标签:DLL 劫持, Petitpotam, 人工智能, 大语言模型, 安全测试, 拒绝服务攻击, 攻击性安全, 用户模式Hook绕过, 逆向工具, 遗传算法, 配置错误