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** 是一款高级桌面应用程序,专为以下用途设计:
- 逆向工程
- 恶意软件分析
- 文件取证
- 文档检查
- 二进制结构分析
它将多个分析引擎结合在单一界面中,同时支持**二进制文件和文档格式**。
## 📸 截图
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.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, 云资产清单, 取证, 恶意软件分析, 文件分析, 桌面应用, 逆向工具, 逆向工程