什么是好的 C 反编译器?

发布于 2024-07-06 17:09:13 字数 100 浏览 12 评论 0原文

我正在寻找 C 程序的反编译器。 该二进制文件是 32 位 x86 Linux 可执行文件。 Objdump 工作正常,所以基本上我正在寻找一些尝试从 asm 源重建 C 源的东西。

I am searching for a decompiler for a C program. The binary is a 32-bit x86 Linux executable. Objdump works fine, so basically I am searching for something which attempts to reconstruct the C source from the asm source.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

彩扇题诗 2024-07-13 17:09:13

辅助六角射线,但如果你不能证明这个成本合理,Boomerang 可能会起作用。

Seconding Hex-rays, but if you can't justify that cost, Boomerang might work.

向地狱狂奔 2024-07-13 17:09:13

如果您有闲钱,Hex-Rays Decompiler 可能值得您花时间。 :-)

If you have money to spare, Hex-Rays Decompiler could be worth your while. :-)

﹂绝世的画 2024-07-13 17:09:13

尽管 IDA 可以提供很大帮助,但其成本却相当高。
不确定您的具体用例,但 Plasma 似乎可以解决问题“Plasma 是一个适用于 x86/ARM/MIPS 的交互式反汇编程序。它可以生成具有彩色语法的缩进伪代码。”

如果您正在寻找与 IDA 更相似的东西,我强烈推荐 Radare2。 如果您不想安装任何东西,还有ODA 在线反汇编器

新增加的是 Binary Ninja,虽然它还没有接近 IDA 或 Radare 的功能,但它是一个便宜且对于初学者来说很有用。

更新:
自此评论以来,NSA 发布了完全开源且免费的 Ghidra。 它是一个带有高端反编译器的完整承诺 RE 框架。

As much as IDA can be helpful it cost quite a lot of money.
Not sure about your specific use case but Plasma seems like it would do the trick "Plasma is an interactive disassembler for x86/ARM/MIPS. It can generate indented pseudo-code with colored syntax."

If you are looking for something more similar to IDA I heavily recommend Radare2. There's also ODA the online dissembler in case you don't feel like installing anything.

A new addition is Binary Ninja and although it's not even close to the capabilities of IDA or Radare yet, it's a cheap and good utility for starters.

Update:
Since this comment the NSA have released Ghidra which is completely open source and free. It is a full pledges RE framework with high end decompiler.

情释 2024-07-13 17:09:13

对于二进制反编译,我购买了 Hopper https://www.hopperapp.com 的个人许可证。

优点是:

  • 具有直观且经过深思熟虑的图形界面;
  • 在 MacOS 和 Linux 上运行;
  • 提供合理的类似 C 的反编译器输出;
  • 反编译 32 位 64 位二进制文​​件;
  • 支持 Mach-O 二进制文件(Mac 和 iOS)、PE32/32+/64 Windows 二进制文件和 ELF 二进制文件;
  • 有非常定期的免费更新;
  • 100 美元左右的许可价格是无与伦比的。

在我看来,成本/质量比相当轻松地击败了 IDA/Hex-ray,并且它让其他商业(或免费)反编译器望尘莫及。

此外,您可以尝试一下或使用演示版本来感受它并免费反编译(非常)小的可执行文件。

Hopper

从现在(2019 年 3 月)开始,作为替代方案,您还可以使用 NSA 的 Ghidra 。 只要安装了 JDK 11,Ghidra 就可以在 Linux、Mac 和 Windows 上运行。 它被称为“可与 X/射线相媲美的免费工具”。

Ghidra

Ghidra 感觉更强大,但 Hopper 似乎仍然更直观。

另请参阅:PepperMalware 博客 - 快速分析使用 NSA 的 Ghidra SRE 框架的 Trickbot 示例

For binary decompiling, I have bought a personal license of Hopper https://www.hopperapp.com .

The advantages are:

  • has an intuitive and well thought graphical interface;
  • runs in MacOS and Linux;
  • provides a reasonable C-like decompiler output;
  • decompiles 32-bit and 64-bit binaries;
  • supports Mach-O binaries (Mac and iOS), PE32/32+/64 Windows binaries and ELF binaries;
  • has very regular free updates;
  • the license price at around 100 USD cannot be beaten.

IMO, the ratio cost/quality beats fairly easily IDA/Hex-rays, and it leaves in the dust the other commercial (or free) decompilers.

Additionally, you can try it out or use the demo version to get a feel of it and decompile (very) small executables for free.

Hopper

From now on (March/2019), as an alternative, you also have Ghidra from NSA. Ghidra runs on Linux, Mac and Windows as long as JDK 11 is installed. It is presented "as a free tool comparable to X/Rays".

Ghidra

Ghidra feels more powerful, however Hopper still seems more intuitive.

See also: PepperMalware Blog - Quick Analysis of a Trickbot Sample with NSA's Ghidra SRE Framework

半暖夏伤 2024-07-13 17:09:13

雪人 (http://derevenets.com) 看起来不错。 生成的代码很混乱,但可以工作。

Snowman (http://derevenets.com) looks nice. The generated code is a mess, but works.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文