能力值:
( LV13,RANK:388 )
|
-
-
2 楼
这什么壳 memcpy 了ntdll 和 kernel32的text段 然后call copy过来的text段里的native api 加debug标志创建自身第二个进程 貌似还有调试循环 搞不定
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
Thanks bitt How to bypass Anti Debug?
|
能力值:
( LV15,RANK:520 )
|
-
-
4 楼
这里是反调试部分,进程比较,修改OD进程名字就可以了,下面这几个函数会调用2次!
0044ED38 8BFF MOV EDI,EDI
0044ED3A 55 PUSH EBP
0044ED3B 8BEC MOV EBP,ESP
0044ED3D 81EC C00E0000 SUB ESP,0EC0
0044ED43 A1 587A4500 MOV EAX,DWORD PTR DS:[457A58]
0044ED48 33C5 XOR EAX,EBP
0044ED4A 8945 F8 MOV DWORD PTR SS:[EBP-8],EAX
0044ED4D 56 PUSH ESI
0044ED4E 57 PUSH EDI
0044ED4F 83A5 84F7FFFF 0>AND DWORD PTR SS:[EBP-87C],0
0044ED56 6A 00 PUSH 0
0044ED58 6A 02 PUSH 2
0044ED5A FF15 102E4500 CALL DWORD PTR DS:[<&KERNEL32.CreateToolhelp32Snapshot>] ; kernel32.CreateToolhelp32Snapshot
0044ED60 8945 FC MOV DWORD PTR SS:[EBP-4],EAX
0044ED63 C785 C8FDFFFF 2>MOV DWORD PTR SS:[EBP-238],22C
0044ED6D 8D85 C8FDFFFF LEA EAX,DWORD PTR SS:[EBP-238]
0044ED73 50 PUSH EAX
0044ED74 FF75 FC PUSH DWORD PTR SS:[EBP-4]
0044ED77 FF15 002E4500 CALL DWORD PTR DS:[<&KERNEL32.Process32FirstW>] ; kernel32.Process32FirstW
0044ED7D 8985 80F7FFFF MOV DWORD PTR SS:[EBP-880],EAX
0044ED83 8B85 D0FDFFFF MOV EAX,DWORD PTR SS:[EBP-230]
0044ED89 3B45 0C CMP EAX,DWORD PTR SS:[EBP+C]
0044ED8C 75 11 JNZ SHORT UnpackMe.0044ED9F
0044ED8E 6A 32 PUSH 32
0044ED90 59 POP ECX
0044ED91 8DB5 ECFDFFFF LEA ESI,DWORD PTR SS:[EBP-214]
0044ED97 8DBD 40F1FFFF LEA EDI,DWORD PTR SS:[EBP-EC0]
0044ED9D F3:A5 REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI]
0044ED9F 8B85 D0FDFFFF MOV EAX,DWORD PTR SS:[EBP-230]
0044EDA5 3B45 08 CMP EAX,DWORD PTR SS:[EBP+8]
0044EDA8 75 11 JNZ SHORT UnpackMe.0044EDBB
0044EDAA 6A 32 PUSH 32
0044EDAC 59 POP ECX
0044EDAD 8DB5 ECFDFFFF LEA ESI,DWORD PTR SS:[EBP-214]
0044EDB3 8DBD 88F7FFFF LEA EDI,DWORD PTR SS:[EBP-878]
0044EDB9 F3:A5 REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI]
0044EDBB 8D85 C8FDFFFF LEA EAX,DWORD PTR SS:[EBP-238]
0044EDC1 50 PUSH EAX
0044EDC2 FF75 FC PUSH DWORD PTR SS:[EBP-4]
0044EDC5 FF15 182E4500 CALL DWORD PTR DS:[<&KERNEL32.Process32NextW>] ; kernel32.Process32NextW
0044EDCB 85C0 TEST EAX,EAX
0044EDCD ^ 75 B4 JNZ SHORT UnpackMe.0044ED83
0044EDCF 90 NOP
0044EDD0 8D85 88F7FFFF LEA EAX,DWORD PTR SS:[EBP-878]
0044EDD6 50 PUSH EAX
0044EDD7 8D85 40F1FFFF LEA EAX,DWORD PTR SS:[EBP-EC0]
0044EDDD 50 PUSH EAX
0044EDDE E8 23000000 CALL UnpackMe.0044EE06 //比较进程名字
0044EDE3 59 POP ECX
0044EDE4 59 POP ECX
0044EDE5 0FB6C0 MOVZX EAX,AL
0044EDE8 8985 84F7FFFF MOV DWORD PTR SS:[EBP-87C],EAX
0044EDEE 83BD 84F7FFFF 0>CMP DWORD PTR SS:[EBP-87C],0
0044EDF5 0F95C0 SETNE AL
一样返回1,不一样返回0
|
能力值:
( LV15,RANK:520 )
|
-
-
5 楼
代码太长了,搞不定
|