学习ASProtect 2.1x SKE 脱壳 二进制码为: C7 05 00 10 00 0E 40 2D 53 00 BA 00 10 40 00 80 3A E8 75 14 8B 42 01 03 C2 05 05 00 00 00 3D 00 00 1B 01 75 03 60 FF E2 42 81 FA 00 A0 52 00 72 DE EB FE 8B 0D 00 10 00 0E 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 89 11 83 05 00 10 00 0E 04 89 0D 00 20 00 0E 81 C4 30 01 00 00 61 8B 1D 00 20 00 0E 89 5A 02 66 C7 02 FF 25 8B 1D 00 10 00 0E C7 03 00 00 00 00 90 83 05 00 10 00 0E 04 EB 81 代码是参照syscom <ASProtect.SKE.2.11 高速脫殼+(圖示) >中示范代码编写的,由于iat加密,进行了调整,将解密后api直接放入为其预留的iat空间,同时 0E000091 mov ebx,dword ptr ds:[E001000] 0E000097 mov dword ptr ds:[ebx],0 ;解密api地址保存为之后面填充00000000 为了使imprec不出现误报,每一api解密后iat填充00000000 代码编写完毕后,使eip=0e000000,f9,片刻,f12暂停。 dump wso.exe 。 imprec抓取iat,oep=00129D3C,rva=130000,size=4000,get,cut无效指针 fix it,不能正常运行,od载入继续跟踪发现: 004012F4 - FF25 0C025300 jmp dword ptr ds:[53020C] 004070F0 - FF25 F4035300 jmp dword ptr ds:[5303F4] 两处均是GetProcAddress,imprec修正. 可以运行,但有点问题 4、暗桩修复 先来去掉日期提示nag: 0052947C . /7E 1E jle short wso.0052949C ;修改为jmp short wso.0052949C 0052947E . |A1 38CF5200 mov eax,dword ptr ds:[52CF38] 00529483 . |8B00 mov eax,dword ptr ds:[eax] 00529485 . |8B10 mov edx,dword ptr ds:[eax] 00529487 . |FF92 EC000000 call dword ptr ds:[edx+EC] ;nag窗口 0052948D . |83F8 02 cmp eax,2 ;按try,eax=1;按quit,eax=2 00529490 . |75 0A jnz short wso.0052949C 再来去掉about的异常 把00FA0000-00FD3000 区块(位置可能会变化,od跟踪确定) 用lordpe dump,装配进修复好的wso.exe.rebuild pe. 在把about的unregistered改一下,和正式版一样:)得到老婆夸奖,还将syscom,loveboom,fly等诸位大牛大大的敬仰了一把。:) 收功之后,英雄无敌目录locked,设置password,以为老婆学业从此蒸蒸日上,与时俱进,再无30日之忧。谁知某日凌晨醒来,惨叫之声不绝于耳,老婆的大天使正在斩妖除魔。不可能阿,我的防护天衣无缝,只有我才能进入游戏目录。老婆见我惊愕,羞涩的嫣然一笑,惭愧而又骄傲的告诉我“下次吧密码设复杂点儿“。 |
|