用FileInfo ,或PEID查壳都查不出来,只能手动脱壳。
OD 打开
00FE1000 > E8 AA000000 call 质量验收.00FE10AF // 上来就是一个Call ; 先F9运行
00FE1005 2D 10BE0000 sub eax,0BE10
00FE100A 0000 add byte ptr ds:[eax],al
00FE100C 0000 add byte ptr ds:[eax],al
00FE100E 0000 add byte ptr ds:[eax],al
00FE1010 003D 10BE002D add byte ptr ds:[2D00BE10],bh
00FE1016 10BE 00000000 adc byte ptr ds:[esi],bh
00FE101C 0000 add byte ptr ds:[eax],al
00FE101E 0000 add byte ptr ds:[eax],al
00FE1020 0000 add byte ptr ds:[eax],al
00FE1022 0000 add byte ptr ds:[eax],al
00FE1024 0000 add byte ptr ds:[eax],al
00FE1026 0000 add byte ptr ds:[eax],al
00FE1028 0000 add byte ptr ds:[eax],al
00FE102A 0000 add byte ptr ds:[eax],al
00FE102C 00A9 E6E67706 add byte ptr ds:[ecx+677E6E6],ch
00FE1032 AB stos dword ptr es:[edi]
00FE1033 E6 77 out 77,al
0034002C F7F1 div ecx // 此处发生异常 ,按shift + f9 过
0034002E E9 E8160000 jmp 0034171B
00340033 008B 5C240C8B add byte ptr ds:[ebx+8B0C245C],cl
00340039 A3 C4000000 mov dword ptr ds:[C4],eax
0034003E 64:8F05 0000000>pop dword ptr fs:[0]
00340045 83C4 04 add esp,4
00340048 EB 14 jmp short 0034005E
0034004A 64:FF35 0000000>push dword ptr fs:[0]
00340051 64:8925 0000000>mov dword ptr fs:[0],esp
00340058 33C9 xor ecx,ecx
0034005A 99 cdq
0034005B F7F1 div ecx // 此处发生异常 ,按shift + f9 过 ,一连这样的异常很到,一直到最后一个异常。
0034005D E9 E8160000 jmp 0034174A
00340062 008B 5C240C8B add byte ptr ds:[ebx+8B0C245C],cl
00340068 A3 C4000000 mov dword ptr ds:[C4],eax
0034006D 64:8F05 0000000>pop dword ptr fs:[0]
00340074 83C4 04 add esp,4
00340077 EB 14 jmp short 0034008D
00340079 64:FF35 0000000>push dword ptr fs:[0]
00340080 64:8925 0000000>mov dword ptr fs:[0],esp
00340087 33C9 xor ecx,ecx
00340089 99 cdq
00342D63 F7F1 div ecx // 最后一个异常 , 00342D3C SE 句柄 , 在00342D3C断
00342D65 E9 B9040000 jmp 00343223
00342D6A 00E8 add al,ch
00342D6C 1F pop ds
00342D6D 0000 add byte ptr ds:[eax],al
00342D6F 00EB add bl,ch
00342D71 FA cli
00342D72 E8 16000000 call 00342D8D
00342D77 - E9 EBF80000 jmp 00352667
00342D7C 58 pop eax
00342D7D EB 09 jmp short 00342D88
00342D3C 8B5C24 0C mov ebx,dword ptr ss:[esp+C] // 断在这,一步步向下追
00342D40 8BA3 C4000000 mov esp,dword ptr ds:[ebx+C4]
00342D46 64:8F05 0000000>pop dword ptr fs:[0]
00342D4D 83C4 04 add esp,4
00342D50 EB 14 jmp short 00342D66 // 跳
00342D66 B9 04000000 mov ecx,4
00342D6B E8 1F000000 call 00342D8F // F8程序就运行 , 可能F7
00342D70 ^\EB FA jmp short 00342D6C
00342D72 E8 16000000 call 00342D8D
00342D77 - E9 EBF80000 jmp 00352667
00342D7C 58 pop eax
00342D7D EB 09 jmp short 00342D88
00342D7F 0F25 ??? ; 未知命令
00342D81 E8 F2FFFFFF call 00342D78
00342D86 0FB9 ??? ; 未知命令
00342D88 49 dec ecx
00342D89 ^ 75 F1 jnz short 00342D7C
00342D8B EB 05 jmp short 00342D92
00342D8D ^ EB F9 jmp short 00342D88
00342D8F ^ EB F0 jmp short 00342D81
00342D92 E8 00000000 call 00342D97 // 从上面跳来,跳去终于跳到这//f7
00342D97 5A pop edx ; 00342D97
00342D98 83EA 05 sub edx,5
00342D9B 5D pop ebp
00342D9C B9 03000000 mov ecx,3
00342DA1 8D75 2D lea esi,dword ptr ss:[ebp+2D]
00342DA4 8DBA A4020000 lea edi,dword ptr ds:[edx+2A4]
00342DAA 8B06 mov eax,dword ptr ds:[esi]
00342DAC 8907 mov dword ptr ds:[edi],eax
00342DAE 83C6 04 add esi,4
00342DB1 83C7 04 add edi,4
00342DB4 ^ E2 F4 loopd short 00342DAA
00342DB6 8D85 F7000000 lea eax,dword ptr ss:[ebp+F7] // f4到这
00342DBC 8982 CC020000 mov dword ptr ds:[edx+2CC],eax
00342DC2 8B85 93000000 mov eax,dword ptr ss:[ebp+93]
00342DC8 8982 B0020000 mov dword ptr ds:[edx+2B0],eax
00342DCE 8BEA mov ebp,edx
00342DD0 6A 00 push 0
00342DD2 FF95 A8020000 call dword ptr ss:[ebp+2A8] ; KERNEL32.GetModuleHandleA
00342DD8 8985 B4020000 mov dword ptr ss:[ebp+2B4],eax
00342DDE 8DB5 D0020000 lea esi,dword ptr ss:[ebp+2D0]
00342DE4 56 push esi
00342DE5 FF95 A8020000 call dword ptr ss:[ebp+2A8] ; KERNEL32.GetModuleHandleA
00342DEB 0BC0 or eax,eax
00342DED 75 07 jnz short 00342DF6 // 跳
00342DEF |56 push esi
00342DF0 |FF95 AC020000 call dword ptr ss:[ebp+2AC]
00342DF6 \8BF0 mov esi,eax
00342DF8 8D9D DD020000 lea ebx,dword ptr ss:[ebp+2DD]
00342DFE 53 push ebx
00342DFF 56 push esi
00342E00 FF95 A4020000 call dword ptr ss:[ebp+2A4] ; KERNEL32.GetProcAddress
00342E06 8985 E9020000 mov dword ptr ss:[ebp+2E9],eax
00342E0C BB ED020000 mov ebx,2ED
00342E11 833C2B 00 cmp dword ptr ds:[ebx+ebp],0
00342E15 74 47 je short 00342E5E// 没有实现跳转
00342E17 53 push ebx
00342E18 6A 04 push 4
00342E1A 68 00100000 push 1000
00342E1F FF342B push dword ptr ds:[ebx+ebp]
00342E22 6A 00 push 0
00342E24 FF95 B0020000 call dword ptr ss:[ebp+2B0] ; KERNEL32.VirtualAlloc
00342E2A 5B pop ebx
00342E2B 8BF0 mov esi,eax
00342E2D 8BC3 mov eax,ebx
00342E2F 03C5 add eax,ebp
00342E31 8B78 04 mov edi,dword ptr ds:[eax+4]
00342E34 03BD B4020000 add edi,dword ptr ss:[ebp+2B4]
00342E3A 56 push esi
00342E3B 57 push edi
00342E3C FF95 CC020000 call dword ptr ss:[ebp+2CC]
00342E42 8B0C2B mov ecx,dword ptr ds:[ebx+ebp]
00342E45 56 push esi
00342E46 F3:A4 rep movs byte ptr es:[edi],byte ptr ds:[es>
00342E48 5E pop esi
00342E49 53 push ebx
00342E4A 68 00800000 push 8000
00342E4F 6A 00 push 0
00342E51 56 push esi
00342E52 FF95 E9020000 call dword ptr ss:[ebp+2E9] ; KERNEL32.VirtualFree
00342E58 5B pop ebx
00342E59 83C3 0C add ebx,0C
00342E5C ^ EB B3 jmp short 00342E11
00342E5E 8B85 B8020000 mov eax,dword ptr ss:[ebp+2B8] // f4 到这
00342E64 0BC0 or eax,eax
00342E66 0F85 81000000 jnz 00342EED// 跳转
00342E6C 8BBD C0020000 mov edi,dword ptr ss:[ebp+2C0]
00342E72 03BD B4020000 add edi,dword ptr ss:[ebp+2B4]
00342EED 8B95 C0020000 mov edx,dword ptr ss:[ebp+2C0] // 跳到这
00342EF3 03D5 add edx,ebp
00342EF5 8B3A mov edi,dword ptr ds:[edx]
00342EF7 0BFF or edi,edi
00342EF9 75 02 jnz short 00342EFD
00342EFB EB 65 jmp short 00342F62
00342EFD 03BD B4020000 add edi,dword ptr ss:[ebp+2B4]
00342F03 83C2 05 add edx,5
00342F06 8BF2 mov esi,edx
00342F08 56 push esi
00342F09 FF95 A8020000 call dword ptr ss:[ebp+2A8] ; KERNEL32.GetModuleHandleA
00342F0F 0BC0 or eax,eax
00342F11 75 07 jnz short 00342F1A // 跳
00342F13 56 push esi
00342F14 FF95 AC020000 call dword ptr ss:[ebp+2AC]
00342F1A 0FB64E FF movzx ecx,byte ptr ds:[esi-1]// 跳到这
00342F1E 03F1 add esi,ecx
00342F20 8BD6 mov edx,esi
00342F22 8BF0 mov esi,eax
00342F24 42 inc edx
00342F25 8B0A mov ecx,dword ptr ds:[edx]
00342F27 83C2 04 add edx,4
00342F2A 51 push ecx
00342F2B 0FB602 movzx eax,byte ptr ds:[edx]
00342F2E 0BC0 or eax,eax
00342F30 /75 14 jnz short 00342F46 // 跳
00342F46 42 inc edx // 到这
00342F47 52 push edx
00342F48 52 push edx
00342F49 56 push esi
00342F4A FF95 A4020000 call dword ptr ss:[ebp+2A4] ; KERNEL32.GetProcAddress
00342F50 8907 mov dword ptr ds:[edi],eax
00342F52 5A pop edx
00342F53 0FB642 FF movzx eax,byte ptr ds:[edx-1]
00342F57 03D0 add edx,eax
00342F59 42 inc edx
00342F5A 83C7 04 add edi,4
00342F5D 59 pop ecx
00342F5E ^ E2 CA loopd short 00342F2A
00342F60 ^ EB 93 jmp short 00342EF5
00342F62 8B85 BC020000 mov eax,dword ptr ss:[ebp+2BC]// f4 到这
00342F68 83F8 01 cmp eax,1
00342F6B 75 27 jnz short 00342F94
00342F6D 8BBD C4020000 mov edi,dword ptr ss:[ebp+2C4]
00342F73 03FD add edi,ebp
00342F75 8DB5 4D020000 lea esi,dword ptr ss:[ebp+24D]
00342F7B 8B07 mov eax,dword ptr ds:[edi]
00342F7D 0BC0 or eax,eax
00342F7F 75 02 jnz short 00342F83 // 跳
00342F81 EB 11 jmp short 00342F94
00342F83 25 FFFFFF7F and eax,7FFFFFFF
00342F88 8BDE mov ebx,esi
00342F8A 2BD8 sub ebx,eax
00342F8C 8958 FC mov dword ptr ds:[eax-4],ebx
00342F8F 83C7 08 add edi,8
00342F92 ^ EB E7 jmp short 00342F7B
00342F94 64:FF35 3000000>push dword ptr fs:[30] // F4 到这
00342F9B 58 pop eax
00342F9C 85C0 test eax,eax
00342F9E 78 0F js short 00342FAF
00342FA0 8B40 0C mov eax,dword ptr ds:[eax+C]
00342FA3 8B40 0C mov eax,dword ptr ds:[eax+C]
00342FA6 C740 20 0010000>mov dword ptr ds:[eax+20],1000
00342FAD EB 1C jmp short 00342FCB // 跳
00342FCB 89AD 58020000 mov dword ptr ss:[ebp+258],ebp // 到这
00342FD1 8B85 C8020000 mov eax,dword ptr ss:[ebp+2C8]
00342FD7 0385 B4020000 add eax,dword ptr ss:[ebp+2B4]
00342FDD FFE0 jmp eax // 长跳转 eax = 0063caf0
00342FDF 50 push eax
00342FE0 8BC4 mov eax,esp
00342FE2 60 pushad
00342FE3 8BD8 mov ebx,eax
00342FE5 E8 04000000 call 00342FEE
0063CAF0 55 push ebp // 我判段是OEP , 不知道是不是脱壳
0063CAF1 8BEC mov ebp,esp
0063CAF3 83C4 F0 add esp,-10
0063CAF6 53 push ebx
0063CAF7 B8 C8C26300 mov eax,质量验收.0063C2C8
0063CAFC E8 3BA7DCFF call 质量验收.0040723C
0063CB01 68 10CC6300 push 质量验收.0063CC10
0063CB06 6A 00 push 0
0063CB08 6A 00 push 0
0063CB0A E8 55AADCFF call 质量验收.00407564
0063CB0F 8BD8 mov ebx,eax
0063CB11 E8 DEABDCFF call 质量验收.004076F4
0063CB16 3D B7000000 cmp eax,0B7
0063CB1B 0F84 B3000000 je 质量验收.0063CBD4
脱壳后不能运行 , 用Import REC 输入OEP 0023CAF0 , IAT自动搜索 提示没有发现有用信息。
怎么办???帮帮忙。小弟先谢了。
可能是什么壳??
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)