UhartAI/nl2sql-injection-evaluation-
GitHub: UhartAI/nl2sql-injection-evaluation-
系统性评估大语言模型生成 SQL 中的注入漏洞的 reproducible 框架,覆盖 20 个模型、4 种数据库和 210 个对抗性提示,并提供四种缓解策略的效果验证。
Stars: 0 | Forks: 0
# NL2SQL 注入评估框架
[](https://doi.org/10.5281/zenodo.XXXXXXX)
[](https://opensource.org/licenses/MIT)
[](https://www.python.org/downloads/)
[](https://github.com/myusername/nl2sql-injection-evaluation/actions/workflows/tests.yml)
## 📋 概述
本仓库包含以下论文的完整评估框架:
**“When AI writes SQL: Uncovering injection vulnerabilities in LLM-generated database queries”**
我们系统地评估了 LLM 生成的 SQL 中的 SQL 注入漏洞,涵盖以下方面:
- **20** 个大型语言模型
- **4** 种数据库系统(SQLite, MySQL, PostgreSQL, Microsoft SQL Server)
- 涵盖 7 个类别的 **210** 个对抗性提示
- **4** 种缓解策略
### 主要发现
- 高级提示在基于 Web 的模型上实现了 **44.1%** 的攻击成功率
- 现有的 SQL 注入检测器在 LLM 生成的 payload 上损失了 **5.3%** 的准确率
- AST 验证将渗透率从 **28.7%** 降低至 **3.1%**
- 全栈缓解措施实现了 **1.2%** 的渗透率,且延迟开销为 **32%**
## 🚀 快速开始
### 前置条件
- Python 3.9+
- Docker 和 Docker Compose
- LLM 服务(OpenAI, Anthropic, Google 等)的 API 密钥
### 安装说明
```
# 克隆 repository
git clone https://github.com/myusername/nl2sql-injection-evaluation.git
cd nl2sql-injection-evaluation
# 创建 virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# 安装 dependencies
pip install -r requirements.txt
# 设置 environment variables
cp .env.example .env
# 使用你的 API keys 编辑 .env
```
标签:AES-256, CISA项目, DLL 劫持, NL2SQL, 人工智能安全, 合规性, 大语言模型, 安全测试, 攻击性安全, 测试用例, 漏洞评估, 版权保护, 请求拦截, 逆向工具