-
-
[原创]ASprotect ver 2.1 / 2.73脱壳笔记
-
发表于:
2024-2-17 21:04
3821
-
[原创]ASprotect ver 2.1 / 2.73脱壳笔记
本帖是关于ASprotect ver 2.1 / 2.73的脱壳过程。在学习的过程中做了些笔记,如果笔记中有错误或者有遗漏的步骤,还是有更好的脱壳方法,欢迎大家在评论区指出!
注:建议使用winXP系统脱壳以免修复IAT时会不成功
1. 先查壳
2. 忽略所有异常
3. 运行到最后一次异常
(通常是两个je和一个jmp)
4. 打开内存映射在下断点,shift+F9运行
5. 来到OEP
6. 用LordPE’修正映像大小’并完整转存
7. 用ImpREC修复
先用等级1再用ASProtect 2.xx修复
修复完之后程序还是运行出错
8. 载入修复完的程序,设置还是要忽略所有异常
9. 把程序运行起来断下来之后,在这里右键‘在反汇编窗口中跟随’
断在这里
就是这个call出了问题,所以需要修复它
先复制这段代码的地址,然后去未脱壳的程序找到相应的这段代码。回车进去
把call里的十六进制地址复制到数据窗口中跟随
去脱完壳的程序那里复制刚才call里的十六进制地址(00444910),去数据窗口中查找
把00441BEC这个地址复制到00444910里。这样这个地址就不会去指向壳的地址就是指向程序的地址
复制成可执行文件。然后继续修复
10. 再次载入修复完的程序。运行起来断这里之后,右键‘在反汇编窗口中跟随’
断在这里之后,找到上面这个call
回车进去也是没有东西,就是要修复它
复制这段代码的地址,去未脱壳的程序找到相应的这段代码,回车进去看是什么东西
回车进去是retn
也去脱壳的程序里找个就近的retn地址
先到444908这个地址,找个就近的retn地址(Ctrl+F查找)
把这个retn地址填到这里
复制成可执行文件。然后继续修复
11. 再次载入修复完的程序。运行起来断这里之后,右键‘在反汇编窗口中跟随’
断在这里之后,找到上面这个call
回车进去也是没有东西,就是要修复它
复制这段代码的地址,去未脱壳的程序找到相应的这段代码,回车进去看是什么东西
回车进去是retn
也去脱壳的程序里找个就近的retn地址
先到44490C这个地址,找个就近的retn地址(Ctrl+F查找)
把这个retn地址填到这里
复制成可执行文件。试运行程序是否能运行
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)