好友
阅读权限10
听众
最后登录1970-1-1
|
本帖最后由 LShang 于 2012-3-2 10:43 编辑
大家好~我又来了..经过一周多的学习和琢磨..终于把穿山甲Armadillo 3.05{glue}的壳子给脱了
真的..废了很大的劲才脱掉的..论坛里面对于这个壳子的详细教程也没有几个..所以小弟不才也来试着做图文教程把~
有错误和不对的地方请大牛们指出,不要留情哈, 好~~下面不废话, 开始教程:
第一步:
国际惯例FEID查壳, 这里查出来是 Armadillo 1.xx - 2.xx -> Silicon Realms Toolworks,
但是大家不要被PEID迷惑了,因为穿山甲的壳子好像是对PEID有一个功能,可以误导人的(希望我没有理解错误)
所以这里我们接着用FI来查, 得出结果是 Armadillo 3.05{glue}, 跟PEID查的不一样哦,所以不要完全依靠PEID,
习惯一下用FI复查的习惯^^
第二步:
知道是什么壳子就好办事了, 直接OD载入, 隐藏OD,设置忽略所有异常..
在命令栏输入he GetModuleHandleA+5 - 回车 -Shift+F9, 然后继续按Shift+F9,大概是3-5次左右,你会发现里面有一次缓冲非常大,
当按Shift+F9的时候缓冲比前面几次都要大得多的时候就是返回时机了!!! (注意观察堆栈)
右键-断点-选择删除硬件断点~ 然后按ALT+F9返回~
第三步:
找到kerne132.LoadLibaryA下面的第一个je, 把je修改成jmp, 其他不要修改!
修改成jmp之后对着刚才修改的jmp那一行按下键盘上的回车,
回车完了之后会看到有2个东西,一个是jnz和jmp, 选中jmp这一个,按下键盘的F2下断点(或者右键-断点-切换)
然后按Shift+F9运行到这个位置, 然后再按一次按下键盘的F2取消断点(或者右键-断点-切换)
这个时候向上看,找到刚才我们修改的jmp那一行,选中他,右键-撤销修改!
第四步:
按下键盘的ALT+M 进入内存映射,
找到开头为00401000的.txt一行, 右键-设置内存访问断点, 然后按下SHIFT+F9运行~~
好拉~~运行之后就直接到达我们的OEP了
第五步:
选到第一行,右键-使用OD脱壳调试进程
选择方式1,然后就可以脱壳了..(也可以用LordPe来脱壳,都可以的)
好了~~再用PEID查一下:
然后再用FI反复查一次:
教程就先到这里了, 本人超级无敌大菜鸟,上周也在这里发了2个求助的帖子,哎..也没大牛出手指点我一下,
好不容易熬到脱成功了..表示激动啊..
下面轮到开始着手学习脱穿山甲DLL的壳子了..希望大牛们到时候多多指点我啊! 谢谢拉~~
哈哈 ~~ 觉得好的就打赏点CB拉~~~CB有木有~~CB有木有~~CB有木有~
|
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|