aptwatcher/aptwatch
GitHub: aptwatcher/aptwatch
专注于追踪俄罗斯APT基础设施的开源威胁情报平台,集IOC聚合、多源验证和实时黑名单生成于一体。
Stars: 2 | Forks: 1
APT Intel
追踪俄罗斯 APT 基础设施的开源威胁情报数据库。
汇总来自 OSINT 源的 IOC,通过 10 多个 API 进行验证,并提供实时黑名单源。
Schema: v2.0 | 状态: 活跃
## 架构
项目分为三个目标。
| 组件 | 内容 | 位置 |
|-----------|------|-------|
| 核心数据库 | `apt_intel.db` (400MB+), API 服务器, 验证 cron | 私有服务器 |
| DDoS 防护 | WAF, 速率限制, 源站 IP 遮蔽 | Cloudflare |
| 公共仓库 | 脚本, IOC 文件, 黑名单, 仪表板, CI/CD | GitHub + Pages |
## 快速开始
### 本地(仅分析)
```
git clone https://github.com/aptwatcher/aptwatch.git
cd aptwatch
cp config.ini.example config.ini # Add your API keys
python3 apt.py # Interactive menu
python3 apt.py query stats # Database statistics
```
### 服务器部署
服务器部署脚本和文档单独维护。请联系维护者获取访问权限。
## API 端点
部署后,服务器公开以下源(均为只读):
| 端点 | 格式 | 描述 |
|----------|--------|-------------|
| `/api/blocklist/ips/high` | firehol .netset | 高置信度 IP(5+ OSINT 源) |
| `/api/blocklist/ips/medium` | firehol .netset | 中置信度(3+ 源) |
| `/api/blocklist/ips` | firehol .netset | 所有已验证 IP |
| `/api/blocklist/subnets` | firehol .netset | 高密度 /24 子网 |
| `/api/blocklist/domains` | StevenBlack .hosts | 恶意域名 |
| `/api/blocklist/combined` | StevenBlack .hosts | IP + 域名组合 |
| `/api/feed/json` | JSON | 带元数据的最新 IOC |
| `/api/ioc/
` | JSON | 单个 IP 的完整档案 |
| `/api/search?q=` | JSON | 跨 IOC 搜索 |
| `/api/stats` | JSON | 数据库统计 |
静态黑名单文件也可在 `/static/blocklists/` 下以及通过 GitHub Pages 获取。
## CLI
所有操作通过 `apt.py` 进行:
```
python3 apt.py # Interactive menu
python3 apt.py --help # All commands
# Core commands
python3 apt.py rebuild # Full DB rebuild from source files
python3 apt.py import iocs # Re-import IOC files
python3 apt.py import vulnscan scan.csv # Import vulnerability scan
python3 apt.py query stats # Full statistics
python3 apt.py query ip 1.2.3.4 # Full IP profile
python3 apt.py query critical # Top critical IPs
# Recon & enrichment
python3 apt.py recon enrich-top 100 # Enrich via ip-api.com + RDAP
python3 apt.py recon detect-staging # Find staging/relay servers
python3 apt.py recon find-candidates # Discover new candidates
# OSINT validation (10 sources)
python3 apt.py validate auto # Scheduled run (respects daily limits)
python3 apt.py validate run all 100 # All sources, 100 IPs each
python3 apt.py validate check 1.2.3.4
python3 apt.py validate status # Coverage stats
# Export & blocklists
python3 apt.py export # Web DB for dashboard
python3 scripts/generate_blocklists.py
```
## 验证源
| 源 | 需要 Key | 免费层 |
|--------|-------------|-----------|
| Shodan InternetDB | 否 | 无限制 |
| DShield/SANS ISC | 否 | ~5,000/天 |
| abuse.ch ThreatFox | 否 | ~5,000/天 |
| FireHOL blocklists | 否 | 离线 |
| Steven Black hosts | 否 | 离线 |
| AlienVault OTX | 是 | ~10,000/天 |
| AbuseIPDB | 是 | 1,000/天 |
| VirusTotal | 是 | 500/天 |
| Censys | 是 | 有限 |
所有源均为可选。缺失的 key 会被自动跳过。
## 自动化
### 服务器(systemd 定时器)
- 验证每 6 小时运行一次
- 每次验证后重新生成黑名单
- 更新的 IOC/黑名单自动推送到 GitHub
### GitHub Actions
- `validate.yml` — 定时 OSINT 验证(每 6h)
- `blocklists.yml` — IOC 变更时重新生成黑名单
- `pages-deploy.yml` — 将仪表板部署到 GitHub Pages
- `validate-pr.yml` — 验证社区 IOC 提交
### 本地(Windows/Linux)
- `tasks/linux/validate_continuous.sh` — 持续验证循环
- `tasks/linux/import_incremental.sh` — 监控新扫描文件
- `tasks/run.bat` / `tasks/linux/run.sh` — 快速启动器
## 项目结构
```
aptwatch/
├── apt.py # CLI entry point
├── scripts/ # Core Python modules
│ ├── validate.py # OSINT validation (10 sources)
│ ├── import_data.py # Data importer
│ ├── query.py # Database queries
│ ├── recon.py # Enrichment & discovery
│ ├── rebuild.py # Database rebuild
│ ├── export.py # Web DB export
│ ├── generate_blocklists.py # Blocklist generator
│ └── db_manager.py # DB utilities
├── .github/workflows/ # CI/CD
├── database/schema_v2.sql # Schema definition
├── iocs/ # IOC text files
├── blocklists/ # Generated blocklists
├── community/ # Community IOC submissions
├── web/ # GitHub Pages dashboard
├── config.ini.example # Config template
└── requirements.txt # Python dependencies
```
## 社区贡献
通过 Pull Request 提交 IOC。详情请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。
贡献者在 `community/submissions/` 中添加一个 YAML 文件。GitHub Action 会验证格式并检查重复。维护者审核并导入批准的 IOC。
## 法律声明
所有 IOC 均来源于公开的 OSINT 源和报告。进攻性使用需获得适当授权。标签:APT追踪, C2服务器, ESC4, Firehol列表, IOC数据库, IP黑名单, OSINT, Python安全工具, StevenBlack列表, 俄罗斯APT, 信标验证, 域名拦截, 威胁情报, 实时处理, 密码管理, 开发者工具, 攻击基础设施, 网络安全, 逆向工具, 配置审计, 防御 evasion, 隐私保护