SyedShaheerHussain/PE-ELF_File_Analyzer

GitHub: SyedShaheerHussain/PE-ELF_File_Analyzer

一款基于 PySide6 构建的通用文件分析工具,用于对 PE/ELF 可执行文件及多种文档进行逆向工程与取证检查。

Stars: 2 | Forks: 0

# 🧠 文件分析器(逆向工程) 一款使用 Python 和 PySide6 构建的强大**逆向工程 + 取证文件分析工具**。 该工具允许用户在单一的现代 GUI 中分析**可执行文件、文档及多种文件类型**。 作者:**Syed Shaheer Hussain** GitHub:https://github.com/syedshaheerhussain # 🚀 简介 **Universal File Analyzer v4 PRO** 是一款高级桌面应用程序,专为以下用途设计: - 逆向工程 - 恶意软件分析 - 文件取证 - 文档检查 - 二进制结构分析 它将多个分析引擎结合在单一界面中,同时支持**二进制文件和文档格式**。 ## 📸 截图 ![截图 1](https://github.com/SyedShaheerHussain/PE-ELF_File_Analyzer/blob/main/PE-ELF_File_Analyzer/screenshots/Screenshot%20(167).png) ![截图 2](https://github.com/SyedShaheerHussain/PE-ELF_File_Analyzer/blob/main/PE-ELF_File_Analyzer/screenshots/Screenshot%20(168).png) ![截图 3](https://github.com/SyedShaheerHussain/PE-ELF_File_Analyzer/blob/main/PE-ELF_File_Analyzer/screenshots/Screenshot%20(169).png) ![截图 4](https://github.com/SyedShaheerHussain/PE-ELF_File_Analyzer/blob/main/PE-ELF_File_Analyzer/screenshots/Screenshot%20(174).png) ![截图 5](https://github.com/SyedShaheerHussain/PE-ELF_File_Analyzer/blob/main/PE-ELF_File_Analyzer/screenshots/Screenshot%20(175).png) ![截图 6](https://github.com/SyedShaheerHussain/PE-ELF_File_Analyzer/blob/main/PE-ELF_File_Analyzer/screenshots/Screenshot%20(176).png) ![截图 7](https://github.com/SyedShaheerHussain/PE-ELF_File_Analyzer/blob/main/PE-ELF_File_Analyzer/screenshots/Screenshot%20(177).png) ![截图 8](https://github.com/SyedShaheerHussain/PE-ELF_File_Analyzer/blob/main/PE-ELF_File_Analyzer/screenshots/Screenshot%20(178).png) # 🎯 目标 - 提供统一的文件分析平台 - 支持多种文件格式 - 展示深层内部文件结构 - 帮助学习者理解逆向工程 - 提供基于熵的安全分析 - 提供现代化的 GUI 体验 # 💡 核心概念 - 文件解析(PE / ELF / 文档) - 二进制分析 - 熵计算(恶意软件检测) - 字符串提取 - 十六进制分析 - 基于树状的结构可视化 - 使用 PySide6 进行 GUI 开发 # 🛠 使用的语言与技术 - Python 3.x - PySide6(Qt GUI 框架) - PEfile(Windows 可执行文件解析) - pyelftools(Linux ELF 解析) - pdfminer.six(PDF 提取) - python-docx(Word 文档解析) - BeautifulSoup4(HTML 解析) # 📦 技术 / 库 / 工具 | 工具 | 用途 | |------|--------| | PySide6 | GUI 框架 | | PEfile | PE 文件解析 | | pyelftools | ELF 文件解析 | | pdfminer.six | PDF 文本提取 | | python-docx | DOCX 解析 | | BeautifulSoup | HTML 解析 | | Python 标准库 | 核心逻辑 | # 📁 GUI / 项目结构 ``` universal_analyzer_v4/ │ ├── main.py ├── gui.py ├── detector.py ├── entropy.py ├── exporter.py ├── utils.py │ ├── parsers/ │ ├── pe.py │ ├── elf.py │ ├── docx_parser.py │ ├── pdf_parser.py │ ├── html_parser.py │ ├── text_parser.py ``` # ⚙️ 安装与设置 ## 1. 克隆仓库 ``` git clone https://github.com/syedshaheerhussain/universal-file-analyzer.git cd PE-ELF_File_Analyzer ``` ## 2. 安装依赖 ``` pip install pyside6 pefile pyelftools python-docx pdfminer.six beautifulsoup4 ``` ## 3. 运行应用程序 ``` python main.py ``` # ▶️ 运行方式 1. 打开终端 / 命令提示符 2. 导航至项目文件夹 3. 运行: ``` python main.py ``` 4. GUI 将会打开 5. 点击 **Open File** 6. 选择任意文件(EXE, PDF, DOCX, TXT, HTML, ELF) # 🧪 功能特性 ## 🔹 文件支持 * `.exe` * `.dll` * `.elf` * `.pdf` * `.docx` * `.txt` * `.html` * `.xlsx` ## 🔹 分析功能 * PE 结构分析 * ELF 结构分析 * 导入与导出查看器 * 区段查看器 * 字符串提取 * 十六进制查看器 * 文档解析 * 熵分析(恶意软件检测) ## 🔹 GUI 功能 * 现代深色 UI * 基于标签页的布局 * 搜索系统 * 导出功能 * 基于树状的结构视图 * 响应式界面 ## 🔹 安全 / 取证功能 * 文件熵检测 * 加壳文件检测(高熵) * 可疑二进制文件识别 * 深度文件检查 # ⚙️ 功能 / 工作原理 ## 1. 文件检测 根据扩展名自动检测文件类型。 ## 2. 解析引擎 每种文件类型都会路由到专用的解析器: * PE → pefile * ELF → pyelftools * DOCX → python-docx * PDF → pdfminer * HTML → BeautifulSoup ## 3. 结构构建器 创建分层树状视图: * 区段 * 导入 * 导出 * 文档段落 * 表格 ## 4. 字符串提取 扫描二进制数据并提取可读文本。 ## 5. 十六进制查看器 以十六进制格式显示原始二进制数据。 ## 6. 熵分析器 计算文件的随机性: * 低 → 正常文件 * 中 → 可疑 * 高 → 加壳 / 类似恶意软件 ## 7. 导出系统 将分析结果导出为 JSON 格式。 ## 8. 搜索引擎 在以下位置搜索: * 字符串 * 十六进制数据 * 信息面板 # 📊 可运行代码示例 ``` from entropy import entropy data = open("sample.exe", "rb").read() print(entropy(data)) ``` # 🧪 示例用例 ### 恶意软件分析 1. 加载可疑的 `.exe` 2. 检查熵(高 = 已加壳) 3. 检查导入(可疑的 API 调用) 4. 提取字符串(URL、命令) 5. 分析结构 ### 文档取证 1. 加载 PDF 或 DOCX 2. 提取隐藏文本 3. 分析元数据 4. 搜索关键词 # 📌 实现的目标 ✔ 多文件分析器 ✔ 逆向工程支持 ✔ 通过熵进行恶意软件检测 ✔ 基于 GUI 的检查工具 ✔ 跨格式文件支持 ✔ 导出系统 ✔ 搜索引擎 # 👨‍💻 学习成果 / 我学到了什么 * 文件结构分析(PE 和 ELF) * 使用 PySide6 进行 GUI 开发 * 二进制数据处理 * 恶意软件检测基础 * 文件解析技术 * 软件架构设计 * 模块化编程 # 📢 目标受众 * 网络安全学生 * 逆向工程学习者 * 恶意软件分析师 * 软件开发者 * 道德黑客 * 研究人员 # 🚀 未来增强功能 * 反汇编器集成(Capstone) * 函数调用图 * 实时内存分析 * 恶意软件沙箱 * 插件系统(IDA 风格) * 高级 UI 仪表盘 * 实时文件监控 # ⚠️ 重要说明 / 免责声明 * 本工具仅供**教育目的**使用 * 请勿在未经授权的系统上使用 * 某些二进制文件可能无法完全解析(加壳文件) * 大文件的分析可能需要一些时间 # 🧯 注意事项 * 请勿在沙箱之外运行未知的可执行文件 * 高熵文件可能为恶意软件 * 务必验证文件来源 # 💻 实现与价值 本项目展示了: * 高级 Python 编程 * GUI 应用程序开发 * 网络安全基础知识 * 逆向工程概念 * 真实的取证工具设计 # 📌 支持与互动 如果您喜欢这个项目: ⭐ 为本仓库加星 🔁 与他人分享 👤 关注开发者: 👉 [https://github.com/syedshaheerhussain](https://github.com/syedshaheerhussain) # 🧠 许可证 本项目为开源,仅供教育使用。 您可以出于学习目的对其进行修改和改进。 # 🏁 结语 本项目是一个为学习和研究目的而构建的**迷你逆向工程 + 取证套件**。 通过添加高级功能,它可以被扩展为专业级的安全工具。
标签:DAST, PySide6, 云资产清单, 取证, 恶意软件分析, 文件分析, 桌面应用, 逆向工具, 逆向工程