yopzman/Fractza

GitHub: yopzman/Fractza

Fractza 是一款受 Ghidra 启发、基于 C++ 原生开发的逆向工程工具,面向初学者提供跨平台的 ELF/PE 二进制分析功能。

Stars: 0 | Forks: 0

# Fractza - 原生 C++ Linux 与 Windows 逆向工程工具 **Fractza** 是一款受 Ghidra 启发开发的原生 C++ 逆向工程应用程序,同时支持 **Linux ELF 二进制文件**(`\x7fELF`)和 **Windows PE 可执行文件**(带有 `MZ` 头的 `.exe` / `.dll`)。它专为初学者设计了友好的菜单系统,并提供自动化安全缓解措施审计、智能反汇编、反编译为高级 C 伪代码、字符串提取以及原始十六进制检查等功能。 ## 🌟 核心功能 1. **双二进制格式支持 (ELF + PE)**: - 自动检测 **Linux ELF**(`ELF32` / `ELF64`)和 **Windows PE**(`PE32` / `PE32+` `.exe` 和 `.dll`)二进制文件。 - 解析 DOS 头(`MZ`)、PE 头、节区头(`.text`、`.rdata`、`.data`、`.rsrc`、`.reloc`),以及用于 Windows API DLL 调用(`kernel32.dll`、`user32.dll`、`msvcrt.dll`)的导入地址表(IAT)。 2. **安全缓解措施审计**: - 检测 **NX / DEP**(不可执行栈/内存)、**PIE / ASLR**(地址空间布局随机化)、**Stack Canaries / SEH**,以及 **RELRO / CFG**(控制流防护)。 - 提供通俗易懂的安全标签和漏洞摘要。 3. **智能反汇编与控制流**: - 将 x86 / x86_64 / ARM 机器码解码为人类可读的汇编指令。 - 高亮显示函数入口点、分支(`jmp`、`je`、`jne`)、函数调用(`call`)和返回操作码(`ret`)。 - 提供面向初学者的工具提示,解释指令逻辑(`mov`、`lea`、`push`、`pop`、`syscall`)。 4. **高级 C 反编译器(伪代码生成器)**: - 将原始基础块和栈帧操作转换为简洁易读的 C 伪代码(`if/else`、函数调用、变量赋值)。 5. **提取字符串与十六进制数据检查器**: - 扫描二进制文件的节区以查找可打印字符串,并将字符串地址与反汇编代码进行交叉引用。 - 提供 16 字节十六进制检查器网格,附带 ASCII 预览和偏移定位器。 6. **初学者分析向导与备忘单**: - 一键进行二进制自动分析,并推荐起始分析函数(`main` 地址或入口点)。 - 提供逆向工程 101 备忘单,方便快速参考。 ## 🚀 构建与运行 ### 环境要求 - GCC / G++(支持 C++17) - CMake 3.14+ ### 构建说明 ``` mkdir build && cd build cmake .. make -j$(nproc) ``` ### 使用方法 ``` # 分析 Linux ELF 二进制文件 ./fractza /bin/ls # 直接在 Linux 上分析 Windows PE(.exe / .dll)文件! ./fractza /path/to/target.exe ``` ## 📄 许可证 本项目采用 [MIT 许可证](LICENSE) 授权 - 系免费开源软件。
标签:Bash脚本, C++, URL提取, Wayback Machine, 二进制分析, 云安全运维, 云资产清单, 反汇编, 反编译, 数据擦除, 漏洞审计, 逆向工程