我以前使用OllyDbg进行操作,里面有很多工具,您可以转到任意一行,按空格键,然后开始组装,替换的指令将自动填充NOP,甚至不错的插件,可找到代码陷阱。
不幸的是,这些天OllyDbg似乎很少更新,并且无法在64位Windows 8.1上加载任何应用程序,因此我改用Hiew。 Hiew不错,但是界面很好,比Olly的界面还有些陈旧,使用起来也很麻烦。
我想知道是否有人知道可以执行相同功能的更多现代工具。
#1 楼
如果您拥有IDA专业版,则IDA修补程序是最近发布的。虽然我还没有亲自使用它,但它赢得了Hexrays插件竞赛之一,而且可能很合理。我过去也使用过这个简单的python脚本:
http://stalkr.net/files/ida/idadif.py
不是现代的,但是可以用。
#2 楼
我经常使用radare2修补二进制文件。它运行良好,它是免费的(就像在自由中一样),并且可以编写脚本。评论
我快速浏览了radare2,但是找不到有关使用它进行修补的很多好信息。您介意链接一个好的指南吗?谢谢。
–ultramancool
2014年10月14日13:49
通常,radar.org网站上的文档非常好。关于特定问题,这是修补radare.org/doc/html/Section3.8.html#write的部分
– PhoeniX
2014年10月14日在22:10
#3 楼
有几个非常好的选择。首先,我在进行修补时经常忘记的一点是
LD_PRELOAD
使钩子/重定向库例程非常容易。指令,我经常使用的工具是pwntools
(Python库)和Fentanyl
(IDAPython脚本)。对于
pwntools
,以下示例是在文件-地址0x1234,我们将其称为虚拟地址0x8001234。请注意,此支持仅限于ELF文件,不适用于PE。填充您的说明并修复偏移量。
评论
看起来IDA如今具有内置的“编辑”->“补丁程序”->“汇编”功能,这可以改善补丁管理。谢谢。这将完美地完成。
–ultramancool
2014年10月12日下午16:28