35. 脱壳篇-UPX和WinUpack压缩壳的使用和脱法

版权声明:墨痕诉清风 https://blog.csdn.net/u012206617/article/details/88358056

UPX官网:http;//upx.sourceforge.net

UPX加壳

通过cmd窗口执行,进入upx目录,执行:

upx.exe fishc.exe

或者直接将exe拖至upx.exe上即可

UPX脱壳

upx -d abc.exe

如果作者在导入表等地方修改的话,这种方式就不可以脱壳了,因为他自己都不认识自己了

一般情况下,加壳的程序均为 pushad

应用堆栈平衡法(ESP改变)找到

最好我们脱壳不要用OD的重建导入表,失败率很高,最好用ImportREC来重建

保存修正的OEP地址,dump

打开ImportREC,替换OEP地址

查看RVA和Size的正确

复制RVA地址+基址4=46B128,最后Set Imports

fix dump

记住保存选择OD生成的dump.exe,会新生成已个dump_.exe

WinUpack加壳

选择选项后将文件拖进来点击压缩即可加壳

他还会生成已个备份bak,以防我们做了错误事情 

WinUpack脱壳

C界面寻找401018,应用堆栈平衡法找到OEP

不要选中重建表,保存OEP地址

打开ImportREC,修正基址,修正KVA,修正Size,然后SetImport,最后查看有没有错误信息Show Invalid,Fix dump。

还原后如果嫌弃太大呢,最后也可以LordPE压缩一下

PE Edit,Rebuil PE

 

猜你喜欢

转载自blog.csdn.net/u012206617/article/details/88358056