脱壳技术,脱PEX V0.99b bart^crackPL的壳(6千字),PEX 2008年06月23日 星期一 下午 03:19 脱PEX V0.99b bart^crackPL的壳。 这个壳的强度一般,不过有对ice和trw的陷阱,我们要设法跳过去。 工具:trw、ice、improtrec等。 我不说是哪个程序,但是如果你要想跟我一同研究探讨的话请Q我。 好了,来吧! 真正的入口?用冲击波就可以找到:4261F4。但是我们还要手动试试。 用trw载入它,load。 017F:00447FFE INVALID 017F:00448000 JMP 004480FA <----入口,按F8继续跟。 017F:00448005 OR EAX,C4C4C40A ............... 017F:004480FA PUSHAD 017F:004480FB CALL 00448101 <-----注意!你可以看到这个CALL的地址448101与4480FB很近,所以以后看到有这样的CALL都要按F8单步执行。 017F:00448100 CALL E8494588 017F:00448105 ADD [EAX],EAX 017F:00448107 ADD [EAX],AL 017F:00448109 JMP D632026B 017F:0044810E AND AL,[EAX 00] 017F:00448111 CALL 0044831C 017F:00448116 CALL 032F8A06 017F:0044811B INT 20 VXDCall 9A24,24FF 017F:00448121 MOV SI,4647 017F:00448125 CALL 0044812B 017F:0044812A CALL 4023:27958D59 017F:00448131 ADD AL,CH 017F:00448133 ADD [EAX],EAX 017F:00448135 ADD [EAX],AL 017F:00448137 IMUL EBX,[EAX 66],E84A4DBF 017F:0044813E ROL DWORD PTR [ECX],00 017F:00448141 ADD [EBP 01E8F952],CL 017F:00448147 ADD [EAX],AL 你按几次F8就会来到陷阱处了,小心咯!会死机的。 017F:00448142 LEA EDX,[EDX-07] 017F:00448145 CALL 0044814B 017F:0044814A CALL 0010E9AA 017F:0044814B POP EBX <----就是这里 017F:0044814C PUSH 9AE2FFCC <-----置陷阱 017F:00448151 JMP ESP <----掉入陷阱咯!我们进去看看! 017F:00448153 IMUL EDI,EDI,402545A5 017F:00448159 ADD CL,CH 017F:0044815B CALL 00448119 仔细看看:esp下的值。 EAX=00000000 EBX=0044814A ECX=00448142 EDX=00448154 ESI=81654647 EDI=00004A4D EBP=00045E34 ESP=0068FE08 EIP=0068FE08 o d I s Z a P c CS=017F DS=0187 SS=0187 ES=0187 FS=4B8F GS=0000 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪dword哪哪哪哪哪哪腜ROT哪?0)哪 0187:0068FE08 9AE2FFCC 0068FF68 004481F1 00045E34 ....h.h...D.4^.. 0187:0068FE18 0044815B 00000000 81652CD8 0068FF78 [.D......,e.x.h. 0187:0068FE28 0068FE3C 00000000 81652D38 81652CF8 <.h.....8-e..,e. 0187:0068FE38 00448000 BFF8B86C 00000000 81652CD8 ..D.l........,e. 0187:0068FE48 00000000 74746F4C 00797265 00455845 ....Lottery.EXE. 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪腜ROT32 017F:0068FE02 F7BFFFFFFFFF IDIV DWORD PTR [EDI-0001] 017F:0068FE08 CC INT 3 <----会来到这!阿!明白了应该是利用int 3来判断是否被调试工具调试。按F8就会非法操作了。我把数据栏你的数据9AE2FFCC改为9AE2FF4A,这样就不会出错了。 017F:0068FE09 FFE2 JMP EDX 017F:0068FE0B 9A68FF6800F181 CALL 81F1:0068FF68 017F:0068FE12 44 INC ESP 017F:0068FE13 00345E ADD [EBX*2 ESI],DH 017F:0068FE16 0400 ADD AL,00 017F:0068FE18 5B POP EBX 017F:0068FE19 81440000000000D8 ADD DWORD PTR [EAX EAX 00],D8000000 ...改后的程序: 017F:0068FE02 F7BFFFFFFFFF IDIV DWORD PTR [EDI-0001] 017F:0068FE08 4A DEC EDX 017F:0068FE09 FFE2 JMP EDX 017F:0068FE0B 9A68FF6800F181 CALL 81F1:0068FF68 ......按F8继续 017F:004481D9 32C6 XOR AL,DH 017F:004481DB D2C0 ROL AL,CL 017F:004481DD D3C2 ROL EDX,CL 017F:004481DF 8807 MOV [EDI],AL 017F:004481E1 47 INC EDI 017F:004481E2 49 DEC ECX 017F:004481E3 75D0 JNZ 004481B5 017F:004481E5 E801000000 CALL 004481EB 017F:004481EA E883C4040F CALL 0F494672 017F:004481EB 83C404 ADD ESP,04 017F:004481EE 0F0B UD2 <----这里小心,按F6,移动光标到4481FD后按F7。跳过这里。 017F:004481F0 E82BD2648B CALL 8BA95420 017F:004481F5 028B20648F02 ADD CL,[EBX 028F6420] 017F:004481FB 58 POP EAX 017F:004481FC 5D POP EBP 017F:004481FD C3 RET ....以后就没有什么了,多数用F8 F6 F7就可以搞定,要注意跳过循环。这可要一定的技巧,就看你的了。很快就会转入660XXX的层解还原了,你可以看到基址、IAT和部分API里面的函数了,这可是事后修复IAT的参照阿! 可以直接bpx 4261f4,然后makepe了。 |
|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )
GMT+8, 2024-9-29 23:23 , Processed in 0.286467 second(s), 12 queries , Gzip On, MemCache On.
Powered by Discuz! X3.5
© 2001-2023 Discuz! Team.