jhuntinfosec/netthrunter
GitHub: jhuntinfosec/netthrunter
NetThrunter 是一套包含 19 个模块的高级威胁基础设施追踪课程与工程框架,帮助安全研究者通过行为指纹和结构重合主动识别、追踪与归因威胁行为者的基础设施。
Stars: 2 | Forks: 0
# netthrunter
**高级基础设施与对手追踪课程 (AIH-C)**
这是一个包含 19 个模块的技术课程和工程框架,旨在主动识别、追踪和映射威胁行为者的基础设施。专为希望超越静态 IOC、专注于对手基础设施的行为指纹和结构重合的高级威胁研究员和安全工程师而打造。
## 快速开始
```
# 克隆和设置
git clone https://github.com/jhuntinfosec/netthrunter.git
cd netthrunter
python3 -m venv .venv
source .venv/bin/activate
# 安装核心 dependencies
pip install pandas networkx matplotlib scikit-learn httpx jupyterlab
# 启动 background infrastructure(用于 graphs 的 Neo4j、JupyterLab)
docker-compose up -d
# 运行任意 capstone project(均以 demo/mock 模式工作)
python projects/0x01_jarm_scanner/tls_fingerprint.py
# 现在可以通过统一的 IOC schema 将 modules 串联起来
python projects/0x01_jarm_scanner/tls_fingerprint.py | python projects/0x0F_ttp_profiler/ttp_profiler.py
# 通过 Jupyter Notebooks 与 data science modules 交互
jupyter lab
# 在本地提供 curriculum docs
pip install mkdocs-material
mkdocs serve
```
## 课程大纲
每个模块都将教学文档(理论、技术、工具参考、案例研究)与可运行的 Python 顶点项目配对。
| 模块 | 重点 | 顶点项目 | LOC |
|--------|-------|-----------------|-----|
| **0x01** | [结构指纹识别](docs/modules/0x01_structural_fingerprinting.md) | 带已知 C2 哈希数据库的 JARM/JA3 扫描器 | 774 |
| **0x02** | [基础设施映射](docs/modules/0x02_infrastructure_mapping.md) | 带 DNS 解析和 WHOIS 的 CT 日志追踪器 | 669 |
| **0x03** | [重合与聚类](docs/modules/0x03_overlap_clustering.md) | 带图谱可视化的 Jaccard 相似度聚类 | 563 |
| **0x04** | [C2 与开放式目录](docs/modules/0x04_c2_open_directories.md) | C2 框架指纹识别器(7 种框架) | 953 |
| **0x05** | [泄露与窃密情报](docs/modules/0x05_leak_stealer_intel.md) | 带家族检测的窃密日志解析器 | 722 |
| **0x06** | [边缘层混淆](docs/modules/0x06_edge_layer_obfuscation.md) | CDN/WAF 指纹识别器与源站发现 | 946 |
| **0x07** | [基于图谱的追踪](docs/modules/0x07_graph_based_hunting.md) | 带社区发现的 NetworkX 图谱构建器 | 588 |
| **0x08** | [代理与僵尸网络层](docs/modules/0x08_proxy_botnet_layers.md) | 带风险评分的 IP 情报分类器 | 888 |
| **0x09** | [追踪者 OPSEC](docs/modules/0x09_hunter_opsec.md) | 带 SAM 模板的分布式 Lambda 扫描器 | 610 |
| **0x0A** | [用于追踪的数据科学](docs/modules/0x0A_data_science_hunting.md) | 熵 + K-Means + Isolation Forest 分类器 | 618 |
| **0x0B** | [云基础设施追踪](docs/modules/0x0B_cloud_infrastructure.md) | 映射云提供商、服务、存储暴露和 serverless 滥用 | 256 |
| **0x0C** | [追踪资金(加密货币追踪)](docs/modules/0x0C_crypto_tracking.md) | 追踪交易图谱、钱包集群和服务标签 | 218 |
| **0x0D** | [LLM 与 AI 辅助的威胁追踪](docs/modules/0x0D_llm_hunting.md) | 使用确定性及可选 LLM 角色提取并验证 IOC | 185 |
| **0x0E** | [主动防御与欺骗](docs/modules/0x0E_active_defense.md) | 通过模拟富化分析诱饵扫描器遥测数据 | 183 |
| **0x0F** | [威胁画像与 TTP 矩阵映射](docs/modules/0x0F_threat_profiling.md) | 将 IOC 映射到 ATT&CK 技术和行为者档案 | 179 |
| **0x10** | [检测工程与遥测标准化](docs/modules/0x10_detection_engineering.md) | 构建 Sigma 风格的规则和 OCSF 风格的示例 | 125 |
| **0x11** | [身份、SaaS 与 OAuth 基础设施追踪](docs/modules/0x11_identity_saas_hunting.md) | 对 SaaS/OAuth 审计事件进行评分并透视域名 | 129 |
| **0x12** | [容器、Kubernetes 与镜像仓库追踪](docs/modules/0x12_container_kubernetes_hunting.md) | 对 Kubernetes 和镜像仓库暴露元数据进行评分 | 120 |
| **0x13** | [被利用漏洞与基础设施关联](docs/modules/0x13_kev_infrastructure_correlation.md) | 将 KEV 条目与暴露服务的指纹相关联 | 111 |
所有项目均在零配置的 **mock/demo 模式**下运行——无需 API 密钥。真实的 API 集成(Shodan、crt.sh、ip-api.com、Telegram)可通过环境变量激活。
## 仓库结构
```
docs/
modules/ 19 teaching modules (Markdown, served via MkDocs)
index.md Landing page
projects.md Capstone projects overview
projects/
0x01_jarm_scanner/ tls_fingerprint.py
0x02_ct_hunter/ ct_hunter.py
0x03_overlap_clustering/ ssh_cluster.py
0x04_c2_dorker/ c2_dorker.py
0x05_leak_parser/ leak_parser.py
0x06_edge_layer/ cdn_tester.py
0x07_graph_builder/ graph_builder.py
0x08_proxy_validator/ proxy_validator.py
0x09_lambda_scanner/ lambda_scanner.py
0x0A_entropy_classifier/ entropy.py
0x0B_cloud_mapper/ cloud_mapper.py
0x0C_crypto_tracer/ crypto_tracer.py
0x0D_intel_extractor/ intel_extractor.py
0x0E_decoy_listener/ decoy_listener.py
0x0F_ttp_profiler/ ttp_profiler.py
0x10_detection_pack/ detection_pack_builder.py
0x11_saas_identity_hunter/saas_audit_hunter.py
0x12_k8s_mapper/ k8s_exposure_mapper.py
0x13_kev_correlator/ kev_infra_correlator.py
books/ Offline reference library (PDFs, gitignored)
mkdocs.yml MkDocs Material configuration
```
## 涵盖的核心技术
**指纹识别** — JARM(10 探测 TLS)、JA3/JA3S、JA4+ 家族、HTTP/2 SETTINGS 指纹识别、SSH HASSH
**基础设施映射** — 证书透明度日志(CT logs)、被动 DNS 透视、WHOIS 历史聚类、子域名枚举
**聚类与归因** — Jaccard 相似度、Union-Find 分组、防弹托管 ASN 分析、时间配置模式
**C2 检测** — Cobalt Strike checksum8 算法、Sliver/Havoc/Mythic/BRC4 签名、开放式目录追踪、stager 识别
**来自泄露的威胁情报** — 窃密软件家族检测(Redline、Vidar、Lumma、Raccoon)、Telegram bot token 验证、凭据提取
**规避分析** — Domain fronting 机制、CDN 源站发现(6 种技术)、WAF 指纹识别(5 家提供商)、Cloudflare Tunnel 检测
**图谱分析** — 度/介数/PageRank 中心性、Louvain 社区发现、Neo4j Cypher 生成、GEXF/pyvis 导出
**代理情报** — 住宅 IP 与数据中心的分类、BGP/ASN 分析、Spamhaus DROP 检查、综合风险评分
**数据科学** — 用于 DGA 检测的香农熵、带肘部法则的 K-Means、Isolation Forest 异常检测、特征工程 pipeline
**检测与响应启用** — Sigma 风格规则、OCSF 风格标准化、ATT&CK 映射、SaaS/OAuth 审计透视、Kubernetes 暴露评分以及 KEV 到基础设施的关联
## 引用的工具
课程在每个模块中结合上下文集成了以下工具:
| 类别 | 工具 |
|----------|-------|
| 扫描与发现 | Shodan, Censys, FOFA, Subfinder, Amass |
| 指纹识别 | JARM, JA3/JA4+, SSLBL (abuse.ch), ja3er.com |
| 被动情报 | crt.sh, SecurityTrails, VirusTotal, PassiveTotal |
| 图谱绘制 | Neo4j, Maltego, Gephi, NetworkX, pyvis |
| IP 情报 | MaxMind GeoLite2, IPinfo.io, BGPView, Spamhaus |
| 恶意软件分析 | MalwareBazaar, URLhaus, Any.Run, Triage |
| OPSEC | AWS Lambda/SAM, curl_cffi, Tor, proxychains |
| 检测工程 | Sigma, OCSF, ATT&CK Navigator |
| 云/SaaS/容器 | CISA SCuBA, 云审计日志, Kubernetes 元数据, CISA KEV |
## 依赖项
**必需:** Python 3.10+, pandas
**推荐:** scikit-learn, networkx, matplotlib, httpx
**可选(增强特定模块):** jarm-py, shodan, python-whois, geoip2, pyvis
```
# 安装所有内容
pip install pandas scikit-learn networkx matplotlib httpx jarm-py shodan python-whois pyvis
```
## 参考书库
`books/` 目录(被 gitignored)通过以下书目为课程提供支持:
- *Black Hat Python 2E* 与 *Hacking APIs* — 网络、TLS/证书扫描器(模块 1、2、4、6)
- *The Threat Hunter's Query Playbook* — 重合与聚类逻辑(模块 3)
- *Data Engineering for Cybersecurity* — 窃密日志处理、图谱建模、熵(模块 5、7、10)
- *Art of Cyber Warfare* 与 *Adversarial Tradecraft* — 代理分析、OPSEC(模块 8、9)
## 道德与法律
本课程仅供**授权的防御性研究使用**。
- 未经书面授权,绝不扫描任何基础设施
- 在进行主动扫描之前,请先穷尽被动来源(Shodan、Censys、CT 日志)
- 绝不使用在窃密日志中发现被盗的凭据
- 将被攻陷的合法基础设施报告给所有者和相关的 CERT
- 遵守您所在组织的交战规则和适用法律(CFAA、CMA 等)
有关全面的 OPSEC 和法律指导,请参阅模块 0x09。
## 许可证
私有仓库。保留所有权利。
标签:GitHub, IP 地址批量处理, Python, 培训教程, 基础设施测绘, 威胁情报, 开发者工具, 无后门, 特权检测, 请求拦截, 逆向工具