反向工程ELF二进制文件

3

我有一个二进制文件,可能是从服务器上发现的漏洞中获取到的。我想要进行反向工程,以便了解这个二进制文件是用来尝试利用哪些漏洞的。但是我的问题是,OBJDump和其他类似的程序都会返回错误,指示无法读取该文件。十六进制转储显示该文件中确实存在ELF头,但我不够熟练,无法单纯根据十六进制来确定ELF是否构建正确。


尝试修改ELF头文件以获得合理的值。常见的反调试技巧是在某些字段中放置不合理的值,例如:将程序/节头的大小设置为某个较大的值,因此调试工具会尝试分配过多的内存而失败。当然,在那之后可能还会有更多的反调试技巧。 - ninjalj
1个回答

3
尝试使用IDA(交互式反汇编器)。演示版本可以打开ELF文件。(我不确定免费软件是否可以,而且它只适用于Windows)。我们努力使其接受受损/故意损坏的文件,因此如果IDA无法加载但在实际操作系统中有效,我将对样本感兴趣。
免责声明:我为Hex-Rays工作。

是的,这将是我在此过程中要采取的下一步,但是我目前没有访问IDA(没有Windows电脑)。我希望有另一种解决方案,例如通过调用OBJDump或跨平台解决方案来实现。 - Blackninja543
1
Linux和OS X的演示版本可用。 - Igor Skochinsky
@Blackninja543 我在32位Ubuntu上使用Wine完美地运行Hex-Rays反汇编器。 - Elliott Darfink
IDA的免费版本(当前版本为5.5)可以打开ELF二进制文件,只要它们是32位的。 - Leigh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接