超赞逆向工程 
精选:REA — 面向智能体的逆向工程工具,从应用程序行为到原生二进制文件。由 awesome-reverse-engineering 的创作者打造。

一个精心策划的起点,用于理解二进制文件、应用程序、固件、文件格式和协议。
根据你需要完成的工作来查找工具。每个条目都说明了其用途;商业工具标记为 commercial。这是一个初步的精选列表,欢迎补充和更正。
从这里开始
目录
学习

书籍
文件识别与分类

- capa - 通过基于静态或动态分析结果的规则识别可执行文件中的能力。
- checksec - 检查 ELF 安全属性,如 PIE、RELRO、栈金丝雀和不可执行栈;缓解标志并不等同于漏洞判定。
- Detect It Easy - 识别可执行文件格式、编译器、加壳器及其他文件特征。
- FLOSS - 恢复混淆字符串,包括在栈上构造的字符串。
- hexvero - 对 Electron 归档和 JavaScript 包进行静态分诊,检查 IPC 通道、预加载桥接和窗口设置,以及 ELF/Mach-O/PE 导入和加固情况;其 CLI、MCP 服务器和本地 Web UI 需要 Node.js 22.12+,基于模式的 JavaScript 分析可能遗漏间接代码。
- LIEF - 通过代码解析和修改 PE、ELF 和 Mach-O 等可执行文件格式。
- Malcat - 用于分诊未知文件的十六进制编辑器和反汇编器,具有 50+ 格式解析器、嵌入文件提取、YARA 扫描和 Python 脚本功能。商业软件,提供供非专业使用的免费 Lite 版。
- PE-bear - 图形化 PE 查看器和编辑器,可快速初步查看头部、节区、导入和资源,包括畸形文件。
- pestudio - 标记 Windows 可执行文件中的可疑导入、字符串、资源及其他指标,用于初步评估。商业软件,提供供私人使用的免费基础版。
原生分析

- Binary Ninja - 具有中间表示和脚本 API 的交互式反汇编器和反编译器。商业软件,提供免费版。
- Cutter - 基于 Rizin 构建的图形化逆向工程界面。
- Decompiler Explorer - Web 服务,将上传的二进制文件通过多个反编译器运行,并并排显示其输出。
- Ghidra - 针对原生二进制文件的反汇编、反编译、脚本和无头分析。
- IDA - 具有处理器模块和插件生态系统的交互式反汇编器和反编译器。商业软件,提供免费版。
- radare2 - 用于反汇编、二进制检查、调试和脚本的命令行工具包。
- REDasm - 支持旧格式的原生反汇编器和分析 GUI;Windows 和 Linux 是主要测试宿主,其他平台构建的支持级别较低。
- RetDec - 基于 LLVM 的可重定向反编译器,支持 ELF、PE、Mach-O 及其他格式;处于有限维护模式,新开发较少。
- rev.ng - 基于 LLVM 和 QEMU 的二进制分析框架和反编译器,用于检查和转换原生代码;从源码构建需要其文档中说明的工具链。
- Rizin - 具有命令行分析和可复用库的逆向工程框架。
- Rubber Room - 浏览器 PE 工作台,具有 x86-64 反汇编、部分 Win32 API 模拟和实验性类 C 伪代码,可能遗漏程序逻辑;alpha 阶段。
调试器

- GDB - 原生调试器,支持脚本编写和远程调试。
- GEF - 单文件 GDB 扩展,增加了上下文视图、堆检查以及用于漏洞利用开发和二进制分析的命令。
- LLDB - 用于原生程序的 LLVM 调试器,包括 macOS 和 iOS 开发工作流。
- pwndbg - 调试器扩展,用于在二进制分析期间检查内存、汇编和运行时状态。
- rr - 记录并重放 Linux 进程执行,以实现可重复的调试。
- WinDbg - 微软调试器,用于 Windows 用户模式和内核调试、崩溃转储分析以及时间旅行调试;版本 1.2610.1001.0 及更高版本包含官方 WinDbg MCP 服务器。
- x64dbg - Windows 用户模式调试器,用于检查原生可执行文件和库。
动态插桩与跟踪