LoreMasta96/pcap_analyzer
GitHub: LoreMasta96/pcap_analyzer
一款用于 PCAP 文件高级取证与行为分析的命令行 Python 工具,通过协议解析、行为启发式和可选的威胁情报集成来辅助网络威胁狩猎。
Stars: 0 | Forks: 0
# PCAP 取证与行为分析器
一款用于对 PCAP 文件进行高级取证和行为分析的命令行 Python 工具。
本项目对网络流量执行深度检测,以提取主机身份、协议行为、可疑活动模式,并通过可选的 VirusTotal 和 tshark 集成进行信息丰富。
## 🚀 功能
### 📊 网络概览
- 协议分布(基于数据包和字节)
- Top 源/目的 IP
- Top 源/目的端口
- JA3 指纹统计
### 🖥 主机清单与身份关联
- DHCP 客户端身份提取
- NetBIOS / NBNS 解析
- LLMNR / mDNS 主机名提取
- Kerberos 主体检测
- NTLM 用户名提取
- 服务器角色检测(HTTP、TLS、DNS 指标)
- 基于 TTL 分析的 OS 提示
### 🌐 DNS 分析
- 基础域名提取
- 高熵域名检测(DGA/隧道启发式分析)
- 可疑与已知良性分类
### 📁 HTTP 文件分析
- 文件扩展名追踪
- 可疑下载检测
- 大文件检测
- Content-Type ↔ 扩展名不匹配检测
### 🔐 TLS 与 JA3 分析
- JA3 指纹提取
- SNI 提取
- UA ↔ JA3 不匹配启发式分析
### 🎯 聚焦主机模式
对单一主机的深度行为分析:
- DNS、HTTP、TLS 事件时间线
- 客户端与服务器角色区分
- 每个主机的可疑下载
- 每个主机的 JA3 活动
- 可选的 VirusTotal 信息丰富
### 🛡 VirusTotal 集成(可选)
- IP 信誉查询
- 导出的 HTTP 对象哈希
- 文件信誉查询
- 支持本地缓存
### 🧰 tshark 丰富(可选)
- 增强的 Kerberos 提取
- HTTP 对象导出
- 改进的 TLS 服务器角色检测
## 🛠 环境要求
Python 3.9+
### Python 依赖
scapy==2.5.0
cryptography==42.0.5
安装命令:
```
pip install -r requirements.txt
### 可选依赖(不通过 pip 安装)
- tshark (Wireshark CLI tool)
Required for advanced enrichment features such as:
- HTTP object export
- Enhanced Kerberos extraction
- Improved TLS server role detection
- VirusTotal API key
Required for:
- IP reputation lookups
- Exported file hash reputation checks
You can pass your API key via CLI:
python main.py sample.pcap --vt --vt-key YOUR_API_KEY
Or set it as an environment variable:
export VT_API_KEY=YOUR_API_KEY # macOS / Linux
set VT_API_KEY YOUR_API_KEY # Windows
---
## Focus 模式
python main.py sample.pcap --focus 192.168.1.10
## 启用 VirusTotal
python main.py sample.pcap --vt --vt-key YOUR_API_KEY
## 启用 tshark Enrichment
python main.py sample.pcap --use-tshark
---
## 🧠 检测理念
This tool is not just a PCAP parser.
It applies correlation logic and behavioral heuristics to identify:
- Suspicious DNS entropy patterns
- Potential DGA domains
- Risky HTTP file downloads
- UA/JA3 inconsistencies
- Host role anomalies
- Identity correlations across protocols
The goal is to simulate real-world SOC investigation workflow in an automated CLI environment.
---
## 📁 项目结构
pcap-analyzer/
├── main.py
├── requirements.txt
└── pcap_analyzer/
├── __init__.py
├── cli.py
├── constants.py
├── models.py
├── pcap.io
├── proto_stats.py
├── utils.py
├── host_inventory.py
├── dns_analysis.py
├── http_analysis.py
├── tls_analysis.py
├── focus.py
├── vt_enrichment.py
├── tshark_enrichment.py
└── reporting.py
---
## ⚠ 局限性
- Passive analysis only (no active scanning)
- JA3 extraction depends on TLS visibility
- Encrypted traffic limits deep inspection
- VirusTotal queries may be rate-limited
---
## 🎯 预期用途
- SOC Analyst portfolio project
- Blue Team training
- PCAP forensic analysis practice
- Threat hunting experimentation
## 👤 作者
Lorenzo Mastandrea
```
标签:IP 地址批量处理, Python, Scapy, tshark, 无后门, 网络安全, 逆向工具, 隐私保护