手动脱UPX的DLL
本帖最后由 BattleHeart 于 2014-10-24 18:07 编辑手动脱UPX的DLL 这里我只是整理一下文档,方便大家学习,学习资料是黑鹰逆向教程,我把里面的一些我觉得有必要整理的东西,拿出来整理一下,大神请不要喷!下面来进行分析:主要程序是:
主要分析的是这里面的DLL文件,也就是XY2Function.dll这个文件,下面来用PEID载入看一下,看一下壳:
将XY2Function.dll载入到OD中,这里OD分析dll需要有另外一个进程来加载loaddll.exe程序;
接下来就单步走,这里有一个技巧我们可以直接搜下面这个指令:Xchgah,alRol eax,10Xchgah,alAdd eax,esi既然这样我们就开始CTRL+B查找第一段代码:
点击查找按钮,CTRL+L进行下一个查找直到查到这段代码为止:
找到了这段代码之后接下来就是再moval,byte ptr ds:处下断电,F9运行到这里,然后记录下edi的值,这个edi存放就是DLL重定位地址,edi-基址=RVA重定位;
这里面edi的地址是edi=1009F418,我们查看内存看一下基址是多少,
基址为10000000所以这个重定位的RVA就是9F418接下来就是单步走到程序的OEP,单步走的原则就是远Call F8,近Call F7;这样我们就到达了OEP用loadpe进行dump程序;
接下来就是Dump程序,这里就不截图了,主要是后面修复关键地方,将修复完成之后的程序载入到LOADPE中,进行重定位的修复
点击目录进入到修改目录中:
注意这里修复完成后点击保存->确定,之后出来还要点击保存->确定这样才算成功。后面就是用importREC进行修复。修复之后就可以运行了程序我就不附加了,自己找一个UPX的DLL练手就好!!!注明:Martin=BattleHeart
希望多多加分鼓励!!!!拿走虽易,分享不易,且行且珍惜!
楼主的图文教程,做的真是太详细了。感谢!
我暂时用不到吧
{:5_118:}大牛 你撸视频的时候手抖不
小强 发表于 2014-10-24 18:33
大牛 你撸视频的时候手抖不
呵呵!什么情况?
谢谢楼主的教程。学习了
谢谢楼主的教程。学习了
膜拜大神啊 这个需要标记一下 关于重定位
页:
[1]
2