NoahPageIT/aegis
GitHub: NoahPageIT/aegis
Aegis 是一款针对 LLM 应用的安全测试工具,通过对标 OWASP LLM Top 10 进行红队对抗测试并输出安全评分与修复建议。
Stars: 0 | Forks: 0
# 🛡 Aegis - LLM 安全测试工具
Aegis 对基于 LLM 的应用进行红队测试,以对抗 **[OWASP LLM Top 10](https://genai.owasp.org/llm-top-10/)** - 探测 prompt injection、system prompt 泄露、机密泄露、jailbreak、不安全的输出处理以及过度授权 - 然后对目标进行评分,并报告结果与修复建议。
旨在展示 **AI 安全** 技能:对抗性测试、检测逻辑以及 GenAI 系统的安全设计知识 - 这是网络安全与 AI 交叉领域的一门新兴学科。

## 测试内容
| # | 攻击 | OWASP LLM | 严重程度 |
|---|--------|-----------|----------|
| 1 | 直接 prompt injection | **LLM01** Prompt Injection | 高 |
| 2 | System prompt 泄露 | **LLM07** System Prompt Leakage | 高 |
| 3 | 敏感信息泄露 | **LLM02** Sensitive Info Disclosure | 严重 |
| 4 | 通过角色扮演进行 Jailbreak (DAN) | **LLM01** Prompt Injection | 高 |
| 5 | 间接 prompt injection(不受信任的内容) | **LLM01** Prompt Injection | 高 |
| 6 | 输出处理不当(存储型 XSS) | **LLM05** Improper Output Handling | 中 |
| 7 | 过度授权(破坏性操作) | **LLM06** Excessive Agency | 高 |
每个测试都包含一条**检测规则**(攻击是否成功?)以及**修复指南**。每次探测都使用良性的 canary token - 不会生成任何真实的有害内容。
## 演示:易受攻击 vs 加固
```
$ node cli.js vulnerable $ node cli.js hardened
Security score: 0/100 Security score: 100/100
7 vulnerable / 7 tests 0 vulnerable / 7 tests
```
模拟的**易受攻击**目标会盲目遵从所有攻击;而**加固**后的目标则应用了防护栏并成功拦截了所有攻击。这种对比不仅展示了攻击是*如何*运作的,*也*展示了缓解措施是什么样的。
## 运行
```
node cli.js # scan the mock vulnerable LLM (default)
node cli.js hardened # scan the mock hardened LLM
node server.js # report dashboard → http://localhost:3002 (live toggle)
```
## 测试真实的 LLM(可选)
Aegis 的目标仅仅是 `async (prompt) => responseText`。通过 `makeHttpTarget` 将其指向任何模型 - 例如一个**本地、免费**的 Ollama 模型:
```
const { makeHttpTarget } = require('./targets');
const { runScan } = require('./engine');
const ollama = makeHttpTarget(
'http://localhost:11434/api/generate',
prompt => ({ model: 'llama3', prompt, stream: false }),
data => data.response
);
runScan(ollama, 'llama3 (local)').then(r => console.log(r.score));
```
相同的模式也适用于包装 Anthropic 或 OpenAI API(付费)- 只需更改 URL、body 和 extractor 即可。
## 技术栈
- **Node.js**,零运行时依赖(原生 `http` + `fs`)
- 带有加权严重性评分(0-100)的检测规则引擎
- 战术 HUD 仪表板(原生 JS)
- 可插拔的目标适配器(模拟 + 真实)
## 路线图
- [ ] 更多 OWASP 类别:数据中毒探测、无限制消耗 / DoS 测试
- [ ] 多轮 / 对话式攻击链
- [ ] 从公开的 jailbreak 数据集中导入攻击 payload
- [ ] CI 模式:如果应用评分低于阈值,则使构建失败
- [ ] 将发现结果导出为 SARIF 以供安全 pipeline 使用
*防御性安全研究。攻击使用的是良性 canary,仅用于测试您拥有或被授权评估的系统。*
标签:DLL 劫持, MITM代理, OWASP Top 10, 人工智能, 域名收集, 大语言模型, 安全测试, 攻击性安全, 用户模式Hook绕过, 自定义脚本, 配置审计