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, 域名收集, 多语言支持, 安全测试框架, 越狱检测, 逆向工具