ACProtect Professional 1.3C 主程序脱壳(2)(图)
网站建设 2021-07-03 10:05www.dzhlxh.cn网站建设
4. dump
根据脱US UnpackMe的经验,不能在false OEP处dump,此时BSS section中许多数据已经初始化了。最好在第一句(push ebp)就dump。可是那个push ebp离false OEP很远L。
Packer EP的初始化环境:
500)this.width=500" title="点击这里用新窗口浏览图片" />
500)this.width=500" title="点击这里用新窗口浏览图片" />
500)this.width=500" title="点击这里用新窗口浏览图片" />
先看看发出第1个call的壳代码:
500)this.width=500" title="点击这里用新窗口浏览图片" />
可以看到(跟一下可以证实),在call入原程序空间前,最后的异常是div 0。用现在的OllyDbg脚本(跟到737B63),停下后修改异常拦截选项:
500)this.width=500" title="点击这里用新窗口浏览图片" />
试试能否拦截异常找到合适的dump位置。当前OllyScript脚本停下时的环境:
500)this.width=500" title="点击这里用新窗口浏览图片" />
栈中为pushad的结果。
根据脱US UnpackMe的经验,不能在false OEP处dump,此时BSS section中许多数据已经初始化了。最好在第一句(push ebp)就dump。可是那个push ebp离false OEP很远L。
Packer EP的初始化环境:
500)this.width=500" title="点击这里用新窗口浏览图片" />
500)this.width=500" title="点击这里用新窗口浏览图片" />
500)this.width=500" title="点击这里用新窗口浏览图片" />
先看看发出第1个call的壳代码:
500)this.width=500" title="点击这里用新窗口浏览图片" />
可以看到(跟一下可以证实),在call入原程序空间前,最后的异常是div 0。用现在的OllyDbg脚本(跟到737B63),停下后修改异常拦截选项:
500)this.width=500" title="点击这里用新窗口浏览图片" />
试试能否拦截异常找到合适的dump位置。当前OllyScript脚本停下时的环境:
500)this.width=500" title="点击这里用新窗口浏览图片" />
栈中为pushad的结果。
1