首页
社区
课程
招聘
[旧帖] [原创][原创][原创]新人手脱ASPack 2.12 -> Alexey Solodovnikov 0.00雪花
发表于: 2013-11-28 19:44 1903

[旧帖] [原创][原创][原创]新人手脱ASPack 2.12 -> Alexey Solodovnikov 0.00雪花

2013-11-28 19:44
1903
本人新手,刚学脱壳差不多一个月,还差2,3天。每天看一点三人行的破解教程,也算是入门了。今天在学习反病毒的时候找到了IceSword这个软件,无聊之中就用PEID查了一下壳,发现是ASPack 2.12 -> Alexey Solodovnikov。之前学习也脱过ASPack的壳,不过都是脱得教程里的壳,今天我就自己来脱这个壳练练手。
首先用OD载入:
0063F001 >  60              pushad                        单步F8向下走
0063F002    E8 03000000     call IceSword.0063F00A          F7进CALL

0063F00A    5D              pop ebp                                  ; IceSword.0063F007         跳到这里了,接着F8向下单步走
0063F00B    45              inc ebp                    F8
0063F00C    55              push ebp                 F8
0063F00D    C3              retn                         F8
0063F00E    E8 01000000     call IceSword.0063F014             F8
0063F008   /EB 04           jmp short IceSword.0063F00E         F8向下跳

0063F00E   \E8 01000000     call IceSword.0063F014             跳到这里接着用F7进CALL

0063F014    5D              pop ebp                                  ; IceSword.0063F013           跳到这里,接着用F8单步走,之后碰到的CALL也用F8
0063F015    BB EDFFFFFF     mov ebx,-13
0063F01A    03DD            add ebx,ebp
0063F01C    81EB 00F02300   sub ebx,23F000
0063F022    83BD 22040000 0>cmp dword ptr ss:[ebp+422],0
0063F029    899D 22040000   mov dword ptr ss:[ebp+422],ebx
0063F02F    0F85 65030000   jnz IceSword.0063F39A                     看见向下跳转的箭头时候接着用F8

接着一大串的代码我就不一一复制了。

来到这里,第一个往回跳的地方:
0063F140  ^\EB EB           jmp short IceSword.0063F12D        F8运行到这里的时候停住,为防止往回跳,点到下一行,F4
0063F142    8B06            mov eax,dword ptr ds:[esi]              点中这一行F4
0063F144    EB 00           jmp short IceSword.0063F146         接着F8 
0063F146    803E 27         cmp byte ptr ds:[esi],27                 F8
0063F149  ^ 75 F3           jnz short IceSword.0063F13E         F8
0063F14B    24 00           and al,0                                            点中F4
0063F14D    C1C0 18         rol eax,18                                      F8
0063F150    2BC3            sub eax,ebx                                     F8
0063F152    8906            mov dword ptr ds:[esi],eax              F8
0063F154    83C3 05         add ebx,5                                       F8
0063F157    83C6 04         add esi,4                                        F8
0063F15A    83E9 05         sub ecx,5                                        F8
0063F15D  ^ EB CE           jmp short IceSword.0063F12D       F8 
0063F15F    5B              pop ebx                                              F4
 …………
就照着这个一直运行

来到这里:
0063F3B0   /75 08           jnz short IceSword.0063F3BA          F8向下跳
0063F3B2   |B8 01000000     mov eax,1
0063F3B7   |C2 0C00         retn 0C
0063F3BA   \68 5B854200     push IceSword.0042855B          跳到这里,看这里有一个大跳转,说明马上就可以找到OEP了,F8
0063F3BF    C3              retn         F7进入程序入口点

来到OEP了:
0042855B    55              push ebp                   这里就是OEP了,可以开始脱壳了
0042855C    8BEC            mov ebp,esp
0042855E    6A FF           push -1
00428560    68 F0484E00     push IceSword.004E48F0
00428565    68 D07E4200     push IceSword.00427ED0
…………

我用的是LordPE和ImportREC_fix。
先用LordPE载入程序,第一步纠正文件大小,然后完全脱壳。这样程序还是打不开的。
接着用ImportREC_fix载入程序,在左下角OEP输入2855B,点自动查找,再点获取输入表,看一下有没有无效的指针,没有就点修复转储文件来修复刚脱完壳的程序。
这样就大功告成了,再来用PEID查下壳,显示Microsoft Visual C++ 6.0。

由于我是WIN7系统,这个程序我开不了。

在下新人,第一次发帖,学了也没多久,写的不好求各位大神别喷。

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 334
活跃值: (540)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
OD要怎么入门啊??
2013-11-30 19:31
0
雪    币: 3202
活跃值: (1917)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
脱这壳没意义。
2013-12-3 16:12
0
雪    币: 31
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
顶下 看看..还不错哈
2013-12-5 14:43
0
雪    币: 70
活跃值: (88)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
5
这类壳秒脱,又不是ASProtect,或vmp,,,发帖有何意义。。
2013-12-5 15:29
0
游客
登录 | 注册 方可回帖
返回
//