小第我刚来看雪,久仰看雪在脱壳破解界的声誉,希望老大们能多多栽培我下~~~
我会脱一般的小壳,可是我在脱FSG 2.0却遇到了问题,我看见论坛上也有人问这个壳的脱法,却没有我想要的方法,所以我再在这里问下,希望看雪的大哥们不要说我麻烦~~新手入门都是这么样~~呵呵~
下面是我的过程:OD载入后,我忽略所有异常,入口是
00400154 > 8725 2C794100 XCHG DWORD PTR DS:[41792C],ESP --入口点
0040015A 61 POPAD
0040015B 94 XCHG EAX,ESP ---=下单步到这
0040015C 55 PUSH EBP
0040015D A4 MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]
我在网上看到一个办法(ESP方法脱),F8单步运行到
0040015B 94 XCHG EAX,ESP
这时在右下窗口可以看到(我忘了什么名字了呵呵):
00417930 004001E8 记事本.004001E8
00417934 004001DC 记事本.004001DC
00417938 004001DE 记事本.004001DE
0041793C 004010CC 记事本.004010CC -------OEP
00417940 > 7C801D77 kernel32.LoadLibraryA
我在
0041793C 004010CC 记事本.004010CC 这里数据窗口跟随
然后在左下窗口有
004010CC 00 ,我下断,硬件访问,字
然后SHIFT+F9运行
00400154 > 8725 2C794100 XCHG DWORD PTR DS:[41792C],ESP
0040015A 61 POPAD
0040015B 94 XCHG EAX,ESP
0040015C 55 PUSH EBP
0040015D A4 MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]
0040015E B6 80 MOV DH,80 ---------------运行后条到这里
00400160 FF13 CALL DWORD PTR DS:[EBX]
我在重复上面步骤运行:一次是不动,2次到了
004001BE 5E POP ESI -----到这
004001BF ^ EB 9F JMP SHORT 记事本.00400160
004001C1 5E POP ESI
004001C2 AD LODS DWORD PTR DS:[ESI]
004001C3 97 XCHG EAX,EDI
004001C4 AD LODS DWORD PTR DS:[ESI]
3次到这
004001BC F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[>-------到这
004001BE 5E POP ESI
004001BF ^ EB 9F JMP SHORT 记事本.00400160
004001C1 5E POP ESI
在运行就跑飞了,郁闷了...按照那个教程的方法,我应该很快到OEP的,可是我怎么都到不了....
我就在在第3次的时候不运行,F8走
004001BC F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[>
004001BE 5E POP ESI
004001BF ^ EB 9F JMP SHORT 记事本.00400160
004001C1 5E POP ESI---我这下了断
004001C2 AD LODS DWORD PTR DS:[ESI]
004001C3 97 XCHG EAX,EDI
004001C4 AD LODS DWORD PTR DS:[ESI]
004001C5 50 PUSH EAX
004001C6 FF53 10 CALL DWORD PTR DS:[EBX+10]--这个call好象卡了下
004001C9 95 XCHG EAX,EBP
004001CA 8B07 MOV EAX,DWORD PTR DS:[EDI]
004001CC 40 INC EAX
004001CD ^ 78 F3 JS SHORT 记事本.004001C2-没实现
004001CF 75 03 JNZ SHORT 记事本.004001D4
004001D1 FF63 0C JMP DWORD PTR DS:[EBX+C]
004001D4 50 PUSH EAX
004001D5 55 PUSH EBP
004001D6 FF53 14 CALL DWORD PTR DS:[EBX+14]
004001D9 AB STOS DWORD PTR ES:[EDI]
004001DA ^ EB EE JMP SHORT 记事本.004001CA---就是这了,我在下面的地址下断,我一下断,就运行了...我哭啊!!
004001DC 33C9 XOR ECX,ECX--第一次下断
004001DE 41 INC ECX---我第2次在这断,还是运行!!
004001DF FF13 CALL DWORD PTR DS:[EBX]
004001E1 13C9 ADC ECX,ECX
004001E3 FF13 CALL DWORD PTR DS:[EBX]
004001E5 ^ 72 F8 JB SHORT 记事本.004001DF
004001E7 C3 RETN
004001E8 02D2 ADD DL,DL
唉,过程就是上面...我真无语啊,出了什么问题呢?希望老大门能帮下啊~感激啊!!
还有个问题,我在用OD做免杀时,在0区域填了点代码,可是保存时出现
"可执行文件中无法定位数据"
就没办法保存了....这是为什么啊??
希望看雪大哥们能回答小菜我的问题,谢谢了谢谢了!!
[课程]FART 脱壳王!加量不加价!FART作者讲授!