将原始二进制代码反编译为程序集

时间:2017-03-15 12:00:13

标签: reverse-engineering decompiling

我有二进制代码,我想将其拆解为汇编。此代码不是结构化exe或dll文件的一部分,因此objdumpgdb无法识别它。

如何将其拆卸为装配?

2 个答案:

答案 0 :(得分:1)

GDB和objdump依赖System V ELF二进制文件中的部分信息来反汇编它们。换句话说,为了使gdbobjdump起作用,要分析的代码必须是ELF二进制文件,并且该二进制文件必须具有完整的节头表,以准确描述二进制文件的布局。

  

如何将其反编译为汇编?

反编译是从二进制文件重构源代码。反汇编是将CPU指令转换为汇编语言。

  

我有二进制代码,我想将其拆解为汇编。

如果您有机器代码进行反汇编并且代码的指令集架构已知,那么可能有用的一个工具是Capstone disassembly framework。这是一个使用python绑定的演示:Python tutorial for Capstone

Radare2是另一种选择。

如果这没有帮助,StackExchange上有一个reverse engineering 网站,您更有可能找到您需要的网站。

答案 1 :(得分:1)

你可以试试radare2。首先,阅读文件。如果您有问题连接到社区。它很有共鸣。

你用r2获取二进制信息:

r2 -A ./Binary r2>>> iI ## for binary information