Zkp1-2/SecureAI-Sentinel
GitHub: Zkp1-2/SecureAI-Sentinel
一个基于 FastAPI 和 React 构建的 AI 辅助漏洞分诊平台,通过多 Agent 工作流将扫描器报告自动转化为带有风险评分、攻击路径和修复建议的结构化安全发现。
Stars: 0 | Forks: 0
# SecureAI Sentinel
**SecureAI Sentinel** 是一个 AI 辅助的漏洞分诊和修复平台,使用 **FastAPI**、**React**、本地 RAG、扫描器报告解析器、CVSS 风格的风险评分、工作区存储和修复工单导出功能构建。
它将原始的漏洞描述和扫描器输出转换为结构化的安全发现、风险评分、攻击路径、缓解计划、分析师工作流状态以及可导出的安全报告。
## 演示工作流
```
Security text / PDF / scanner report
↓
Parser and scanner normalizer
↓
Evidence extraction
↓
Local RAG cybersecurity knowledge retrieval
↓
Multi-agent analysis pipeline
↓
Risk score + CVSS-style vector + priority/SLA
↓
Attack path + defense recommendations
↓
Markdown/JSON report + remediation ticket
↓
SQLite workspace history and finding status tracking
```
## 主要功能
### AI 安全分析
- 多 Agent 工作流:
- 漏洞分析 Agent
- 风险评分 Agent
- 攻击路径 Agent
- 防御建议 Agent
- 报告编写 Agent
- 基于网络安全笔记的本地 RAG 检索。
- 通过兼容 OpenAI 或兼容 Ollama 的 endpoint 的可选 LLM 模式。
- 基于证据的分析,以降低幻觉风险。
- 确定性回退模式,用于可重复的演示结果。
### 实用的扫描器数据摄取
支持的输入类型:
- 纯文本报告
- Markdown 和日志文件
- PDF 报告
- JSON 报告
- XML 报告
- CSV 报告
内置解析器支持:
- OWASP ZAP JSON
- Trivy JSON
- Semgrep JSON
- Nmap XML
- 通用漏洞 CSV
- 通用 JSON/XML 回退
示例扫描器报告位于:
```
samples/
```
### 风险分诊与分析师工作流
- CVSS 风格的风险向量:
- 攻击向量
- 攻击复杂度
- 所需权限
- 用户交互
- 机密性、完整性、可用性影响
- 可利用性
- 业务影响
- 优先级映射:P0、P1、P2、P3。
- 建议的修复 SLA。
- 安全发现状态工作流:
- 需要审查
- 已确认
- 误报
- 已接受风险
- 已修复
- 导出为 Markdown 的修复工单。
- 带有已保存分析历史的 SQLite 工作区。
### 报告与评估
- Markdown 报告导出。
- JSON 结果导出。
- 用于回归测试的内部 benchmark。
- 评估信号:
- 检索覆盖率
- 置信度
- 输入解析器类型
- Agent trace 摘要
## 技术栈
| 层级 | 技术 |
|---|---|
| 后端 | Python, FastAPI, Pydantic |
| 前端 | React, Vite, CSS |
| 检索 | 基于 scikit-learn 的本地 TF-IDF RAG |
| 存储 | SQLite |
| 解析 | JSON, CSV, XML, PDF 解析器 |
| 可选 LLM | 兼容 OpenAI 的 API 或兼容 Ollama 的 API |
| 部署 | Docker Compose |
## 项目结构
```
secureai-sentinel/
├── backend/
│ ├── app/
│ │ ├── agents/ # analysis agents and rule engine
│ │ ├── evaluation/ # benchmark logic
│ │ ├── rag/ # local knowledge retrieval
│ │ ├── schemas/ # Pydantic models
│ │ ├── services/ # orchestrator, storage, tickets, LLM client
│ │ └── utils/ # file parser and text utilities
│ ├── data/knowledge_base/ # OWASP/MITRE/CVE-style local notes
│ ├── requirements.txt
│ └── run_benchmark.py
├── frontend/
│ ├── src/
│ │ ├── main.jsx
│ │ └── style.css
│ ├── package.json
│ └── index.html
├── samples/ # sample scanner files
├── experiments/ # benchmark cases and results
├── docs/ # architecture, report, demo, CV/SOP material
├── docker-compose.yml
└── README.md
```
## 快速开始
### 1. 克隆仓库
```
git clone https://github.com/Zkp1-2/secureai-sentinel.git
cd secureai-sentinel
```
### 2. 运行后端
```
cd backend
python -m venv .venv
```
在 **Windows PowerShell** 上:
```
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8000
```
如果在 Windows 上激活失败,请直接通过虚拟环境运行:
```
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
.\.venv\Scripts\python.exe -m uvicorn app.main:app --reload --port 8000
```
在 **macOS/Linux** 上:
```
source .venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8000
```
后端将运行于:
```
http://127.0.0.1:8000
```
### 3. 运行前端
打开第二个终端:
```
cd frontend
npm install
npm run dev
```
前端将运行于:
```
http://127.0.0.1:5173
```
## Docker Compose
```
docker compose up --build
```
后端:`http://127.0.0.1:8000`
前端:`http://127.0.0.1:5173`
## 如何测试
1. 运行后端和前端。
2. 使用内置的示例按钮:
- SQL 注入
- XSS
- 弱认证
- SSRF
- RCE
- Trivy JSON
3. 从 `samples/` 上传文件:
- `zap_sample.json`
- `trivy_sample.json`
- `semgrep_sample.json`
- `nmap_sample.xml`
- `generic_vulns.csv`
4. 创建一个工作区项目。
5. 保存当前分析。
6. 创建一个修复工单。
7. 下载 Markdown 和 JSON 报告。
8. 运行 benchmark。
## 示例用例
### 手动漏洞审查
粘贴漏洞描述,例如 SQL 注入、XSS、SSRF、RCE、弱身份验证或访问控制失效。SecureAI Sentinel 将检测安全发现、对风险进行评分、生成攻击路径并创建修复建议。
### 扫描器报告分诊
上传来自受支持工具(如 OWASP ZAP、Trivy、Semgrep、Nmap 或基于 CSV 的漏洞跟踪器)的扫描器输出。系统将标准化安全发现、提取证据、对安全问题进行分组,并生成供分析师使用的报告。
### 安全作品集演示
该项目演示了实用的 AI 安全工程,包括扫描器解析、本地 RAG、多 Agent 分析、风险评分、工作流存储和安全报告生成。
## 截图
### 仪表板

### 扫描器分析

### 工单导出

### Benchmark

## 简历要点示例
- 使用 FastAPI、React、本地 RAG、扫描器解析器和 CVSS 风格的风险评分,构建了一个全栈 AI 辅助漏洞分诊平台。
- 实现了对 OWASP ZAP、Trivy、Semgrep、Nmap、CSV、PDF、JSON、XML 和基于文本的漏洞报告的自动化摄取。
- 开发了多 Agent 工作流,用于漏洞分类、攻击路径推理、缓解计划制定、修复工单生成以及分析师状态跟踪。
- 添加了基于 SQLite 的项目工作区、已保存的分析历史、Markdown/JSON 报告导出,以及用于回归测试的内部 benchmark 套件。
## 局限性
- 本系统是一个 AI 辅助的安全分诊原型。
- 在做出生产修复决策之前,安全发现应由合格的分析师进行验证。
- 本地 RAG 知识库特意设计得较小,应在实际使用中加以扩展。
- 包含的 benchmark 用于回归测试,并非旨在进行广泛的准确性声明。
## 未来工作
- 添加更丰富的 CVSS 3.1/4.0 评分。
- 添加 Jira/GitHub Issues API 集成。
- 扩展网络安全知识库。
- 添加身份验证和多用户角色。
- 添加容器化的向量数据库支持。
- 添加更大规模的真实世界评估数据集。
## 免责声明
SecureAI Sentinel 旨在用于教育、作品集展示和防御性安全研究。它不应作为生产安全决策的唯一依据。
标签:AI, AV绕过, FastAPI, GPT, RAG, React, Syscalls, 漏洞管理, 自动化代码审查, 请求拦截, 逆向工具