zoukankan      html  css  js  c++  java
  • 手脱ASPack v2.12

    0x01---PEid查壳

    0x02---分离重定位

    此步骤主要是为了关闭随机基址;

    0x03---ESP定律法查找OEP

    在第二个retn的位置进入;
    进入jmp跳转中;
    在这里,我们可以再次使用ESP定律,当然也可以数据窗口跟随图中位置,我们可以看到其在解密IAT,当跑完IAT,释放堆空间后,找到大跳,就是OEP了;
    进入jmp;
    看到76916B15 Kernel32.VirtualFree是在释放用来解密IAT的堆空间,在这之后,单步步过找到jmp大跳就是OEP了;
    成功到达OEP!!!
    取消重建输入表,将其dump出来,之后就是修复IAT表,跟其它一样;
    成功脱壳;
    总结:由于之前脱过ASPack v2.12,当第一次使用ESP定律后的jmp大跳后的pushad,以为这里就是OEP位置,脱壳失败后,再通过对堆空间的查看,发现其在解密IAT表,于是当跟完IAT解密后,经过几次跳转,成功找到OEP,其实使用2次ESP定律能够更快的找到OEP,也就是说,此程序使用ASPack v2.12加了2次壳,简称壳中壳!!!




  • 相关阅读:
    linux下apache(httpd)安装部署
    基于redis分布式缓存实现(新浪微博案例)
    python--字典
    django(四)
    django(三)
    django(二)
    django(一)
    053(八十)
    053(七十九)
    053(七十八)
  • 原文地址:https://www.cnblogs.com/HOPEAMOR/p/11974976.html
Copyright © 2011-2022 走看看