RafyHany/Graduation-Project-Defense-against-Prompt-Injection

GitHub: RafyHany/Graduation-Project-Defense-against-Prompt-Injection

该项目是一个防御 LLM 提示注入与越狱攻击的多层框架,包含分类器、生成式过滤器和自定义阿拉伯语数据集,以企业级微服务架构部署。

Stars: 0 | Forks: 0

# 防御 LLM 攻击:Request Armor 与多语言 DataFilter 🎓 **毕业设计** | 亚历山大大学工程学院计算机与系统工程系 (2026) 👨‍🏫 **指导教师:** Dr. Ahmed Kosba 👥 **作者:** Amin Mohamed Amin, Andrew Safwat Fawzy, Armia Joseph, Omar Aldawy, Rafy Hany Said, Rowan Gamal ## 📌 概述 本仓库包含我们毕业设计的官方实现、数据集和评估基准:**“防御 LLM 攻击”**。 大型语言模型(LLM)及集成 LLM 的自主智能体面临着来自 **提示注入攻击(PIA)** 和 **越狱攻击** 的严重漏洞。在本项目中,我们设计并实现了一个多层防御框架,包含两个核心防御组件: 1. **Request Armor(双通道安全 Pipeline):** 一个实时的路由与分类系统,负责检查被拆分为 *指令(Instruction)* 和 *数据(Data)* 通道的提示。利用经过微调的纯编码器 transformer(RoBERTa),它能识别特定的攻击类型(`naive`、`ignore`、`escape`、`combine`、`fake_completion`),并在将请求转发给目标 LLM 之前应用针对性的防御屏蔽。 2. **多语言与阿拉伯语 DataFilter(生成式防御过滤器):** 一种与模型无关的生成式过滤器,部署在不受信任的外部数据源与后端 LLM 之间。它能够剥离恶意注入的指令,同时保留良性的上下文信息。我们使用 **LoRA adapter** 和带有奖励修正的 **动态微调(DFT)** 扩展了 DataFilter,为 **阿拉伯语和多语言** 环境提供了最先进的保护。 3. **自定义阿拉伯语提示注入数据集:** 包含 6,000 个样本的创新且平衡的数据集,通过翻译和 LLM 编排创建,用于对针对阿拉伯语提示注入的防御进行基准测试和训练,涵盖 6 种战术攻击类别。 ## 🤖 模型链接与 Checkpoint ### 🟢 已发布的生成式 DataFilter 模型 - **DataFilter 阿拉伯语多语言 LoRA:** [Hugging Face Model Hub](https://huggingface.co/RafyHany/DataFilter-arabic-multilingual-Lora) - **DataFilter 阿拉伯语多语言 DFT:** [Hugging Face Model Hub](https://huggingface.co/RafyHany/DataFilter-arabic-multilingual-dft) ### 🟡 分类器与检测模型 - **提示注入与越狱分类器:** `(尚未发布)` ## 🏗 系统架构 ``` ┌────────────────────────┐ │ User Prompt │ └───────────┬────────────┘ │ ┌─────────────────────┴─────────────────────┐ ▼ ▼ [Instruction Channel] [Data / Input Channel] │ │ ┌─────────────┴─────────────┐ ┌─────────────┴─────────────┐ ▼ ▼ ▼ ▼ [Benign Pass] [Jailbreak Attempt] [Benign Data] [Attack Detected] │ │ │ │ │ (HARD BLOCK) │ ┌─────────┴─────────┐ │ │ │ ▼ ▼ │ │ │ [DataFilter Model] [Adaptive Shield] │ │ │ │ │ └───────────────────────────┼───────────────┴─────────────────┴───────────────────┘ │ ▼ ┌────────────────────────┐ │ Victim LLM │ └────────────┬───────────┘ │ ▼ ┌────────────────────────┐ │ Response Guard │ └────────────┬───────────┘ ``` 该系统以企业级微服务架构部署: - **前端与 API 网关:** 负责 API 路由、速率限制和请求验证。 - **Spring Boot 后端:** 管理核心业务逻辑和异步遥测日志记录。 - **Auror 安全服务:** 执行 DataFilter 过滤和分类器检查的顺序防御漏斗。 ## 📊 实验结果 ### 1️⃣ 分类器性能(Request Armor) 在基准数据集上采用 80/10/10 分层随机抽样进行评估,并在 RoBERTa 编码器上执行了部分层冻结微调: * **数据集 1:`open-prompt-injection`(5 类:Benign、Naive、Ignore、Escape、Combine)** | 模型 | 参数量 | 训练轮次 | 验证准确率 | 验证 Macro F1 | 测试准确率 | 测试 Macro F1 | |---|:---:|:---:|:---:|:---:|:---:|:---:| | **RoBERTa-Base** | 125M | 25 | 91.40% | 91.11% | **91.38%** | **86.38%** | | **RoBERTa-Large** | 355M | 10 | 92.51% | 92.19% | **92.14%** | **87.84%** | * **数据集 2:`xxz224/prompt-injection-attack-dataset`** | 模型 | 数据集变体 | 测试准确率 | 测试 Macro F1 | |---|---|:---:|:---:| | **RoBERTa-Base** | V1 (包含 `escape`) | 84.79% | 84.92% | | **RoBERTa-Base** | V2 (不包含 `escape`) | 91.09% | 91.05% | | **RoBERTa-Large** | V1 (包含 `escape`) | **90.35%** | **90.40%** | ### 2️⃣ Request Armor Pipeline 防御有效性 对降低攻击成功率(ASR)及保持任务效用的影响(每种配置 $n=1,000$): | 目标模型 | 分类器 | 无防御 ASR | 有防御 ASR | 绝对 ASR 降幅 | 任务效用 (完整) | |---|---|:---:|:---:|:---:|:---:| | **Microsoft Phi-3 Mini (3.8B)** | RoBERTa-Base | 64.60% | **47.00%** | **-17.60 pp** (27.2% rel) | 56.20% | | **Microsoft Phi-3 Mini (3.8B)** | RoBERTa-Large | 64.70% | **47.60%** | **-17.10 pp** (26.4% rel) | 56.40% | | **Meta LLaMA-3 8B Instruct** | RoBERTa-Base | 83.10% | **44.20%** | **-38.90 pp** (46.8% rel) | 46.20% | | **Meta LLaMA-3 8B Instruct** | RoBERTa-Large | 83.20% | **44.70%** | **-38.50 pp** (46.3% rel) | 48.40% | ### 3️⃣ DataFilter 模型评估(英文 SEP 基准) 基于每种攻击类型 1,000 个样本进行评估,保护模型为 `Llama-3.1-8B-Instruct`: #### 攻击成功率 (ASR) ↓ | 攻击策略 | 无防御基线 | 原版 DataFilter | DataFilter DFT | **DataFilter LoRA (Ours)** | |---|:---:|:---:|:---:|:---:| | **Straightforward** | 59.9% | 2.4% | 1.1% | **0.5%** | | **Ignore** | 76.8% | 2.5% | 4.3% | **0.2%** | | **Completion** | 84.1% | 4.6% | 0.4% | **0.1%** | | **Completion-Ignore** | 91.7% | 3.5% | 0.3% | **0.2%** | | **Multi-Turn Completion** | 68.9% | 3.9% | 3.6% | **0.2%** | | **Context** | 79.5% | 2.6% | 9.6% | **0.1%** | #### 效用保持率 (%) ↑ | 攻击策略 | DataFilter DFT | **DataFilter LoRA (Ours)** | |---|:---:|:---:| | **Ignore** | 92.30% | **95.80%** | | **Completion-Ignore** | **97.00%** | 96.70% | | **Straightforward** | **96.70%** | 94.90% | | **Completion** | **96.80%** | 95.50% | | **Context** | 95.00% | **95.70%** | | **Multi-Turn Completion** | 95.60% | **96.00%** | ### 4️⃣ 多语言与阿拉伯语防御性能 * **阿拉伯语翻译版 SEP 基准(363 个样本):** - **LoRA DataFilter ASR:** **0.55% – 1.1%**(无防御时为 28.9% – 53.2%) - **效用得分:** **82.37% – 84.02%** * **自定义阿拉伯语数据集(446 个样本/攻击类型):** - **LoRA DataFilter ASR:** **4.04% – 4.48%** - **效用得分:** **91.26% – 92.60%** * **多语言数据集评估(429 个样本/攻击类型):** - **LoRA DataFilter ASR:** **13.99% – 19.35%** - **DFT DataFilter 效用得分:** **73.66% – 80.19%** ### 5️⃣ 企业级 Pipeline 延迟 在完整的微服务部署中,对总计 1,800 个评估样本进行了测试: | Pipeline 状态 | ASR 范围 | p50 延迟 | p90 延迟 | p95 延迟 | p99 延迟 | |---|:---:|:---:|:---:|:---:|:---:| | **无防御(基线)** | 最高至 91.7% | 7.62 s | 15.33 s | 17.40 s | 24.00 s | | **组合(LoRA + BERT)** | **1.67% – 6.00%** | **11.04 s** | **19.78 s** | **23.93 s** | **35.49 s** | ## 📜 引用与参考 ``` @graduationproject{alex_llm_defenses_2026, title = {Defenses against LLM Attacks}, author = {Amin Mohamed Amin and Andrew Safwat Fawzy and Armia Joseph and Omar Aldawy and Rafy Hany Said and Rowan Gamal}, supervisor= {Dr. Ahmed Kosba}, institution= {Alexandria University, Faculty of Engineering, Computer and Systems Engineering Department}, year = {2026} } ```
标签:AI安全, Chat Copilot, DLL 劫持, LoRA, RoBERTa, 大语言模型, 逆向工具