当我使用IDA进行修补时,我不小心修补了错误的叮咬,而且我不记得以前有哪些字节。有一种方法可以撤消它吗?

#1 楼

有一个窗口可以查看所有修补的字节以及未修补的版本:在菜单中,使用View / Open Subviews / Patched Bytes或按STRG-ALT-P

这是IDA 6.8(最新版本),i不知道旧版本是否具有相同的功能。

但是,我建议您安装ida patcher插件,该插件大大改善了补丁的使用;例如,您可以从其他地方复制/粘贴补丁;您可以用相同的字节填充区域,并且有一个类似于标准修补程序窗口的窗口,但是您可以将注释分配给修补程序,然后单击一下即可将其还原到上下文菜单。

评论


我使用的是旧版本。所以我想我不能撤消它。我将尝试使用ida patcher插件。谢谢你的帮助..

– Ramesh-X
15年8月1日在1:35

#2 楼

转到“视图” /“打开子视图” /“修补字节”,其中是修补程序。
右键单击一行,然后单击“还原”。在Ida 6.8中有效

#3 楼

我不知道您该如何修补它们,因为我认为没有办法(我正在使用的是IDA 6.5)。
但是我建议您以后使用数据库快照在IDA中。这非常方便-您可以保存所有字节,函数名称,注释等的状态。如果出现问题,您可以在快照管理器中恢复快照。
您可以在IDA Pro 6.5的View-> Database Snapshot Manager中找到它。

评论


数据库快照将是一个好主意。感谢您的帮助..

– Ramesh-X
2015年8月1日,下午1:34

#4 楼

对于较旧的IDA版本,一种替代解决方案:
使用File>Produce file>Create DIF file...转储所有更改。
文件中每个修补的字节的文件格式均为Offset: Old New
查找要更改的字节,然后手动进行操作。
请记住,偏移量是从文件开始的,不是内存地址。