当我使用 IDA 进行修补时,我不小心修补了错误的部分,并且我不记得之前有哪些字节。有没有办法撤销它..?
在 IDA 中撤消补丁
逆向工程
艾达
拆卸
2021-06-23 06:23:38
4个回答
有一个窗口可以查看所有已修补的字节及其未修补的版本:在菜单中,使用View
/ Open Subviews
/Patched Bytes
或按STRG-ALT-P
。
这是针对 IDA 6.8(最新版本),我不知道旧版本是否有相同的东西。
但是,我建议您安装ida patcher plugin,它可以极大地改善补丁的使用;例如,您可以从其他地方复制/粘贴补丁;您可以用相同的字节填充一个区域,并且有一个类似于标准修补程序窗口的窗口,但允许您为补丁分配注释,并通过单击上下文菜单将它们恢复。
转到查看/打开子视图/补丁字节,补丁所在的位置。右键单击一行,然后单击“还原”。这适用于 Ida 6.8
我不知道你怎么能解开它们,因为我认为没有办法做到这一点(我说的是我使用的 IDA 6.5)。但是我建议您将来在 IDA 中使用数据库快照。它非常方便——您可以保存所有字节、函数名称、注释等的状态。如果出现问题,您可以在快照管理器中恢复快照。您可以在 IDA Pro 6.5中的View --> Database Snapshot Manager中找到它
另一种解决方案,为老年人IDA版本:
使用File>Produce file>Create DIF file...
转储所有的变化。
文件格式Offset: Old New
适用于文件中的每个修补字节。
找到要改回来的字节,然后手动进行。
请记住,偏移量是从文件开始的,它们不是内存地址。
其它你可能感兴趣的问题