FareehaNaveed/IOC_EXTRACTOR
GitHub: FareehaNaveed/IOC_EXTRACTOR
一款基于 Python 的 IoC 自动提取与威胁情报富化工具,帮助 SOC 分析师从告警文本中快速提取指标并评估风险等级。
Stars: 1 | Forks: 0
# SOC IoC 提取器与威胁情报富化
用于从 SOC 告警中提取 IoC、通过 VirusTotal 和 AbuseIPDB 进行富化、评估风险并生成 JSON 和 CSV 报告的生产级 Python 3.13 项目。
## 功能
- 通过正则表达式提取 IPv4、URL、域名、MD5、SHA1、SHA256
- IoC 去重与结构化输出
- 针对 IP、域名、URL 和文件哈希的 VirusTotal 富化
- 针对 IP 信誉的 AbuseIPDB 富化
- 可配置的风险评分引擎(低、中、高)
- 在 reports 文件夹中生成 JSON 和 CSV 报告
- 应用程序日志记录至 logs/application.log
- 自动处理两个示例文件
## 文件夹结构
- main.py:应用程序入口点与 SOC 处理工作流
- config.py:集中设置、路径、API 密钥和超时配置
- regex_extractor.py:可复用的正则表达式提取逻辑
- virustotal.py:VirusTotal API 客户端模块
- abuseipdb.py:AbuseIPDB API 客户端模块
- risk_scoring.py:风险计算与阈值设定
- report_generator.py:JSON 和 CSV 报告生成
- logger.py:用于控制台和文件的日志设置
- utils.py:辅助方法与颜色格式化
- benign_alert.txt:良性 SOC 示例告警
- malicious_alert.txt:恶意 SOC 示例告警
- reports/report.json:输出的 JSON 报告
- reports/report.csv:输出的 CSV 报告
- logs/application.log:运行时日志
## 安装说明
1. 确保已安装 Python 3.13。
2. 在 Visual Studio Code 中打开此项目。
3. 安装依赖:
```
pip install -r requirements.txt
```
## 配置 API 密钥
编辑 config.py 并设置:
- VT_API_KEY
- ABUSEIPDB_API_KEY
示例:
```
VT_API_KEY = ""
ABUSEIPDB_API_KEY = ""
```
## 运行
```
python main.py
```
## 预期的终端输出
```
====================================
IOC EXTRACTION REPORT
====================================
Processing: malicious_alert.txt
✓ IP Found
✓ URL Found
✓ Domain Found
✓ SHA256 Found
Checking VirusTotal...
Checking AbuseIPDB...
Risk Score: HIGH
JSON Report Generated: reports/report.json
CSV Report Generated: reports/report.csv
Completed Successfully
====================================
```
## 输出字段
每个报告行包含:
- alert_id
- ioc
- ioc_type
- source_file
- virustotal_reputation
- abuseipdb_reputation
- risk_score
- risk_numeric_score
- timestamp
## 错误处理覆盖范围
- 缺失或空的告警文件
- 无互联网连接 / 网络故障
- DNS 和传输错误
- API 超时处理
- 无效 API 密钥处理
- 速率限制(HTTP 429)
- 缺失的报告/日志目录(自动创建)
## 未来改进
- 异步 API 富化以实现更高的吞吐量
- IoC 查询的缓存层
- 单元测试和 CI pipeline
- STIX/TAXII 导出支持
- 用于自定义告警输入路径的 CLI 参数
标签:AbuseIPDB, Ask搜索, IoC提取, Python, VirusTotal, 威胁情报, 安全运营, 开发者工具, 扫描框架, 无后门, 网络信息收集, 自动化分析, 跨站脚本, 逆向工具, 配置审计