工具

Boomerang 机器码反编译器

SourceForge 上 Boomerang 项目的分支,是一款通用的机器码反编译器,可将可执行文件转换为 C 代码。README 列出的支持范围为 ELF、PE、DOS MZ、DOS/4GW LE 和 Mach-O 文件中的 x86(仅 IA-32)、PowerPC 和 ST20 代码;指令语义由 SSL 规格文件定义,库函数签名文件以及 printf、scanf 类格式字符串可辅助恢复类型。它提供 boomerang-cli 命令行工具和基于 Qt 的 boomerang-gui 图形界面,并附有单元、回归和重编译测试套件。

目标
二进制
类别
原生分析工具
关联
基础工具
来源复核于

使用条件与局限

  • 已停止活跃维护的旧项目:所审阅的 develop 分支提交(2020-12-28)是仓库最后一次推送,Changelog 仍将 v0.6.0 标为开发中。最后一个版本 v0.5.2(2020-01-11)提供 Linux x86_64 和 Windows x64 构建,而 README 建议从源码构建 develop 分支。
  • 构建需要 64 位操作系统、C++17 编译器(GCC 7+、Clang 6+ 或 MSVC 2017+)、CMake 3.13+、Qt5(已知 5.12+ 可用)、Capstone 4.0.1+、GNU bison 3.3+ 和 flex 2.6+;回归测试需 Python 3 运行,且不支持在 Windows 上运行。README 介绍了在 Linux、使用 Xcode 10 和 Homebrew 的 macOS 10.13+,以及使用 Visual Studio 2017 的 Windows 上的构建方法。
  • 需自行提供要反编译的可执行文件。x86 支持仅限 32 位代码,v0.6.0 开发线已移除 SPARC 支持,生成的 C 代码仍需分析人员复核。
  • data/samples 提交了约 240 个面向 macOS、DOS、ELF、PowerPC、Windows 和 x86 的小型测试二进制,多数以 tests/recompilation-tests 和 tests/sources 中的测试程序命名,另有三个 Linux 发行版构建的 true 工具;tests/regression-tests 保存了它们的预期反编译输出。data/signatures 存放手写的库函数原型文件,并非厂商头文件。
  • LICENSE.TERMS 中沿用昆士兰大学、Sun Microsystems 及原作者的 BSD 风格条款;GitHub 未识别出对应的 SPDX 许可证。本条目未反编译任何二进制。

关于此条目

说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。

报告条目过时 建议修正翻译

一手来源

  1. Readme.md GitHub · BoomerangDecompiler/boomerang · 修订 4110413
  2. Changelog.md GitHub · BoomerangDecompiler/boomerang · 修订 4110413
  3. LICENSE.TERMS GitHub · BoomerangDecompiler/boomerang · 修订 4110413
  4. data/samples GitHub · BoomerangDecompiler/boomerang · 修订 4110413
  5. data/signatures GitHub · BoomerangDecompiler/boomerang · 修订 4110413
  6. data/ssl GitHub · BoomerangDecompiler/boomerang · 修订 4110413
  7. tests GitHub · BoomerangDecompiler/boomerang · 修订 4110413
  8. https://github.com/BoomerangDecompiler/boomerang/releases/tag/v0.5.2

同分区更多条目:原生二进制

原生二进制分区全部 158 项资源