我正在使用Immunity Dbg v1.85(最新版本)。我花了大约一个小时来分析一种恶意软件,同时对X.00402AC0之类的内容进行注释和重新标记功能,再到X.password_checker之类的更有用的内容。修补该恶意软件以跳过密码检查器功能(“复制到可执行文件”>“所有修改”)并将其保存到新文件后,在调试器中打开修补版本后,我看到我的所有注释和标签更改都消失了。

有趣的是,当您终止调试器然后重新打开原始的未修补可执行文件时,注释和标签仍然保留。只有将二进制修改保存到新文件时,它们才会丢失。不用说,当处理需要修补和共享的复杂二进制文件时,这是一个巨大的不便。 >

#1 楼

Google找到了这些链接。它们对您有帮助吗? -analysis-tutorial-12-debug.html

评论


感谢您的帮助。我需要详细研究这些内容并进行实验。这些教程涉及在分析可执行文件时保存注释以及在处理由可执行文件调用的DLL文件时如果未保存注释该怎么办。修补二进制文件时,将其保存到新的可执行文件中,并且在打开新的可执行文件之前不会创建新的UDD文件,因此我认为保存在原始可执行文件UDD中的任何数据都不会被传输。

– AK-33
15年8月24日在9:44

在我自己的研究中,我发现在OllyDbg 2.0中可能要做的事情。我可能只需要硬着头皮切换一下。 gh ...

– AK-33
15年8月24日在9:45

#2 楼

为了保留上述OpenRCE论坛主题中的信息,我在此处粘贴了相关信息:


OllyDbg v1.10丢弃.UDD数据的其他原因是:

1)文件路径名的更改,例如xxx.exe从“ c:\ xxx.exe”
移至“ c:\ new \ xxx.exe”。

您可以将“忽略路径和扩展名”选项设置为绕过此
检查。

2)文件的LastWrite时间更改。 />
3)自上次会话以来,代码段的CRC发生了变化。

您可以设置“忽略代码段的CRC”选项以绕过此检查。


我认为你有这种情况3.