werywjw/Prompt-Injection

GitHub: werywjw/Prompt-Injection

该项目研究并评估大语言模型对提示注入攻击的脆弱性,提出了考虑不确定性的攻击成功概率(ASP)评估指标,并提供了多种攻击方法的自动化评测脚本。

Stars: 0 | Forks: 2

# 从 ASR 到 ASP ## 摘要
最近的研究表明,大型语言模型(LLMs)容易受到生成有害或敏感输出的攻击。随着开源 LLMs 越来越多地被应用于金融、法律和医疗保健等高影响力领域,系统性地调查其安全风险对于迈向值得信赖的 LLM 时代变得日益重要。本文在五个攻击基准上,全面研究了对 14 个广泛使用的开源和三个闭源 LLMs 的有效 prompt injection 攻击。此外,现有的评估指标大多只考虑攻击成功率,而忽略了模型响应中的不确定性。我们提出的攻击成功概率(Attack Success Probability, ASP)还捕获了评估中的不确定行为,即模型最初可能拒绝有害请求,但随后提供有害指导,反之亦然,这反映了攻击可行性的不一致性和模糊性。通过系统分析 prompt injection 攻击的有效性,我们提出了一种直接且有效的催眠攻击;结果表明,该攻击会导致包括 Stablelm2、Mistral、Openchat 和 Vicuna 在内的已对齐语言模型生成不良行为,达到约 90% 的 ASP。结果还表明,忽略前缀攻击可以攻破所有 14 个开源 LLMs,在多类别数据集上实现超过 60% 的 ASP。我们发现,中等知名度的 LLMs 对 prompt injection 攻击表现出更高的脆弱性,这凸显了提高公众意识和优先考虑高效缓解策略的必要性。
## 概述 ![](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/477ebc5d41170308.png) ## 环境配置与脚本 ### 安装 [Ollama](https://ollama.com) #### 使用例如 `ollama run llama3` 下载 13 个已评估的 LLMs #### 运行 `preprocess.py` 来预处理简单数据集,例如 [AdvBench](https://github.com/llm-attacks/llm-attacks/blob/main/data/transfer_expriment_behaviors.csv) #### 运行 `moderation.py` 以查看由 OpenAI `text-moderation-007` 评估的有害性得分 #### 运行以下脚本以执行不同的 prompt injection 攻击方法: 1. 用于运行忽略前缀攻击的脚本: ``` chmod +x run_attack_ignore.sh ./run_attack_ignore.sh ``` 2. 用于运行角色扮演 CoT 攻击的脚本: ``` chmod +x run_attack_role.sh ./run_attack_role.sh ``` 3. 用于运行催眠攻击的脚本: ``` chmod +x run_attack_hypnotism.sh ./run_attack_hypnotism.sh ``` #### 运行 `ollama.py` 以查看已下载开源 LLMs 的 ASP #### 运行 `asp.py` 进行自动化评估 ## 引用 如果您使用了这项工作,请引用: ``` @misc{wang2025promptsafe, title={Is Your Prompt Safe? Investigating Prompt Injection Attacks Against Open-Source LLMs}, author={Jiawen Wang and others}, year={2025}, eprint={2505.14368}, archivePrefix={arXiv}, primaryClass={cs.CR} } ```
标签:AI对齐, AI风险缓解, Cutter, DLL 劫持, 大语言模型, 提示注入, 红队评估, 逆向工具, 集群管理