如何从划痕中为linux编写一个简单的反汇编程序? 有没有可以使用的库?我需要一些“正常”的东西。
答案 0 :(得分:8)
答案 1 :(得分:5)
首先必须了解ELF file format。然后,您可以根据架构的操作码开始处理代码的各个部分。
答案 2 :(得分:1)
您可以使用libbfd和libopcodes,它们是作为binutils的一部分分发的库。
http://www.gnu.org/software/binutils/
作为这些库的强大功能的一个例子,请查看在线反汇编程序(ODA)。
http://www.onlinedisassembler.com
ODA支持无数架构并提供基本功能集。您可以在实时视图中输入二进制数据,并在键入时观察反汇编,或者您可以上传文件进行反汇编。此站点的一个很好的功能是,您可以与其他人共享反汇编的链接。
答案 3 :(得分:0)
您可以查看ERESI
的代码ERESI逆向工程软件接口是一种多架构二进制分析框架,具有针对逆向工程和程序操作的定制域特定语言。