Edi-San24/OSINT-Pivot-Engine
GitHub: Edi-San24/OSINT-Pivot-Engine
该项目是一个利用 AI Agent 实现自动化跨源 OSINT 链式追踪的威胁情报分析引擎,帮助 CTI 分析师从单一指标自主挖掘并关联威胁基础设施和攻击者画像。
Stars: 1 | Forks: 0
# OSINT Pivot 引擎





## 面临的问题
CTI 分析师面临一个持续的瓶颈:即使有了自动化收集和分类 pipeline,跨源追踪(pivoting)仍然需要手动完成。一个标签页接着一个标签页,一个来源接着一个来源,一次又一次地复制粘贴。在时间压力下,这正是遗漏关键洞察的原因。单个 indicator 可能涉及 VirusTotal、Shodan、PassiveDNS、证书透明度日志、MITRE ATT&CK 以及暗网索引。手动串联这些查询所花费的时间,是处理活跃事件的分析师所不具备的。
OSINT Pivot Engine 负责处理这一层工作,以便分析师能够专注于研判,而不是数据收集。
## 功能介绍
- **自动化 pivot 链式追踪:** 投入一个种子 indicator,agent 便会自动跨 OSINT 来源进行查询,无需人工干预即可实现从 IP 到域名、到证书再到相关恶意软件样本的链式追踪
- **威胁组织画像:** 通过对手名称进行查询,展现完整的 MITRE ATT&CK TTP 映射、别名以及关联的恶意软件家族
- **双重置信度评分:** 基于真实 ThreatFox IOC 特征模式训练的原始 ML 分数,外加一个上下文调整分数(考虑共享基础设施,如 CDN 和 Tor 出口节点)
- **Hash pivot 链式追踪:** 以文件 hash 作为种子,获取 VT 检测结果和 MalwareBazaar 元数据,然后通过恶意软件家族标签聚类自动串联到相关样本
- **STIX 2.1 导出:** 将任何调查打包为结构化的 STIX bundle,可由 MISP、OpenCTI、Splunk 或任何兼容 TAXII 的 TIP 导入
- **分析师友好的输出:** 结构化的调查摘要,包含威胁评估、可见性盲区和建议措施,专为需要快速做出决策的 SOC 分析师编写
## 工作原理
```
Seed Indicator (IP / Domain / Hash / Threat Group)
|
v
Type Detection
|
v
LangGraph AI Agent (Claude Sonnet)
|
v
Pivot Chain Executor (connectors fire across all relevant sources)
|
v
Discovered indicators queued (agent follows the chain autonomously)
|
v
ML Scoring + Context Layer
|
v
Investigation Summary + optional STIX 2.1 export
```
## Connectors
| 来源 | 贡献 |
|--------|-------------|
| VirusTotal | 恶意投票共识、文件信誉、恶意软件家族分类 |
| Shodan | 开放端口、Banners、托管 ASN、暴露服务 |
| PassiveDNS (Mnemonic) | 历史 DNS 解析记录、IP 到域名以及域名到 IP 的映射 |
| WHOIS | 注册商、注册日期、过期时间、域名服务器 |
| crt.sh | 证书透明度日志、子域名发现 |
| Ahmia | 暗网索引搜索,用于在 .onion 空间中查找 indicator 提及 |
| MITRE ATT&CK | TTP 映射、威胁组织画像、恶意软件家族归因 |
| MalwareBazaar | Hash 分诊、恶意软件家族分类、相关样本聚类 |
## 支持的 Indicator 类型
| 类型 | 示例 |
|------|---------|
| IPv4 | `185.220.101.45` |
| Domain | `paypal-login-secure.com` |
| MD5 | `44d88612fea8a8f36de82e1278abb02f` |
| SHA1 | `3395856ce81f2b7382dee72602f798b642f14d0` |
| SHA256 | `a172b48466dd433ca36585641f5df51d69a426e2451411966b7d2268ede3703f` |
| Threat Group | `Lazarus Group` |
## 用法
```
# 基础调查
python main.py --seed "185.220.101.45"
# 将完整结果保存为 JSON
python main.py --seed "paypal-login-secure.com" --output results.json
# 导出为 STIX 2.1 bundle
python main.py --seed "db349b97c37d22f5ea1d1841e3c89eb4" --export-stix investigation.json
# 覆盖 pivot 深度
python main.py --seed "suspicious-domain.com" --depth 5
# Threat group TTP 分析
python main.py --seed "Lazarus Group"
```
## 示例输出
```
══════════════════════════════════════
OSINT PIVOT ENGINE
── Autonomous Threat Intelligence · v1.0
══════════════════════════════════════
Seed: db349b97c37d22f5ea1d1841e3c89eb4
Pivots run 3
Findings 13
ML Score 0.9977 (raw feature pattern match)
Context Score 0.9977 (adjusted for infrastructure type)
Infrastructure unknown
Risk Level HIGH
Investigation Summary:
Confirmed WannaCry ransomware (68/68 VT detections). Pivoting via
MalwareBazaar tag clustering surfaced 10 related samples captured
by honeypot sensors within the last 48 hours, confirming active
SMBv1 scanning in the wild. MITRE ATT&CK attributes to Lazarus
Group (HIDDEN COBRA / ZINC / Diamond Sleet) with 16 mapped
techniques including EternalBlue lateral movement (T1210) and
data encryption for impact (T1486).
```
## 设置
**环境要求**
- Python 3.10+
- Playwright(用于暗网 connector)
- 以下服务的 API 密钥:VirusTotal, Shodan, Censys, Anthropic, MalwareBazaar (abuse.ch)
**安装**
```
git clone https://github.com/Edi-San24/osint-pivot-engine
cd osint-pivot-engine
pip install -r requirements.txt
playwright install chromium
```
**配置**
将 `.env.example` 复制到 `.env` 并填入你的 API 密钥:
```
ANTHROPIC_API_KEY=
VIRUSTOTAL_API_KEY=
SHODAN_API_KEY=
CENSYS_API_KEY=
THREATFOX_API_KEY=
```
**运行**
```
python main.py --seed "your-indicator-here"
```
## 项目状态
活跃开发中。核心 pipeline 已完成,并针对实时威胁基础设施进行了测试。
**已完成**
- 带有有状态 pivot 循环和自主队列管理的 LangGraph agent
- 全部八个 connector 已连接并完成测试
- 通过 MalwareBazaar 标签聚类实现 Hash pivot 链式追踪
- 通过 MITRE ATT&CK 进行威胁组织画像
- 双重 ML + 上下文置信度评分
- MLflow 实验跟踪
- STIX 2.1 导出
- 具有颜色编码风险级别和 JSON 导出功能的 Rich CLI
- 通过 Playwright 无头浏览器实现的暗网 connector
**路线图**
- URLhaus connector
- PyPI 打包
- 改进 CLI 界面
- 使用 Fable 5 模型进行 Agent 逻辑实验
标签:DLL 劫持, ESC4, LangGraph, OSINT, Python, STIX, 大语言模型, 威胁情报, 开发者工具, 无后门, 特征检测, 自动化分析, 跨站脚本, 逆向工具