码迷,mamicode.com
首页 > 其他好文 > 详细

学习:脱壳之Anti Dump

时间:2019-12-29 13:19:29      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:产生   class   还需   虚拟内存   默认   偏移地址   jmp   http   相对   

文章继:https://www.cnblogs.com/zpchcbd/p/12111567.html

发现转储之后,然后修复IAT发现依然是打不开的,原因是壳有反脱壳的检测

技术图片

把修复完IAT的程序继续载入,F8跟随,发现JMP的区段已经不存在了

技术图片

技术图片

我们再看下原程序的AC区段,发现是存在的,所以我们需要把这个原程序中的AC区段拷贝一份,在脱壳后的程序中进行填充

技术图片

技术图片

然后填充到脱壳后的程序中

技术图片

因为是直接把原程序的AC片段直接拷贝的,所以还需要修改下虚拟的偏移地址

默认情况下,EXE文件的基址为0x00400000,DLL文件的基址为0x10000000。

虚拟内存地址(VA):PE文件中的指令被装入内存后的地址,OllyDbg动态反汇编产生。
相对虚拟地址(RVA):内存地址相对与映射基址的偏移量。
VA = Image Base + RVA。

该程序的EXE文件的基址也是00400000,所以我们需要计算下它的相对虚拟地址,那么就是400000-AC0000,结果就是6C0000

技术图片

最后还需要重新构建PE头,自己不太懂,以后懂得话再加上!

技术图片

重新打开,打开成功!
技术图片

学习:脱壳之Anti Dump

标签:产生   class   还需   虚拟内存   默认   偏移地址   jmp   http   相对   

原文地址:https://www.cnblogs.com/zpchcbd/p/12114509.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!