Mehran-786/LLM-SECURITY-GATEWAY
GitHub: Mehran-786/LLM-SECURITY-GATEWAY
一个基于FastAPI构建的LLM安全网关,用于防护提示词注入、越狱攻击和PII数据泄露。
Stars: 0 | Forks: 0
安全 LLM 网关 🛡️
这是一个使用 Python 的 FastAPI 构建的安全 API 网关。它作为用户与 LLM(如 OpenAI)之间的中间件,提供严格的安全检查,包括提示词注入检测、混淆反过滤以及使用 Microsoft Presidio 进行 PII 数据脱敏。
作者:Mehran Rasool (SP24-BCS-008)
机构:COMSATS 大学伊斯兰堡校区,瓦赫校区
## 功能
- **高级输入过滤器**:捕获硬编码威胁和混淆文本(例如 `ignore`)。
- **注入评分引擎**:针对越狱尝试的分级数学评分系统。
- **上下文感知 PII 脱敏**:使用 Microsoft Presidio (NLP) 检测并清除 CNIC、电子邮件和 API 密钥,即使格式不规则也能处理。
- **优雅的错误处理**:阻止恶意请求而不暴露后端漏洞。
## 安装步骤(可复现性)
1. 克隆仓库并进入项目文件夹:
```bash
git clone https://github.com/Mehran-786/LLM-SECURITY-GATEWAY.git
cd LLM-SECURITY-GATEWAY
```
2. 创建并激活虚拟环境:
```bash
在 Windows 上:
python -m venv venv
venv\Scripts\activate
```
3. 安装所需的依赖:
```bash
pip install -r requirements.txt
```
4. 下载 Spacy NLP 模型(Presidio 需要):
```bash
python -m spacy download en_core_web_lg
```
## 如何运行服务器
使用 Uvicorn 启动 FastAPI 服务器:
```bash
uvicorn app.main:app --reload
```
服务器将在 `http://127.0.0.1:8000` 上运行。
## 如何测试
1. 打开浏览器并访问 Swagger UI:`http://127.0.0.1:8000/docs`
2. 点击 `POST /analyze` 端点。
3. 点击"Try it out"。
4. 在 JSON 正文中输入测试提示词,例如:
`{"prompt": "My secret token is sk-1234567890abcdef1234567890abcdef"}`
5. 点击 Execute 并观察网关的安全响应。
标签:API安全, API网关, AV绕过, FastAPI, Jailbreak, JSON输出, Microsoft Presidio, NLP, PII脱敏, Python, Spacy, 中间件, 人工智能安全, 反混淆, 合规性, 安全防护, 对抗攻击, 敏感信息检测, 数据隐私保护, 文本过滤, 无后门, 网络安全, 输入过滤, 逆向工具, 隐私保护