ArshadMahalkari/prompt-injection-detector
GitHub: ArshadMahalkari/prompt-injection-detector
一个基于OpenEnv的AI自适应系统,使用确定性评分与强化学习实时检测并防御提示注入攻击。
Stars: 0 | Forks: 0
## Prompt Injection Detector
emoji: 🛡️
colorFrom: blue
colorTo: purple
sdk: gradio
sdk_version: "4.36.1"
python_version: "3.10"
app_file: app.py
pinned: false
🛡️ Prompt Injection Detector Agent (OpenEnv)
一个自适应 AI 安全系统,使用确定性 + 强化风格环境实时检测、评估和学习提示注入攻击。
🚀 概述
提示注入是现代 LLM 应用程序中最关键的安全漏洞之一。此项目提供一个生产级评估环境和自适应检测代理,能够:
检测直接、间接和对抗性提示注入
使用变异模拟真实世界攻击场景
通过确定性评分评估响应
通过自适应学习随时间提升检测能力
🧠 关键特性
🔍 1. 检测引擎
正则表达式与基于模式的检测
类别:
覆盖攻击
角色操纵
数据泄露
置信度评分系统
⚔️ 2. 对抗性攻击生成器
动态变异提示
模拟:
混淆(忽略、指令等)
间接注入
防止过度拟合静态模式
🧪 3. OpenEnv 兼容环境
实现:
reset()
step()
state()
基于任务的评估流水线
通过 FastAPI 完全 API 驱动
📊 4. 确定性评分系统
可重复评分(无随机性)
评估:
检测准确率
攻击分类
严重性估计
🔁 5. 自适应学习代理(核心创新)
基于奖励反馈更新检测权重
强化学习循环:
检测 → 评估 → 学习 → 改进
实现对新攻击的持续改进
🏗️ 架构
用户输入
↓
攻击生成器(变异)
↓
检测引擎(模式 + 权重)
↓
类别映射
↓
评分器(确定性评估)
↓
自适应代理(权重更新)
📁 项目结构
prompt-injection-env/
│
├── environment.py # 主 OpenEnv 环境 + API
├── detector.py # 检测逻辑
├── attack_generator.py # 对抗变异引擎
├── agent.py # 自适应学习代理
├── graders.py # 确定性评分
├── models.py # 数据模型(Pydantic)
├── tasks/ # 基准任务
└── openenv.yaml # OpenEnv 配置
⚙️ 安装
git clone
cd prompt-injection-env
python -m venv venv
venv\Scripts\activate # Windows
pip install -r requirements.txt
▶️ 运行服务器
python environment.py
服务器运行地址:
http://localhost:7860
🧪 API 用法
1. 重置环境
POST /reset
2. 步骤(运行检测)
POST /step
请求体:
{}
PowerShell 示例
Invoke-RestMethod -Uri "http://localhost:7860/reset" -Method POST
Invoke-RestMethod -Uri "http://localhost:7860/step" -Method POST -Body "{}" -ContentType "application/json"
📈 示例输出
{
"reward": 0.85,
"done": false,
"info": {
"task_id": "task_easy",
"reward_breakdown": {...},
"tasks_remaining": 3
}
}
🧠 学习行为
系统根据反馈自适应:
正确检测 → 增加权重
错误检测 → 降低权重
这使得:
更好地处理混淆攻击
随时间提升检测能力
🎯 使用场景
保护 LLM 聊天机器人
保护 RAG 流水线
企业 AI 安全层
AI 系统的红队测试
🏆 重要性
与静态过滤器不同,本系统:
从对抗性输入中学习
提供可解释的决策
提供确定性评估
可在真实 AI 流水线中部署
🔮 后续改进
基于深度学习的检测
通过 LLM 生成攻击
可视化仪表板
多轮对话防御
📜 许可证
MIT 许可证
👨💻 作者
Arshad Mahalkari
计算机工程学生
AI | ML | 系统 | 开源
## 🚀 MetaHackathon Round 1 - OpenEnv 合规
本项目完全兼容 OpenEnv 框架和 MetaHackathon 要求:
### 先决条件
```
pip install uv
pip install huggingface_hub[cli]
huggingface-cli login
```
### 快速启动(OpenEnv 标准)
```
git clone https://github.com/ArshadMahalkari/prompt-injection-detector
cd prompt-injection-detector
uv sync # or pip install -r requirements.txt
```
### 本地测试
```
uv run python environment.py
# 或
uv run uvicorn environment:app --host 0.0.0.0 --port 7860 --reload
```
测试 API:
```
curl -X POST http://localhost:7860/reset
curl -X POST http://localhost:7860/step -H "Content-Type: application/json"
```
### 部署到 HF Spaces
1. `openenv push --repo-id ArshadMahalkari/prompt-injection-detector`
2. 从仓库创建 HF Space(Gradio app.py 自动部署)
### Docker
```
docker build -t prompt-injection-detector .
docker run -p 7860:7860 prompt-injection-detector
```
**评估就绪:** 确定性评分器,4 个任务(简单-困难),密集奖励 [0,1],无 LLM 评分。
⭐ 最后说明
本项目展示了 AI 系统如何从静态防御 → 适应式安全演进,使 LLM 部署更安全、更能抵御不断演变的威胁。
标签:AI安全, API驱动, AV绕过, Chat Copilot, FastAPI, Gradio, OpenEnv, Python, 任务评估, 变异攻击, 大语言模型安全, 实时检测, 对抗攻击, 强化学习, 攻击模拟, 敏感信息检测, 数据外泄, 无后门, 机密管理, 模式匹配, 环境仿真, 生产环境, 确定性评分, 置信度评分, 自动化资产收集, 自适应学习, 角色操纵, 逆向工具, 间接注入, 驱动签名利用