Ayaan1911/Argus-Sentinel
GitHub: Ayaan1911/Argus-Sentinel
Argus Sentinel 将多种安全扫描器的原始输出转化为优先级排序、可解释的安全发现,并为不同受众提供针对性行动指导。
Stars: 0 | Forks: 0
# Argus Sentinel
**一款能够解释其发现了什么,而不仅仅是扫描了什么的安全侦察工具。**




## 快速开始
```
git clone https://github.com/Ayaan1911/Argus-Sentinel
cd Argus-Sentinel
cp .env.example .env
docker compose up --build
```
| 服务 | URL |
|---|---|
| 前端 | http://localhost:5173 |
| API | http://localhost:8000 |
| API 文档 | http://localhost:8000/docs |
| OWASP Juice Shop (扫描目标) | http://localhost:3000 |
对内置的 Juice Shop 实例运行扫描,以验证完整的 pipeline:
```
curl -X POST http://localhost:8000/api/v1/scans/ \
-H "Content-Type: application/json" \
-d '{"target": "http://juice-shop:3000"}'
```
## 核心理念
大多数安全工具回答的是*“你发现了什么?”*,而 Argus 回答的是*“这意味着什么,为什么它很重要,以及下一步你该怎么做?”*。扫描器(Subfinder、Httpx、Nmap、Nuclei)只是输入——Intelligence Library 和确定性 Reasoning Engine 才是核心产品。每一项发现都展示了其评分细分;每一个评分在设计上都是可解释的,而不是黑盒输出。
→ [完整的架构、Intelligence Library schema 和设计理念请见 ARGUS_SENTINEL.md](ARGUS_SENTINEL.md)
## 架构
```
flowchart LR
SF[Subfinder] --> DIS[Discovery]
HX[Httpx] --> DIS
NM[Nmap] --> DIS
NU[Nuclei] --> DIS
DIS --> INT[Intelligence]
INT --> RES[Reasoning]
RES --> GUI[Guidance]
GUI --> LRN[Learning]
```
每个阶段都增加了一层扫描器自身无法提供的功能:原始发现 → 上下文知识 → 带有细分的风险评分 → 有序的行动步骤 → 针对特定受众的解释(学生 / 开发者 / Bug Bounty Hunter / 安全专家)。
## 技术栈
| 层级 | 技术 |
|---|---|
| API | FastAPI + Python 3.11 |
| 任务队列 | Celery + Redis |
| 数据库 | PostgreSQL 15 |
| 前端 | React 18 + Vite + Tailwind CSS |
| 扫描器 | Subfinder, Httpx, Nmap, Nuclei v3 |
| 容器 | Docker Compose |
## 已验证行为
已在同一 Docker 网络下针对 OWASP Juice Shop 进行了测试:
- 位于 `/usr/local/bin/nuclei` 的 Nuclei v3.3.9 —— 与扫描器配置中的硬编码路径匹配
- 已加载模板:涵盖 `exposure`、`misconfig`、`tech` 标签共 2898 个
- 扫描结果:13 项发现,包括公共 Swagger API 暴露、缺失安全标头、FingerprintHub/Wappalyzer 技术指纹以及 Prometheus 指标 endpoint
- 每一项发现都包含一个带有标记评分修饰符的 `reasoning_breakdown` 数组
- 所有与 Intelligence Library 匹配的发现均会填充受众指导
- 角色切换(学生 → 开发者 → Bug Bounty Hunter → 安全专家)改变的是指导内容,而不仅仅是标签
## 已知局限性
- **WAF 加固的目标**(例如 github.com)在设计上会返回较少的发现。Nuclei 在遇到 429 状态码时会主动退避——这是为了遵守速率限制,而不是网络路径故障。
- **扫描外部目标**需要 worker 容器具有出站互联网访问权限。内部目标必须位于同一 Docker 网络中。
- **Intelligence Library 覆盖范围**属于 V1 阶段:5 种服务(SSH、HTTP、HTTPS、MySQL、Redis),4 种技术(Apache、Nginx、Tomcat、WordPress),5 类漏洞(SQLi、XSS、SSRF、IDOR、RCE)。超出此范围的发现仅提供基础推理——对于未匹配的模板 ID,`audience_guidance` 将为空。
- V1 版本中**没有 API 身份验证**。请勿将 8000 端口公开暴露。
完整的愿景、V2 路线图和设计决策:[ARGUS_SENTINEL.md](ARGUS_SENTINEL.md)
## 许可证
MIT —— 详情请参阅 [LICENSE](LICENSE)。
标签:AI推理引擎, CTI, GitHub, Python, React, Syscalls, 占用监测, 实时处理, 密码管理, 搜索引擎查询, 无后门, 版权保护, 资产管理