shahdevam8/Threat-Intelligence-Aggregator
GitHub: shahdevam8/Threat-Intelligence-Aggregator
一款不依赖AI的威胁情报聚合工具,从多种格式情报源中自动收集、解析、去重和关联IOC指标,生成可直接用于安全防护的阻止列表和摘要报告。
Stars: 0 | Forks: 0
# 威胁情报聚合器(非 AI)
## 项目概述
**Threat Intelligence Aggregator (TIA)** 是一款实用的网络安全工具,旨在不使用 AI 或机器学习的情况下,从多个外部和内部情报源收集、解析、规范化和关联威胁情报指标。它生成可操作的阻止列表和报告,以增强您的安全态势。
现代网络安全严重依赖于准确和实时的威胁情报。入侵指标(IOC),如恶意 IP、URL、域名、文件哈希和电子邮件地址,通常分布在不同的来源中,且格式不一致。TIA 对这些情报源进行标准化处理,识别重复或高风险的指标,并生成可导出的阻止列表。
## 功能特性
* 支持多种 IOC 情报源格式:CSV、TXT、JSON
* 提取 IP、域名、URL、文件哈希、电子邮件
* 对指标进行去重和规范化
* 在不同情报源间关联重复指标
* 为高频威胁生成严重性评级
* 为防火墙、EDR、Web 过滤器生成阻止列表
* 生成用于监控和 SOC 团队的摘要报告
## 如何解决问题
TIA 解决了威胁情报中的常见挑战:
1. **情报源不一致:** 自动解析多种格式。
2. **冗余指标:** 关联并对重复的 IOC 进行去重。
3. **手动报告:** 生成自动化的阻止列表和报告。
4. **优先级排序:** 根据跨源出现的情况突出显示高风险指标。
5. **SOC 准备就绪:** 输出可直接在安全工具中使用。
## 工具与技术
* **编程语言:** Python 3.x
* **库:**
* `os`, `re`(文件和模式处理)
* `json`, `csv`(情报源解析)
* `requests`(获取在线情报源)
* `ipaddress`(IP 验证)
* `hashlib`(哈希验证)
## 文件夹结构
```
Threat-Intelligence-Aggregator/
├── aggregator.py # Main Python script
├── dashboard.py
├── report_generator.py
├── utils.py
├── feeds/ # Directory containing IOC feed files (TXT, CSV, JSON)
│ ├── sample.txt
│ ├── sample.csv
│ └── sample.json
├── output/ # Generated outputs
│ ├── blocklists/ # Blocklists by type (IPs, domains, URLs, hashes, emails)
│ └── report.txt # Summary report
└── requirements.txt # Python dependencies
```
## 安装说明
1. 克隆或下载该项目。
2. 安装所需的库:
```
pip install -r requirements.txt
```
**requirements.txt:**
```
requests
stix2
ipaddress
```
*(如果需要,您可以添加更多库,例如使用 `pandas` 进行高级 CSV 处理。)*
## 使用指南
1. 将 IOC 情报源文件放入 `feeds/` 文件夹中。
2. 运行聚合器:
```
python aggregator.py
```
3. 输出结果将生成在 `output/` 文件夹中:
* `output/blocklists/ips.txt`
* `output/blocklists/domains.txt`
* `output/blocklists/urls.txt`
* `output/blocklists/hashes.txt`
* `output/blocklists/emails.txt`
* `output/report.txt`
### 情报源示例
`feeds/sample.txt`:
```
192.168.1.100
malicious.com
user@evil.com
```
`feeds/sample.csv`:
```
bad.com,10.0.0.5,abcd1234abcd1234abcd1234abcd1234
```
`feeds/sample.json`:
```
[
"http://phishing-site.com/login",
"192.168.1.100",
"abcdefabcdefabcdefabcdefabcdefabcd"
]
```
### 输出示例
`output/blocklists/ips.txt`:
```
10.0.0.5
192.168.1.100
```
`output/report.txt` 包含唯一指标、跨源出现次数和高风险项的摘要。
## 它如何帮助用户
* **安全团队:** 从多个威胁情报源快速生成阻止列表和报告。
* **SOC 分析师:** 识别重复或高风险威胁并确定响应优先级。
* **防御自动化:** 输出结果可与防火墙、IDS 和端点工具集成。
* **学习与实验:** 了解 IOC 结构、规范化和关联工作流。
## 实际工作流
1. **加载情报源** – 加载 CSV、TXT、JSON 情报源。
2. **解析指标** – 提取 IP、URL、域名、哈希、电子邮件。
3. **规范化数据** – 去重和标准化。
4. **关联引擎** – 检测重复/高频的 IOC。
5. **生成阻止列表** – 生成按类别划分的文件。
6. **生成报告** – 生成关于情报源处理和结果的可读性摘要。
## 注意事项
* 运行前请确保 `feeds/` 文件夹存在。
* 定期更新您的情报源以获取准确的情报。
* 在部署到生产环境安全工具之前,请验证输出结果。
标签:IOC聚合, PB级数据处理, Python, 代码示例, 威胁情报, 字符串匹配, 安全运维, 开发者工具, 数据分析, 无后门, 自动化报告, 逆向工具