-
-
[旧帖]
[求助]天草中级教程中的 “脱壳”第一课,脱后破解,求分析
0.00雪花
-
发表于:
2010-8-8 07:02
1317
-
[旧帖] [求助]天草中级教程中的 “脱壳”第一课,脱后破解,求分析
0.00雪花
天草中级教程中的 “脱壳”第一课,用ASFConverter.exe 作为案例。脱壳还有试用期,直接弹出主窗口,脱壳后没使用期了,直接运行弹出注册窗口!!开始在启动后寻求爆破点,找到关键跳,改掉之后发现气不到作用,后面跟了很久不明白原理,接着就尝试看算法。。也看得不明所以,就放弃了。后来想了想,从开始验证的时候去掉注册框,就能达到主窗口了吧!!就开始下断点研究,研究了很久也发现不到关键跳,最后想出了一个笨方法,从程序开始单步F8看哪个CALL出现注册框,就F2下断,重来跟进。。最后找到了关键代码!!
00401137 . 83C4 04 add esp,4
0040113A . 50 push eax
0040113B . 8D4C24 18 lea ecx,dword ptr ss:[esp+18]
0040113F . C68424 D00000>mov byte ptr ss:[esp+D0],3
00401147 . E8 50110400 call Unpack_.0044229C
0040114C . 8D4C24 10 lea ecx,dword ptr ss:[esp+10]
00401150 . 889C24 CC0000>mov byte ptr ss:[esp+CC],bl
00401157 . E8 07100400 call Unpack_.00442163
0040115C . 8B5424 14 mov edx,dword ptr ss:[esp+14]
00401160 . 8B4424 18 mov eax,dword ptr ss:[esp+18]
00401164 . 52 push edx
00401165 . 50 push eax
00401166 . E8 55720100 call Unpack_.004183C0 ;
0040116B . 83C4 08 add esp,8
0040116E . 85C0 test eax,eax
00401170 74 07 je short Unpack_.00401179 ; 关键跳!改跳下一行破
00401172 . 8BFB mov edi,ebx
00401174 . E9 DC000000 jmp Unpack_.00401255
00401179 > E8 22730100 call Unpack_.004184A0
0040117E . 3BC6 cmp eax,esi
00401180 0F8F CF000000 jg Unpack_.00401255 ;改JMP出现试用版
00401186 . 56 push esi
00401187 . 8D4C24 24 lea ecx,dword ptr ss:[esp+24]
0040118B . E8 D0650100 call Unpack_.00417760
00401190 . 8D4C24 20 lea ecx,dword ptr ss:[esp+20]
00401194 . C68424 CC0000>mov byte ptr ss:[esp+CC],4
0040119C . E8 4B090400 call Unpack_.00441AEC ; 注册框
004011A1 . 8D4C24 10 lea ecx,dword ptr ss:[esp+10]
004011A5 . 51 push ecx
004011A6 . E8 B5700100 call Unpack_.00418260
004011AB . 83C4 04 add esp,4
004011AE . 50 push eax
004011AF . 8D4C24 1C lea ecx,dword ptr ss:[esp+1C]
004011B3 . C68424 D00000>mov byte ptr ss:[esp+D0],5
004011BB . E8 DC100400 call Unpack_.0044229C
爆破点我已经找到了,但阵地不明白原理,连找到爆破点也很糊涂,想知道大概的分析,也想知道这软件的算法关键点,希望高手们指点一下,分析一下算法的关键代码。。。还有能说说找启动验证关键点的经验。。谢谢!!
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)