Nchabukac/Threat-Intelligence-Automation
GitHub: Nchabukac/Threat-Intelligence-Automation
一款基于 Python 的威胁情报自动化分析工具,能够解析 PCAP 网络流量与日志文件,结合四大威胁情报源进行威胁检测与关联分析,并生成结构化 Markdown 安全报告。
Stars: 0 | Forks: 0
# 威胁情报自动化
一款 Python 安全分析工具,用于提取和分析 PCAP 网络流量,检测威胁,并将发现的结果与多个威胁情报源进行关联。
## 功能
- **PCAP 分析** — 提取源/目的 IP、协议(TCP/UDP/HTTP/DNS)、User-Agent 字符串、DNS 查询、文件对象,并使用 `scapy` 从 TCP 流中**重构完整的 HTTP 请求**。
- **威胁检测** — 基于启发式/特征的扫描,用于检测恶意 User-Agent(sqlmap、nmap、nikto 等)、可疑 DNS 域名、危险文件扩展名,以及日志文件中的常见攻击模式(SQLi、XSS、路径遍历、命令注入、暴力破解、端口扫描)。
- **威胁情报关联** — 针对提取的 IP 和域名(DNS 查询 + HTTP Host 头)查询 4 个威胁情报源:
- [AlienVault OTX](https://otx.alienvault.com/)
- [AbuseIPDB](https://www.abuseipdb.com/)
- [URLhaus (Abuse.ch)](https://urlhaus.abuse.ch/)
- [ThreatFox (Abuse.ch)](https://threatfox.abuse.ch/)
- **Markdown 报告** — 生成结构化的 `security_report.md`,包含引言、范围、发现、建议、参考和结论。
## 前置条件
- Python 3.10+
- `pip`(Python 包管理器)
## 安装说明
由于使用 pip,建议使用虚拟环境
```
# Clone 或导航到项目目录
cd "Threat Intelligence Automation"
# 创建并激活虚拟环境
python3 -m venv venv
source venv/bin/activate
# 安装依赖
pip install -r requirements.txt
```
## 配置 — API 密钥
API 密钥从项目根目录下的 `.env` 文件加载。复制示例文件并填写您要查询的情报源的密钥。建议至少配置一个。
```
cp .env.example .env
# 使用你的 keys 编辑 .env:
# OTX_API_KEY=your-key # https://otx.alienvault.com/
# ABUSEIPDB_API_KEY=your-key # https://www.abuseipdb.com/
# ABUSE_CH_API_KEY=your-key # https://urlhaus.abuse.ch/ + https://threatfox.abuse.ch/
```
URLhaus 和 ThreatFox 共享来自 Abuse.ch 的同一个 Auth-Key — 设置一次 `ABUSE_CH_API_KEY` 即可同时用于两者。您可以在 [auth.abuse.ch](https://auth.abuse.ch/) 获取密钥。
如果需要,也可以将密钥设置为传统的环境变量 — 它们的优先级高于 `.env` 文件中的值。
## 测试连通性
在运行主工具之前,请验证您的威胁情报源连通性:
```
python test_ti_feeds.py
```
这会向每个情报源发送一个安全的测试查询,并报告哪些情报源可达,哪些缺少 API 密钥。
## 用法
```
# Basic — 分析 PCAP 文件
python threat_intel_tool.py --pcap capture.pcap
# 带有附加日志文件(PCAP HTTP 请求已自动扫描)
python threat_intel_tool.py --pcap capture.pcap --log access.log
# 自定义输出路径
python threat_intel_tool.py --pcap capture.pcap --output my_report.md
# Offline 模式 — 跳过 API 查询(仅 PCAP 分析 + 启发式分析)
python threat_intel_tool.py --pcap capture.pcap --skip-ti
```
## 示例 PCAP 文件
使用的 PCAP 文件来自 https://www.malware-traffic-analysis.net/2026/02/28/index.html
- [恶意软件流量分析](https://www.malware-traffic-analysis.net/)
## 输出
该工具生成一个 Markdown 报告(默认为 `security_report.md`),包含:
1. **引言** — 分析概述
2. **范围与目标** — 分析的文件、查询的情报源
3. **发现** — 网络摘要、检测到的威胁、威胁情报匹配项
4. **建议** — 可操作的补救步骤
5. **参考** — 使用的威胁情报源
6. **结论** — 总结和后续步骤
## security_report.md 的部分内容
## 项目结构
```
├── threat_intel_tool.py # Main analysis script
├── requirements.txt # Python dependencies
├── README.md # This file
└── security_report.md # Generated report (output)
```
## 项目结构
```
├── threat_intel_tool.py # Main analysis script
├── requirements.txt # Python dependencies
├── README.md # This file
└── security_report.md # Generated report (output)
```
标签:IP 地址批量处理, PCAP分析, Python, URL发现, 威胁情报, 安全检测, 开发者工具, 插件系统, 无后门, 逆向工具