Tannu9211/PDF-Malware-Analysis-Toolkit
GitHub: Tannu9211/PDF-Malware-Analysis-Toolkit
一款基于 Python 的静态 PDF 恶意软件分析工具包,通过多维度检测模块在不执行文件的情况下评估 PDF 威胁风险并生成报告。
Stars: 0 | Forks: 0
# 🛡 PDF 恶意软件分析工具包
这是一个使用 Python 开发的静态 PDF 恶意软件分析工具包,用于在不执行 PDF 文档的情况下分析其中可疑和潜在恶意的内容。
该工具包执行元数据提取、哈希计算、关键字扫描、IOC 提取、JavaScript 检测、PDF 对象分析、YARA 规则扫描、嵌入文件检测、恶意软件风险评估,并生成专业的 JSON、HTML 和 PDF 报告。
## 📌 功能
- 📄 PDF 元数据提取
- 🔐 MD5 和 SHA256 哈希生成
- 🔍 可疑关键字分析
- 🌐 IOC 提取
- URL
- 域名
- 电子邮件地址
- IP 地址
- 📜 JavaScript 检测
- 📦 PDF 对象分析
- 🛡 YARA 规则扫描
- 📎 嵌入文件检测
- ⚠ 恶意软件风险评估
- 📊 富文本终端仪表板
- 📑 JSON 报告生成
- 🌐 HTML 报告生成
- 📕 专业多页 PDF 报告
- 📝 扫描日志记录
- 💻 命令行支持
## 🏗 项目架构
```
PDF File
│
▼
PDF Malware Toolkit
│
┌─────────────────┼─────────────────┐
│ │ │
▼ ▼ ▼
Metadata Hashing Keywords
│ │ │
▼ ▼ ▼
IOC JavaScript PDF Objects
│ │ │
└──────────────┬────────────────────┘
▼
YARA Rule Scanner
│
▼
Embedded File Detector
│
▼
Risk Assessment
│
▼
Report Generation
(JSON • HTML • PDF)
```
## 📂 项目结构
```
PDF_Malware_Analysis/
│
├── logs/
│ └── scan_log.txt
│
├── reports/
│ ├── report.json
│ ├── report.html
│ └── report.pdf
│
├── rules/
│ └── pdf_rules.yar
│
├── samples/
│ └── sample.pdf
│
├── src/
│ ├── analyzer.py
│ ├── display.py
│ ├── embedded_detector.py
│ ├── hashing.py
│ ├── javascript_detector.py
│ ├── keyword_scanner.py
│ ├── logger.py
│ ├── metadata.py
│ ├── object_detector.py
│ ├── report_generator.py
│ ├── risk_engine.py
│ ├── url_extractor.py
│ └── yara_scanner.py
│
├── main.py
├── requirements.txt
└── README.md
```
## ▶ 用法
分析示例 PDF
```
python main.py samples/sample.pdf
```
分析任意 PDF
```
python main.py "C:\Users\User\Downloads\document.pdf"
```
## 📊 输出
该工具包生成:
- 富文本终端仪表板
- JSON 报告
- HTML 报告
- PDF 报告
- 扫描日志
生成的文件:
```
reports/
report.json
report.html
report.pdf
logs/
scan_log.txt
```
## 🛡 检测模块
| 模块 | 描述 |
| Metadata | 提取 PDF 元数据 |
| Hashing | 计算 MD5 和 SHA256 哈希 |
| Keyword Scanner | 检测可疑的 PDF 关键字 |
| IOC Extractor | 提取 URL、域名、电子邮件地址和 IP 地址 |
| JavaScript Detector | 检测可疑的 JavaScript |
| Object Detector | 检测危险的 PDF 对象 |
| YARA Scanner | 匹配自定义恶意软件签名 |
| Embedded Detector | 检测嵌入文件 |
| Risk Engine | 计算恶意软件风险评分 |
## 📑 报告
该工具包自动生成:
- JSON 报告
- HTML 报告
- 多页 PDF 报告
每份报告包括:
- 执行摘要
- 元数据
- 文件哈希
- 关键字分析
- IOC 分析
- JavaScript 分析
- PDF 对象分析
- YARA 规则分析
- 嵌入文件分析
- 风险评估
- 最终结论
## 🚀 使用的技术
- Python
- Rich
- PyPDF2
- YARA Python
- ReportLab
## 🔮 未来增强功能
- VirusTotal API 集成
- 数字签名验证
- PDF 熵分析
- 图形用户界面 (GUI)
- 批量 PDF 扫描
- 基于机器学习的恶意软件检测
## 👩💻 作者
**Tanishka Kapoor
网络安全理学硕士
## 📄 许可证
本项目专为教育和研究目的而开发。
标签:DAST, DNS 反向解析, IOC提取, PDF分析, Python, YARA, 云安全监控, 云资产可视化, 恶意软件分析, 搜索语句(dork), 无后门, 网络信息收集, 逆向工具, 静态分析