windycandy 发表于 2005-10-13 20:06:58

老壳ASProtect 1.2 / 1.2c的另类脱壳(ESP定律快速脱壳)

【调试环境】:WinXP、PEiD、ODbyDYK v1.10、ImportREC1.6 Final

【学习目的】:手动脱ASProtect 1.2 / 1.2c-> Alexey Solodovnikov壳

【目标软件】:ABC Amber Excel Converter V1.26

【下载连接】:(自己去搜索)

【作者声明】:我是一只小菜鸟,偶得一点心得,愿与大家分享

------------------------------------------------------------------------------------------

1.前言

前天在一个论坛看到一篇有关该软件脱壳的教程,想下来学习一下,在那个教程里是用
ASProtect 1.2x - 1.3x [已经注册] -> Alexey Solodovnikov加的壳(ABC Amber Excel
Converter 1.20 多国语言),这几天在学习脱ASProtect壳,就下来看了一下,没想到这
个是ASProtect 1.2 / 1.2c-> Alexey Solodovnikov的壳,有点失望。不过琢磨了一下,发
现了一个可以快速脱ASProtect 1.2 / 1.2c-> Alexey Solodovnikov的方法,大家遇到这个
加壳方式时不防用来试试,是否通用,我也不知道,但是在这个软件是可以的。

2.脱壳过程

OD载入程序,忽略所有异常,再添加以下几个异常C0000005(ACCESS VIOLATION)、C000001D(ILLEGAL
INSTRUCTION)、C000001E(INVALID LOCK SEQUENCE)、C0000096(PRIVILEGED INSTRUCTION),请检查
自己的OD设置。

入口代码:

00401000 a>68 01C06B00       push abcexcel.006BC001
00401005   C3                retn---------------------------F8下来到这里,看寄存器ESP=12ffc0
00401006   A2 8034479C       mov byte ptr ds:,al
0040100B   E7 9E             out 9E,eax
0040100D   49                dec ecx
0040100E   3C 90             cmp al,90
00401010   E0 73             loopdne short abcexcel.00401085
00401012   90                nop
00401013   21E8            and eax,ebp

于是在命令行下:hr 12ffc0       F9运行

006BC002   E8 1B000000       call abcexcel.006BC022--------第一次硬件中断在这里
006BC007   - E9 FC8DB50F       jmp 10214E08
006BC00C   06                push es
006BC00D   0000            add byte ptr ds:,al
006BC00F   8BFE            mov edi,esi
006BC011   B9 97000000       mov ecx,97
006BC016   AD                lods dword ptr ds:
006BC017   35 78563412       xor eax,12345678
006BC01C   AB                stos dword ptr es:
006BC01D   49                dec ecx
006BC01E   ^ 75 F6             jnz short abcexcel.006BC016
006BC020   EB 04             jmp short abcexcel.006BC026
006BC022   5D                pop ebp
006BC023   45                inc ebp
006BC024   55                push ebp
006BC025   C3                retn

继续F9运行


00CDA213   8901            mov dword ptr ds:,eax
00CDA215   03C3            add eax,ebx
00CDA217   894424 1C         mov dword ptr ss:,eax
00CDA21B   61                popad ---------------------第二次硬件中断在这里
00CDA21C   FFE0            jmp eax-----★飞向光明顶(这个词很cool,借用一下)
00CDA21E   0060 E8         add byte ptr ds:,ah
00CDA221   06                push es
00CDA222   0000            add byte ptr ds:,al
00CDA224   008B 642408EB   add byte ptr ds:,cl
00CDA22A   0C 33             or al,33
00CDA22C   F664FF 36         mul byte ptr ds:
00CDA230   64:8926         mov dword ptr fs:,esp
00CDA233   FE06            inc byte ptr ds:
00CDA235   ^ EB E8             jmp short 00CDA21F


第二次硬件中断后,F8两下就到OEP了:

0062A61C   55                push ebp-----------------OEP
0062A61D   8BEC            mov ebp,esp
0062A61F   81C4 E8FEFFFF   add esp,-118
0062A625   53                push ebx
0062A626   56                push esi
0062A627   33C0            xor eax,eax
0062A629   8945 E8         mov dword ptr ss:,eax
0062A62C   8945 F0         mov dword ptr ss:,eax
0062A62F   8945 EC         mov dword ptr ss:,eax
0062A632   B8 3C9F6200       mov eax,abcexcel.00629F3C
0062A637   E8 40DDDDFF       call abcexcel.0040837C
0062A63C   33C0            xor eax,eax
0062A63E   55                push ebp
0062A63F   68 06A76200       push abcexcel.0062A706
0062A644   64:FF30         push dword ptr fs:
0062A647   64:8920         mov dword ptr fs:,esp
0062A64A   8D55 EC         lea edx,dword ptr ss:

用OD插件直接dump出来,用ImportREC修复便可了,OEP:22A61C(PEID查看dump出来文件的数值)
“自动搜索”,先Level 1修复,再ASProtect 1.22插件修复即可。

还是运行修复后的程序,出错!具体的修复方法参考---密界脱壳文集第二版---51Crack的
文章《菜鸟也脱壳--ABC Amber CHM Converter 1.11脱壳》,修复后的程序可以正常运行。

铁雪龙 发表于 2005-10-13 21:56:07

不错,支持~~~`

noTme 发表于 2005-10-13 22:14:30

学习,~

散仙 发表于 2005-11-12 01:02:52

有意识,这应该是手动脱壳,可我不会不知哪里找教程

爱上一个人 发表于 2005-11-28 18:42:46

呵呵~asp的壳这样也行?谢谢楼主了辛苦了

m2tx 发表于 2007-2-11 20:18:34

谢谢

方法我去试下

sonfly 发表于 2007-2-18 10:14:51

哎。。没用。。

心系彩云 发表于 2007-9-11 00:40:59

全收下,谢谢分享

tengteng828 发表于 2007-9-12 09:47:42

学习一下,不错不错。我想看看ARM的壳。不知道有没有人写

playboyjin 发表于 2007-9-13 09:36:40

学习了      :loveliness:
页: [1]
查看完整版本: 老壳ASProtect 1.2 / 1.2c的另类脱壳(ESP定律快速脱壳)