diagonalciso/soc-osint
GitHub: diagonalciso/soc-osint
面向 SOC 蓝队的自托管被动 OSINT 侦察工具包,仅依赖 Python 标准库,从公开来源采集域名/IP 足迹并以 STIX 2.1 格式推送情报指标。
Stars: 0 | Forks: 0
# soc-osint
面向 SOC 的被动 OSINT 侦察。给它一个域名或 IP;它会从公开来源构建被动足迹,并将指标作为 STIX 2.1 (`x_clawint_source=soc-osint`) 推送到 **soc-intel**。CD SOC 套件的一部分。端口 **8105**。
自包含,**仅使用标准库** — 无 pip 依赖。
## 收集内容
| 来源 | 数据 | 被动? |
|--------|------|----------|
| DNS (`getaddrinfo`) | A / AAAA 记录 | 是 |
| 反向 DNS | PTR 主机名 | 是 |
| crt.sh | CT-log 子域名 / 证书名称 | 是 |
| rdap.org | 域名 + IP 注册、网络块、ASN 句柄 | 是 |
| archive.org | 最新的 Wayback 快照 | 是 |
| 目标 HTTP `HEAD` | `Server` 标头(可选启用) | **否 — 会接触目标** |
## 安全 / OPSEC
`ACTIVE_PROBES=0` 是默认设置。在该模式下,**不会连接到目标主机** — 仅查询公开的 OSINT 数据库,因此侦察不会在目标上留下任何痕迹。设置 `ACTIVE_PROBES=1` 可额外获取目标自身的 `Server` 标头(直接连接)。仅当探测目标在授权范围内时才执行此操作。
## STIX 推送
`ipv4/ipv6/subdomain/ptr` 发现结果将成为 STIX `indicator` 对象,并 POST 到 `SOCINT_API_URL/intel/bulk`(通过 `/auth/login` 进行 Bearer 认证),与 `soc-attack-surface` 模式相同。注册/网络块/ASN/Wayback 元数据会在本地存储,但不会推送(因为它们不是指标)。使用 `SOCINT_PUSH=0` 可禁用推送。
## 运行
```
cp .env.example .env # edit SOCINT_API_URL / creds
python3 app.py # http://0.0.0.0:8105
```
端点:`/` UI · `POST /api/scan?target=` · `GET /api/scan?id=` · `/api/history` · `/api/stats` · `/health`。
## 可选:SpiderFoot 深度扫描
此服务有意**不**捆绑 SpiderFoot — 它保持仅使用标准库,且可由集群验证。如果您想要重量级的枚举,请单独运行 SpiderFoot 并设置 `SPIDERFOOT_URL`;然后 UI 将显示一个“深度扫描 → SpiderFoot”链接。SpiderFoot 采用 MIT 许可协议,以后可以作为同级服务添加。
## 许可证
MIT(此应用)。参见 `LICENSE`。
## 文档
参见 **[MANUAL.md](MANUAL.md)** 获取完整手册(概述、配置、端点、集成、故障排除)。在运行中的仪表板里,点击右上角的 **`?` 帮助按钮**即可在 `/manual` 打开它。
标签:ESC4, GitHub, OSINT, Python标准库, STIX, 威胁情报, 安全侦察, 实时处理, 开发者工具, 逆向工具