CalculusGuy/DIVYASTRA

GitHub: CalculusGuy/DIVYASTRA

DIVYASTRA 是一个模块化的 LLM 安全测试框架,通过自动化的 prompt 注入与越狱攻击评估来检测大语言模型的对抗性安全漏洞。

Stars: 0 | Forks: 0

██████╗ ██╗██╗ ██╗██╗ ██╗ █████╗ ███████╗████████╗██████╗ █████╗ ██╔══██╗██║██║ ██║╚██╗ ██╔╝██╔══██╗██╔════╝╚══██╔══╝██╔══██╗██╔══██╗ ██║ ██║██║██║ ██║ ╚████╔╝ ███████║███████╗ ██║ ██████╔╝███████║ ██║ ██║██║╚██╗ ██╔╝ ╚██╔╝ ██╔══██║╚════██║ ██║ ██╔══██╗██╔══██║ ██████╔╝██║ ╚████╔╝ ██║ ██║ ██║███████║ ██║ ██║ ██║██║ ██║ ╚═════╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ # DIVYASTRA DIVYASTRA 是一个模块化的 AI 安全测试框架,旨在评估大型语言模型(LLM)抵御常见对抗性 prompt 攻击的能力。它能够自动化进行 prompt 注入测试、越狱评估、指令覆盖检测、prompt 窃取尝试,以及其他受现实世界 LLM 安全研究启发的攻击模式。 在完成了 PortSwigger Web Security Academy Web LLM Attacks 模块的全部内容(8/8,从 Apprentice 到 Expert)之后,我开发了 DIVYASTRA,将实用的攻击方法转化为自动化的安全评估工具。 ## 功能 * Prompt 注入检测 * 越狱评估 * Prompt 窃取测试 * 指令覆盖检测 * 间接 Prompt 注入测试 * 编码与混淆攻击检测 * 范围边界验证 * 基于置信度的漏洞评分 * JSON 报告生成 * 终端报告界面 * 支持 Ollama * 支持 OpenAI 兼容的 API * 可扩展的 Payload 框架 * 对齐 OWASP LLM Top 10 ## 为什么要有 DIVYASTRA 随着组织越来越多地将 LLM 集成到应用程序中,prompt 注入已成为 AI 系统中最为重大的安全风险之一。 如今的大多数测试仍然依赖于手动操作: * 复制 payload * 发送请求 * 观察响应 * 重复上述步骤 DIVYASTRA 通过执行结构化的攻击 payload 库,并根据预定义的检测标准评估模型行为,从而实现了整个流程的自动化。 其目标是帮助开发者、研究人员和安全从业人员在部署前快速识别出系统的弱点。 ## 支持的攻击类别 | 类别 | 描述 | | ---------------------- | --------------------------------------------- | | 指令覆盖 | 尝试替换系统指令 | | 角色扮演越狱 | 基于角色设定的安全绕过攻击 | | Prompt 窃取 | 提取隐藏的 prompt 和指令 | | 间接注入 | 通过不可信的外部内容进行注入 | | 编码混淆 | Base64 和变换形式的 payload 攻击 | | 范围边界测试 | 验证操作限制 | ## 项目结构 ``` DIVYASTRA/ │ ├── adapters/ │ ├── base_adapter.py │ ├── ollama_adapter.py │ ├── openai_style_adapter.py │ └── custom_http_adapter.py │ ├── core/ │ ├── engine.py │ ├── detector.py │ ├── cli_report.py │ └── json_report.py │ ├── payloads/ │ └── payloads.yaml │ ├── requirements.txt ├── test_smoke.py ├── divyastra.py └── README.md ``` ## 安装说明 ``` git clone https://github.com/yourusername/DIVYASTRA.git cd DIVYASTRA pip install -r requirements.txt ``` ## 快速开始 ### 扫描 Ollama 模型 ``` python divyastra.py --target ollama --model llama3 ``` ### 生成 JSON 报告 ``` python divyastra.py \ --target ollama \ --model llama3 \ --output report.json ``` ## 示例输出 ``` [VULN] io_001 (instruction_override) [VULN] rp_001 (role_play_jailbreak) [VULN] ex_003 (prompt_exfiltration) Summary ------------------------------ Total Payloads : 18 Vulnerable : 9 Safe : 8 Uncertain : 1 ``` ## OWASP LLM Top 10 映射 DIVYASTRA 主要关注: * LLM01:Prompt 注入 * LLM02:不安全的输出处理 * LLM06:敏感信息泄露 * LLM07:不安全的插件设计 * LLM09:过度依赖 这种映射有助于安全团队将测试结果与业界公认的 AI 安全风险对齐。 ## 路线图 * 更多的越狱 payload 库 * HTML 和 Markdown 报告 * 风险评分改进 * CI/CD 集成 * 多模型基准测试 * 支持 Gemini API * 支持 Anthropic API * 支持 Hugging Face 本地模型 * 交互式仪表板 ## 免责声明 DIVYASTRA 仅用于授权的安全测试、AI 评估、研究和教育目的。 用户有责任确保其使用符合适用的法律、法规和组织政策。 ## 灵感来源 * PortSwigger Web Security Academy — Web LLM Attacks * OWASP LLM Top 10 * Prompt Injection 研究社区 * AI 红队测试方法论 ## 作者 **Nilanjan Chowdhury** 网络安全学生 | AI 安全爱好者 | 安全研究员
标签:AI安全, Chat Copilot, LLM测试, Petitpotam, 域名收集, 多语言支持, 安全测试框架, 越狱检测, 逆向工具