rohan815/PDFXRay

GitHub: rohan815/PDFXRay

一款用于教育和研究目的的 Python PDF 恶意软件静态分析工具,能够检测 PDF 文件中的各类可疑指标并生成风险评估报告。

Stars: 1 | Forks: 0

# PDFXRay PDFXRay 是一个基于 Python 的 PDF 恶意软件分析工具,专为教育和研究目的而设计。该工具对 PDF 文件执行静态分析,并检测潜在的可疑指标,例如 JavaScript 动作、OpenAction 触发器、嵌入文件、URL、IP 地址、可疑字符串和压缩流。 本项目是作为 PDF 恶意软件分析学习和 CEHv13 实践的一部分而开发的。 ## 功能 * PDF 结构分析 * 对象枚举 * 流枚举 * FlateDecode 流解压 * JavaScript 检测 * OpenAction 检测 * Launch Action 检测 * 嵌入文件检测 * URL 提取 * IP 地址提取 * 可疑字符串检测 * PDF 元数据检查 * JSON 报告生成 * Excel 报告生成 * 风险评估报告 ## 项目结构 ``` PDFXRay/ │ ├── deep_analyze.py ├── create_samples.py ├── README.md ├── requirements.txt │ ├── reports/ │ └── PDFxray_report.py │ └── samples/ ├── benign_sample.pdf └── malicious_sample.pdf ``` ## 环境要求 * Python 3.10+ * Windows 或 Linux 安装所需的依赖项: ``` pip install -r requirements.txt ``` ## requirements.txt ``` openpyxl>=3.1.5 pdfminer.six>=20231228 PyMuPDF>=1.26.0 yara-python>=4.5.0 pefile>=2024.8.26 ``` ## 用法 ### 深度 PDF 分析 ``` python deep_analyze.py sample.pdf ``` 示例: ``` python deep_analyze.py "C:\Users\User\Downloads\sample.pdf" ``` ### 生成分析报告 生成 JSON 和 Excel 报告: ``` python reports/PDFxray_report.py sample.pdf ``` 示例: ``` python reports/PDFxray_report.py "C:\Users\User\Downloads\sample.pdf" ``` ## 样本生成 生成测试 PDF 样本: ``` python create_samples.py ``` 生成的文件: ``` samples/ ├── benign_sample.pdf └── malicious_sample.pdf ``` ## 检测能力 | 指标 | 检测 | | ------------------ | --------- | | JavaScript | ✅ | | OpenAction | ✅ | | Launch Action | ✅ | | 嵌入文件 | ✅ | | URL | ✅ | | IP 地址 | ✅ | | 可疑字符串 | ✅ | | 压缩流 | ✅ | | PDF 对象 | ✅ | | PDF 元数据 | ✅ | ## 生成的报告 报告生成器会自动创建: * JSON 报告 * Excel 报告 (.xlsx) 示例: ``` sample_report.json sample_report.xlsx ``` ## 输出示例 ``` ============================================================ PDFXRay REPORT ============================================================ filename: sample.pdf size_bytes: 121137 pdf_version: 1.4 javascript: 0 open_action: 0 embedded_files: 0 verdict: BENIGN JSON Saved : sample_report.json Excel Saved: sample_report.xlsx ``` ## 教育目的 创建此项目旨在帮助学生了解: * PDF 内部原理 * 静态恶意软件分析 * PDF 威胁狩猎 * CEHv13 概念 * 安全文档检查 * 恶意软件分析方法论 ## 免责声明 本项目严格仅供教育、研究和授权的安全测试目的使用。 未经适当授权,请勿将此软件用于任何系统、文件或环境。 作者对滥用此软件的行为不承担任何责任。 ## 未来改进 * YARA 规则扫描 * VirusTotal 集成 * IOC 提取 * 熵分析 * 嵌入文件提取 * PDF 风险评分引擎 * GUI 版本 (Tkinter / PyQt) ## 作者 Rohan Kumar 网络安全学生 CEHv13 学习者 PDF 恶意软件分析研究项目 GitHub 作品集项目
标签:DAST, DNS 反向解析, Go语言工具, PDF分析, Python, 云安全监控, 恶意软件分析, 无后门, 逆向工具, 静态分析