janderik/ioc-feeds
GitHub: janderik/ioc-feeds
该项目是一个 Python 编写的威胁情报聚合工具,从多个公开 IOC feed 源采集失陷指标并进行格式标准化,输出 STIX、MISP、JSON、CSV 等通用格式供下游安全系统消费。
Stars: 0 | Forks: 0
# IOC Feeds
[](https://www.python.org/downloads/)
[](LICENSE)
[]()
[]()
一个 IOC(Indicators of Compromise,失陷指标)feed 聚合与标准化系统,从多个来源收集威胁情报并输出标准化格式。
## 架构
```
ioc-feeds/
├── src/
│ ├── feeds/ # Core feed engine
│ ├── sources/ # Feed source connectors
│ ├── normalizers/ # IOC format normalizers
│ ├── output/ # Output formatters (STIX, CSV, JSON)
│ └── cli.py # CLI
├── README.md
├── requirements.txt
├── Dockerfile
└── setup.py
```
## 功能
### Feed 来源
| 来源 | 描述 |
|--------|-------------|
| **OTX (AlienVault)** | 开放威胁交换 pulse feeds |
| **VirusTotal** | 恶意文件/URL/IP 情报 |
| **AbuseIPDB** | IP 地址滥用报告 |
| **URLhaus** | 恶意 URL feed |
| **PhishTank** | 钓鱼 URL 数据库 |
| **MalwareBazaar** | 恶意软件样本库 |
| **ThreatFox** | IOC 共享平台 |
| **CIRCL** | 证书情报 |
| **Emerging Threats** | ET Open 规则 |
| **自定义 Feeds** | 自定义 CSV/JSON/STIX feeds |
### 支持的 IOC 类型
- IP 地址 (IPv4/IPv6)
- 域名
- URL
- 文件哈希 (MD5, SHA-1, SHA-256)
- 电子邮件地址
- CVE 标识符
- YARA 规则
### 输出格式
- **JSON** - 标准 JSON 格式
- **CSV** - 逗号分隔值
- **STIX 2.1** - 结构化威胁信息
- **MISP** - 恶意软件信息共享平台格式
## Feed 来源列表
```
OTX Pulses: https://otx.alienvault.com/api/v1/pulses
VirusTotal: https://www.virustotal.com/api/v3/
AbuseIPDB: https://api.abuseipdb.com/api/v2/
URLhaus: https://urlhaus-api.abuse.ch/v1/
PhishTank: http://data.phishtank.com/data/
MalwareBazaar: https://bazaar.abuse.ch/api/
ThreatFox: https://threatfox-api.abuse.ch/api/v1/
Emerging Threats: https://rules.emergingthreats.net/open/
CIRCL: https://www.circl.lu/doc/misp/feed-osint/
Custom: Local CSV/JSON/STIX files
```
## IOC 格式
```
{
"ioc_id": "abc123",
"type": "ip_address",
"value": "192.168.1.100",
"confidence": 85,
"severity": "high",
"source": "otx",
"tags": ["c2", "malware"],
"first_seen": "2024-01-15T10:00:00Z",
"last_seen": "2024-01-20T10:00:00Z",
"tlp": "WHITE",
"references": ["https://example.com/report"]
}
```
## 安装
```
git clone https://github.com/janderik/ioc-feeds.git
cd ioc-feeds
pip install -r requirements.txt
pip install -e .
```
## 用法
### 从所有来源收集
```
ioc-feeds collect --all --output ./iocs
```
### 从特定来源收集
```
ioc-feeds collect --source otx --output ./iocs
ioc-feeds collect --source virustotal --api-key YOUR_KEY --output ./iocs
```
### 导出为不同格式
```
ioc-feeds export --input ./iocs --format stix --output iocs.json
ioc-feeds export --input ./iocs --format csv --output iocs.csv
```
## 贡献
1. Fork 该仓库
2. 创建一个功能分支
3. 提交你的更改
4. 推送到该分支
5. 发起一个 Pull Request
## 许可证
MIT 许可证 - 详情请参阅 [LICENSE](LICENSE)。
标签:Python, STIX, 威胁情报, 安全, 开发者工具, 数据聚合, 文档结构分析, 无后门, 请求拦截, 超时处理, 逆向工具