samthehackers/NEXUS
GitHub: samthehackers/NEXUS
NEXUS 是一款将安全事件转化为攻击路径优先级的 AI 驱动行为检测引擎,帮助 SOC 分析师判断每个发现对关键资产的实际威胁程度。
Stars: 0 | Forks: 0
# NEXUS
**AI 驱动的行为检测与攻击路径引擎 — TrustGeeks Security**
NEXUS 回答了 SOC 分析师真正需要回答的问题:不仅仅是
*“这个警报奇怪吗?”*,而是 *“如果我忽略它,攻击者
能达到什么目的?”*
它接收安全日志(身份验证、云、通用日志),对其运行可解释的
行为
检测器,并将每个被标记的用户/主机映射到实时攻击
图上,以计算通往您最关键资产的排名路径。它是
TrustGeeks 开源套件的一部分,与 [SENTINEL](#)(紫队平台)、
[TrustMap](#)(侦察编排器)和 [MIRAGE](#)(钓鱼/社会
工程检测)并驾齐驱。
## 为什么需要
大多数 SOC 工具会导致警报疲劳:成千上万的发现,却没有
优先级感。NEXUS 通过根据攻击者距离关键资产的接近程度对
每个发现进行评分,弥合了 *检测* 与 *影响* 之间的差距 — —
使用透明、可解释的启发式算法,而不是黑盒。
## 功能
- **日志摄取**:将身份验证日志、CloudTrail 风格的云日志和
通用 JSON 事件标准化为一个事件模型。
- **行为检测**:不可能的行程、非工作时间的特权访问、
海量资源访问、权限提升链 — 每条规则都是
一个可读的函数,您可以审计和扩展。
- **MITRE ATT&CK 映射**:每个发现都标记有它映射到的 ATT&CK
技术,这些技术来自一个明确的、手工维护的
表
(`nexus/intel/mitre.py`) — — 而不是推断/ML 映射。
- **综合风险评分**:将严重性与可选的 CVSS
(来自您自己的漏洞扫描器)、业务关键性和攻击路径
长度结合在一起,通过可见的、固定的权重计算出一个 0-10 的评分。
- **攻击图引擎**:构建主机/用户/资源的有向图,
并使用加权遍历难度计算通往关键资产的排名攻击路径。
- **交互式图可视化**:HTML 报告会渲染实际的
攻击图 (vis-network) — — 入口点、跳跃和关键目标
采用颜色编码 — — 而不仅仅是一个路径列表。
- **威胁情报 / IOC 富化**:可插拔的接口
(`nexus/intel/ioc.py`),带有参考性的静态信誉列表
实现。通过使用您的 API 密钥实现相同的接口,
引入您自己的实时情报源 (AbuseIPDB、VirusTotal 等)。
- **流式摄取**:经过测试的 Redis Streams 消费者
(`nexus/streaming/`),用于通过消费者组进行实时日志摄取。
Kafka/RabbitMQ 后端可以实现相同的 `StreamConsumer` 接口。
- **LLM 调查摘要**:通过 Anthropic API
(`nexus/llm/investigate.py`) 将原始发现及其攻击路径
上下文转化为分析师可读的叙述。需要您自己的 `ANTHROPIC_API_KEY` — —
如果没有它,NEXUS 绝不会编造摘要。
- **报告**:JSON(机器可读)和 HTML(人类可读,包含
交互式图)报告。
- **CLI** (Typer) 和用于自动化的最小化 **REST API** (FastAPI)。
## 安装
```
git clone https://github.com/samthehackers/NEXUS.git
cd nexus
pip install -e ".[dev]"
```
## 快速开始
```
# 检测 auth log 中的异常
nexus detect --logs src/nexus/data/sample_auth_logs.json --log-type auth
# 对从 entry point 到 critical assets 的 attack paths 进行排名
nexus graph --topology src/nexus/data/sample_topology.json --entry-point workstation-12
# 完整 pipeline:检测 + 映射到 attack graph + 报告
nexus run \
--logs src/nexus/data/sample_auth_logs.json --log-type auth \
--topology src/nexus/data/sample_topology.json \
--entry-point workstation-12 \
--out ./nexus-report
# 同上,包含 IOC enrichment 和 LLM investigation summaries
nexus run \
--logs src/nexus/data/sample_auth_logs.json --log-type auth \
--topology src/nexus/data/sample_topology.json \
--entry-point workstation-12 \
--ioc-feed src/nexus/data/sample_ioc_feed.json \
--llm-summary \
--out ./nexus-report
```
`--llm-summary` 需要在您的环境中设置 `ANTHROPIC_API_KEY`。如果没有
它,NEXUS 会发出警告并跳过摘要,而不是编造一个。
打开 `nexus-report/nexus_report.html` 获取人类可读的报告,
包含完整的交互式攻击图。
### 作为 API 使用
```
uvicorn nexus.api.main:app --reload
# POST /analyze/logs { "log_type": "auth", "events": [...] }
# POST /analyze/graph { "assets": [...], "edges": [...], "entry_points": [...] }
```
## 输入格式
有关具体示例,请参见 [`src/nexus/data/sample_auth_logs.json`](src/nexus/data/sample_auth_logs.json)
和 [`src/nexus/data/sample_topology.json`](src/nexus/data/sample_topology.json)
。完整的字段定义在
[`ARCHITECTURE.md`](ARCHITECTURE.md) 中。
## v0.1 中包含的检测器
| 规则 | 捕获内容 |
|---|---|
| `impossible_travel` | 同一用户从两个国家/地区进行身份验证,速度快到无法是物理位移 |
| `off_hours_privileged_access` | 在工作时间之外的特权/管理员操作 |
| `mass_resource_access` | 用户在短时间内触及异常大量的资源(暂存/渗出签名) |
| `privilege_escalation_chain` | 连续的提权类型操作(策略授予、角色切换、组更改) |
这些是基于启发式的,而不是基于 ML 的 — 每个发现都会确切地告诉您是哪个
规则和事件触发了它。有关如何在同一接口后面添加新的
检测器或替换为统计/ML 模型的信息,请参见 `ARCHITECTURE.md`。
## 路线图
在 v0.2 中交付:MITRE ATT&CK 映射、综合风险评分(CVSS +
业务关键性 + 路径长度)、交互式攻击图
可视化、可插拔的 IOC/威胁情报富化、Redis Streams
摄取路径以及 LLM 驱动的调查摘要。
仍然开放:用于 `impossible_travel` 的实时 geo-IP 速度计算(目前是
国家/地区变更启发式算法),针对已经在运行这些代理的团队的 Kafka/RabbitMQ `StreamConsumer` 实现,以及为任何希望超越静态信誉列表进行
富化的人提供的实时威胁情报连接器
(AbuseIPDB/VirusTotal)。欢迎贡献 — — 请参见 `CONTRIBUTING.md`。
## 许可证
MIT — — 请参见 `LICENSE`。
标签:PE 加载器, 威胁情报, 安全运营, 开发者工具, 扫描框架, 攻击图, 行为检测, 逆向工具