popca的宝石迷阵新版
http://www.popcap.com/installer_download.php?url=Bejeweled2Setup.exe&tag=1&src=big8
主程序加的什么壳?部分代码如下:
008CD516 CMP DWORD PTR [EBP-1C],81
008CD51D JMP SHORT WinBej2.008CD521
...
008CD5B8 CMP DWORD PTR [EBP-1C],81
008CD5BF JMP SHORT WinBej2.008CD5C3
...
008CD66E CMP DWORD PTR [EBP-1C],81
008CD675 JMP SHORT WinBej2.008CD679
...
008CD744 CMP DWORD PTR [EBP-1C],0
008CD74B JMP SHORT WinBej2.008CD750
...
008CD919 CMP DWORD PTR [EBP-1C],81
008CD920 JMP SHORT WinBej2.008CD924
...
008CD96B TEST EAX,EAX ;eax为0终止循环
008CD96D JMP SHORT WinBej2.008CD971
...
008CD9F2 CMP WORD PTR [EDI],5A4D
008CD9F7 ^ JNZ SHORT WinBej2.008CD9E7
...
008CDA11 CMP WORD PTR [EAX],4550
008CDA16 ^ JNZ SHORT WinBej2.008CD9E7
008CDA18 JMP SHORT WinBej2.008CDA1C ;下断点跳过上面的循环,类似的还有不少
...
...
008CE506 JMP SHORT WinBej2.008CE50A
008CE508 LEA ESI,[EDX]
008CE50A INT 3 ;检测调试器
008CE50C JMP SHORT WinBej2.008CE510 ;在这里下断点,返回值改成0
...
008CE578 ^ JNZ SHORT WinBej2.008CE555
008CE57A CMP DWORD PTR [EBX+4],WinBej2.00636578
008CE581 ^ JNZ SHORT WinBej2.008CE555
008CE583 JMP SHORT WinBej2.008CE588 ;下断点跳出循环
...
008CE5CE PUSH EAX ; KERNEL32.WinExec
008CE5CF CALL WinBej2.008CD07F
跟进008CD07F
008CD0CA CMP AX,0EC8B
008CD0CE JE WinBej2.008CD211
008CD0D4 CMP AX,0D22B
008CD0D8 JE WinBej2.008CD3BA
008CD0DE CMP AX,75FF
008CD0E2 JMP SHORT WinBej2.008CD0E5
...
008CD18A ADD CL,AH
008CD18C PREFIX REP:
008CD18D - JMP EAX ; WinBej2.008E5288
...
008E5288 PUSH EBP
008E5289 MOV EBP,ESP
008E528B - JMP KERNEL32.77E74042
偶就能跟踪到这里了,跟进77E74042发现里面调用
77E7209A PUSH EAX
77E7209B PUSH ESI
77E7209C PUSH KERNEL32.77E72900 ; UNICODE "Debugger"
77E720A1 LEA EAX,[EBP-5BC]
77E720A7 PUSH EAX
77E720A8 CALL <JMP.&NTDLL.LdrQueryImageFileExecutionOptions>
...
然后到这里就提示发现调试器了:
77E724CE PUSH EAX
77E724CF CALL [<&NTDLL.CsrClientCallServer>]
77E724D5 CMP [EBP-2B0],EBX
77E724DB JL KERNEL32.77E965C3
77E724E1 TEST BYTE PTR [EBP+20],4
77E724E5 JNZ SHORT KERNEL32.77E724FA
77E724E7 LEA EAX,[EBP-164]
77E724ED PUSH EAX
77E724EE PUSH DWORD PTR [EBP-130]
77E724F4 CALL [<&NTDLL.NtResumeThread>];运行过这个就提示发现调试器
在任务管理器能看见有两个WinBej2.exe,但是偶不会用ollydbg跟进另一个进程,也没办法附加.
请问这个是什么壳?应该怎么办?
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!