微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在打包的EXE文件中找到OEP

如何解决在打包的EXE文件中找到OEP

| 请问关于打包后的.exe文件如何真正定位OEP(原始入口点)有任何一般规则吗?在调试的汇编语言中可以找到什么OEP线索? 假设PC-Guard 5.06.0400包含一个Windows .exe文件,我希望将其解压缩。因此,关键条件是在新提取代码块中找到OEP。 我将使用常见的调试器OllyDBG来做到这一点。     

解决方法

这仅取决于打包程序及其使用打包和/或虚拟化代码的算法。看到您正在使用ollydbg时,我建议您检查一下tuts4you,woodmanns和openrce,它们有很多插件(iirc有一个设计用于在混淆代码中查找oep的插件,但是我不知道它的性能如何)以及用于解压缩各种打包程序的olly脚本(您可以从中获取有关某种打包程序的提示),它们也有很多关于该主题的论文/教程,这些论文/教程可能有也可能没有采用。 PC Guard似乎并没有引起太多关注,但是此处的视频链接和信息应该会有所帮助(赞扬Google缓存!)     ,在一般情况下-没办法。这在很大程度上取决于打包机。在最常见的情况下,打包程序可能会将OEP中的某些代码替换为其他一些代码。     ,很难指出任何简单的策略并声称它可以正常使用,因为打包工具的目的是使OEP发现一个非常棘手的问题。此外,有了一个好的包装工,找到OEP仍然不够。话虽如此,我确实有一些建议。 我建议您阅读有关Justin解包程序的文章,他们使用当时相当有效的启发式方法,并且您也许可以从中得到一些帮助。它们至少会将候选入口点的数量减少到可管理的数量: 封隔器问题及其解决方案研究(2008) 郭方鲁,彼得·费里,齐子基 还有一些网络分析页面可以告诉您很多有关打包程序的信息。例如,恶意软件分析器位于: http://eureka.cyber-ta.org/ 这是另一个目前正在下降,但过去做得还不错的工作,我想很快就会恢复正常): http://bitblaze.cs.berkeley.edu/renovo.html     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。