alishi-215/Al-chatbot-llm-scanner
GitHub: alishi-215/Al-chatbot-llm-scanner
一款针对 AI 聊天机器人的攻击性安全扫描器,通过构造 Payload 自动检测 OWASP LLM Top 10 漏洞并生成专业安全评估报告。
Stars: 0 | Forks: 0
# 🛡️ LLM Security 扫描器
一款针对 AI 聊天机器人测试 **OWASP LLM Top 10** 漏洞的攻击性安全工具——包括 prompt injection、敏感信息泄露、system prompt 泄露以及间接(RAG)注入。它会使用精心构造的 payload 攻击目标聊天机器人,检测机器人是否发生了任何泄露,按严重程度对每个发现进行评分,并生成专业的安全报告。
本项目旨在作为对新兴的 **"Security for AI"** 领域进行实践探索而构建。
## ✨ 功能
- **4 大 OWASP LLM 攻击类别**
- `LLM01` — 直接 Prompt Injection
- `LLM02` — 敏感信息泄露
- `LLM07` — System Prompt 泄露
- `LLM08` — 通过 RAG 的间接注入(投毒文档)
- **3 种检测模式**
- *Known-secret* — 快速,对已知 secret 进行精确匹配(具备拒绝识别能力,误报率低)
- *LLM-as-judge* — 由第二个 LLM 评估响应是否存在泄露(适用于任何目标)
- *Auto* — 先尝试 known-secret,失败则回退到 judge
- **测试任何聊天机器人** — 自带 OpenAI 兼容 endpoint(URL + key + model),或使用内置的演示目标
- **严重程度评分** — 每个发现均按影响评估为 Critical / High / Medium / Low
- **文档上传** — 测试您自己的 `.txt` 文件,以应对隐藏的间接注入攻击
- **Web dashboard** (Flask) — 交互式多页 UI,包含图表、摘要卡片和彩色严重程度徽章
- **报告生成** — 同时保存为 JSON(机器可读)和 TXT(人类可读)格式,并附带时间戳
## 🖥️ Dashboard
该工具包含一个 Flask Web dashboard,具有以下功能:
- **Dashboard** — 概览,包含图表(结果分布 + 严重程度)
- **New Scan** — 选择目标、检测模式和攻击方式;通过模态框上传文档
- **Findings** — 详细的漏洞列表
- **Reports** — 下载已保存的扫描报告
- **Settings** — 查看当前扫描器配置
*(在此处添加您的截图——请参阅下方的“截图”部分。)*
## 🚀 入门指南
### 1. 克隆仓库
```
git clone https://github.com/alishi-215/Al-chatbot-llm-scanner.git
cd Al-chatbot-llm-scanner
```
### 2. 创建虚拟环境并安装依赖
```
python -m venv venv
venv\Scripts\Activate.ps1 # Windows
pip install -r requirements.txt
```
### 3. 设置环境变量
在项目根目录下创建一个 `.env` 文件,填入您的 Azure OpenAI(或兼容 OpenAI 的)凭证:
标签:Flask, OWASP Top 10, Petitpotam, 逆向工具