sauron666/LLM-Red-Team-Lab-test

GitHub: sauron666/LLM-Red-Team-Lab-test

面向 LLM 应用的安全评估与攻击测试平台,支持多种连接器和攻击场景,帮助安全研究人员发现 AI 系统中的漏洞。

Stars: 0 | Forks: 0

# LLM 攻击实验室 ![Python](https://img.shields.io/badge/python-3.11%2B-blue) ![平台](https://img.shields.io/badge/platform-Windows%20%7C%20Linux-green) ![GUI](https://img.shields.io/badge/GUI-PySide6-purple) ![报告](https://img.shields.io/badge/reports-HTML%20%7C%20PDF%20%7C%20JSON%20%7C%20SARIF-orange) **AI 红队 / 安全研究** – "Burp Suite for LLMs"理念。 支持 **Windows/Linux**(PySide6 GUI)和 **headless CLI**,适用于 CI/CD。 ## 主要功能 ### 核心功能(企业版 + 漏洞赏金) - GUI 支持项目 / 目标 / 运行 / 发现 / 仪表板 - 连接器: - OpenAI 兼容 API(通用) - Gemini(REST) - Ollama(本地) - Anthropic Claude - Azure OpenAI - OpenRouter / Groq / Mistral / xAI / Hugging Face Router / Together / Fireworks - 本地 OpenAI 兼容服务器:LM Studio / vLLM / llama.cpp / text-generation-webui - **Web 聊天(Playwright,无 API)** 用于聊天机器人 UI(浏览器自动化) - 攻击库(受 OWASP LLM Top 10 启发) - 插件系统(攻击 + 评估器插件) - SQLite 数据库存储运行/发现 - 风险评分引擎 + 摘要 ### 扩展功能 - **Headless CLI 运行器**(适合 CI/CD) - **基线对比**(两次运行之间的回归/修复对比) - **SARIF 导出** - **仪表板标签**:严重性热力图 + 攻击树 + 趋势注释 - **RAG 检索钩子**(本地文档 JSON) - **Agent / 工具调用验证** - **JWT/Auth 测试模块**(负向 auth 检查 + JWT 声明完整性检查) - **Burp Bridge** - 解析来自 Burp 的原始 HTTP 请求 - 自动推断目标配置 - 安全重放(默认剥离 auth) - Burp extender stub 的本地接入桥 - 流式/SSE 捕获解析(`/ingest_stream`) - WebSocket transcript 接入(`/ingest_ws`) - 重放差异查看器(基线 vs 攻击) - **预设配置文件**:企业 API / 漏洞赏金 API / RAG 应用 / Agent 应用 - **暗黑主题**(改进 GUI 可读性) - **Docker Compose 演示**(headless + Ollama) - **GitHub 就绪的仓库结构**(.github 工作流、模板、文档、ROADMAP、SECURITY、CONTRIBUTING) - **示例目标 + 演示数据集** ## 安装 ``` python -m venv .venv # Windows: .venv\Scripts\activate # Linux: source .venv/bin/activate pip install -r requirements.txt # 仅适用于 Web Chat (Playwright) 连接器: playwright install chromium ``` ## 启动(GUI) ``` python main.py ``` 教程(保加利亚语):`docs/TUTORIAL_BG.md` 教程(英语):`docs/TUTORIAL_EN.md` ## 启动(CLI) ``` python main_cli.py --help ``` ## Burp Bridge 接入服务器(本地) ``` python main_cli.py burp-serve --host 127.0.0.1 --port 8765 ``` ## CLI 示例 ### 1) 列出项目 / 目标 ``` python main_cli.py list-projects python main_cli.py list-targets --project-id 1 ``` ### 2) 扫描(企业模式) ``` python main_cli.py scan --project-id 1 --target-id 2 --mode enterprise --intensity 2 --tool-schema-validation --export html,json,sarif ``` ### 3) 使用 RAG 检索钩子扫描(本地文档) ``` python main_cli.py scan --project-id 1 --target-id 2 --mode bug_bounty --retrieval-docs-json "$(cat samples/rag_docs_safe_vs_poison.json)" --tool-schema-validation --export html,pdf,json,sarif ``` ### 4) 基线对比 ``` python main_cli.py compare --baseline-run-id 10 --candidate-run-id 11 ``` ### 5) JWT/Auth 端点检查 ``` python main_cli.py auth-check --url https://api.example.com/v1/chat/completions --body-json '{"model":"gpt-4o-mini","messages":[{"role":"user","content":"ping"}]}' ``` 或针对保存的目标: ``` python main_cli.py auth-check --target-id 2 --output auth_report.json ``` ### 6) Burp Bridge:解析 / 重放 / 导入目标 ``` python main_cli.py burp-parse --raw samples/burp/openai_chat_raw.txt --infer-target python main_cli.py burp-replay --raw samples/burp/openai_chat_raw.txt python main_cli.py burp-create-target --project-id 1 --raw samples/burp/openai_chat_raw.txt ``` ## Docker Compose 演示(headless) ``` docker compose -f docker-compose.demo.yml up -d ollama # 拉取模型一次: docker compose -f docker-compose.demo.yml exec ollama ollama pull llama3.2:3b # 在 lab 容器中运行 CLI 命令: docker compose -f docker-compose.demo.yml run --rm attack-lab python main_cli.py --help ``` ## 演示数据 / 样本 - `samples/targets.sample.json` – 示例目标配置 - `samples/rag_docs_safe_vs_poison.json` – 可信/不可信 RAG 文档 - `samples/tool_schema_*.json` – 用于 agent 验证的工具模式 - `samples/burp/openai_chat_raw.txt` – 示例原始请求(Burp 风格) - `samples/jwt/sample_tokens.json` – 用于 auth 测试器的虚拟 JWT 示例 ## Burp Bridge(集成) 在 `integrations/burp/` 中包含: - `burp_extender_stub.py` – Jython stub(PoC),向本地 bridge 发送原始请求 - `README.md` – 如何连接到 Burp Bridge 端点: - `POST /ingest`,JSON 格式 `{ "raw_request": "...", "note": "..." }` - `POST /ingest_stream`(原始请求 + 可选的原始响应,用于 SSE 解析) - `POST /ingest_ws`(WebSocket transcript / 帧) - `GET /health` 存储位置:`burp_ingest/*.json` ## 法律 / 安全使用 - 仅用于**授权测试** - 默认启用安全预设 - Burp 重放默认剥离 auth 头 - 未经许可切勿用于任何目标 ## 结果感知的安全分级(减少误报) 安全等级**根据结果**分配,而不仅仅是根据 payload 类别。评估器现在记录: - `status`:`blocked | vulnerable | inconclusive | review | passed` - `evidence_type`:主要证据信号(例如 `secret_pattern`、`tool_call_abuse`) 这可以防止误报 **High/Critical** 发现,例如模型正确拒绝时(如"我无法分享内部信息")。 ## 新增功能(自定义内部 API + webchat 接入) - **自定义 HTTP JSON 连接器**(`custom_http_json`),用于内部/BFF 聊天 API(JSON + SSE) - **内部聊天路由器模板**(`internal_chat_router`),用于 `/chat-router/.../session/.../message` 风格的端点 - **离线端点指纹识别** - `python main_cli.py fingerprint-endpoint --url ...` - **Playwright 选择器探测**,用于无 API 的 web 聊天 - `python main_cli.py webchat-probe --url ...` - 改进的 Burp 导入推断,用于未知的聊天路由器(自动生成 `_http_connector` body 模板 + auth 提示) - 改进的**自定义 HTTP JSON** 诊断(HTTP/TLS/proxy/auth 提示,更好的内部聊天路由器故障排除) - 扩展的评估器信号,用于**会话令牌 / 内部端点 / 推理泄露** - 新插件:`plugins/research_attack_pack_2026.py`(安全的公开研究灵感回归探测) - 更新的教程(保加利亚语 + 英语),包含企业代理/TLS/HAR 接入指南
标签:AES-256, AI Red Team, AI安全, Anthropic Claude, Azure OpenAI, Bug Bounty, Burp Suite, Chat Copilot, CI/CD安全, CISA项目, Docker, Gemini, JWT测试, Llama, llama.cpp, LLM安全测试, LLM攻击, LLM评估, LNA, Ollama, OpenAI, OWASP LLM Top 10, Playwright, PySide6, Python, RAG安全, Red Canary, SARIF报告, SQLite, SSE, vLLM, WebSocket安全, 内存规避, 可自定义解析器, 域名收集, 大语言模型安全, 大语言模型蜜罐, 安全防御评估, 对抗性测试, 攻击框架, 无后门, 机密管理, 漏洞评估, 特征检测, 网络安全, 认证测试, 请求拦截, 隐私保护, 风险评分