UPX ... ASPACK怎么脱壳
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UPX ... ASPACK怎么脱壳相关的知识,希望对你有一定的参考价值。
就想学习下 说的仔细点
参考技术A 这是ASPACKR 的壳,你可以试试到网上下载UNASPACK自动脱壳机看看,若不行那就是ASPACKR 的变种,必须在CMD下才可以脱去,比较麻烦,在这里说不清,你可以到网上找,应该有教程。 参考技术B 用esp定律,手动一下就脱了你google下 esp aspack
非常多 参考技术C UPX.ASPack.FSG快速脱壳 Quick Unpack汉化绿色特别版 V2.00
http://www.mt30.com/Soft/systools/Sbian/200812/12534.html这里下载
http://hi.baidu.com/minil2/blog/item/04d9c1d392740237960a1652.html这里有步骤
简单尝试UPX脱壳
又是社团大佬讲的东西,只不过这次没有讲好,大佬中途出了点问题没法脱壳,我就自己研究一下
1.前置准备
先去网上找个UPX加壳软件,然后给exe程序加壳(但不是所有程序都支持加壳,也有加壳工具不支持的文件)
我选择的exe是自己用codeblock写的简单的程序
链接编译生成try.exe
由于网上找到工具加壳要的结果和预期的不一样,就去下载了命令行版的加壳程序upx.exe
使用方法,进入upx.exe目录
把try.exe放入当前目录加壳
查看upx壳,PEID和DIE都能识别壳
2.OD单步法脱壳
先来查看加壳前的堆栈
加壳后的堆栈
第一句话就是pushad,把从EAX到EDI寄存器压入堆栈,保存现场(原来的值)
使用单步法,先一步步向下查看,直到找到POPAD语句出现的地方,因为一般UPX壳都是加在原程序的上方
单步执行按F8,遇到向下跳转不用管继续按(截图和实验程序无关)
遇到向上跳转,选中它下一行代码按F4继续向下执行,不会跳转回去(注意左边黑色箭头代表向上跳转)(截图和实验程序无关)
我们单步向下运行,然后运行到一个地方的时候会无法继续向下,观察附近的代码,程序入口(OEP)很大可能就在附近
当我运行到一个点时,程序会进入循环且会无法继续单步,这时命令窗口就将数据打印出来了,说明程序已执行。
当然一般的UPX壳程序是在POPAD命令以后才出现OEP的,这里情况有点特殊
点击插件>ollyDump>脱壳在当前调试的进程,将脱壳的程序保存(只有在找到OEP才能脱壳,不然生成的程序不会成功打印结果)
能成功运行
(待完善)
以上是关于UPX ... ASPACK怎么脱壳的主要内容,如果未能解决你的问题,请参考以下文章