原程序用PEID 0.94查壳后是Armadillo 1.xx - 2.xx -> Silicon Realms Toolworks,用dilloDIE 1.6脱壳出现应用程序错误,提示“0x00403213"引用“0x015e1000"内存,该内存不能为"read"。。
没办法,只好用手工脱壳
双进程转为单进程,然后NN步找到了OEP。。
0040283C > /EB 10 JMP SHORT dumped_.0040284E 《----OEP
0040283E |66:623A BOUND DI,DWORD PTR DS:[EDX]
00402841 |43 INC EBX
00402842 |2B2B SUB EBP,DWORD PTR DS:[EBX]
00402844 |48 DEC EAX
00402845 |4F DEC EDI
00402846 |4F DEC EDI
00402847 |4B DEC EBX
00402848 |90 NOP
00402849 -|E9 98204300 JMP dumped_.008348E6
0040284E \A1 8B204300 MOV EAX,DWORD PTR DS:[43208B]
00402853 C1E0 02 SHL EAX,2
00402856 A3 8F204300 MOV DWORD PTR DS:[43208F],EAX
0040285B 52 PUSH EDX
0040285C 6A 00 PUSH 0
0040285E E8 13F50200 CALL <JMP.&kernel32.GetModuleHandleA>
00402863 8BD0 MOV EDX,EAX
用LORDPE DUMP FULL完整程序,然后用ImportREC修复,填入OEP=283C,“IAT自动搜索”,
然后“获得输入信息”,没有发现无效函数。点击修复,保存为dumped_.exe,程序运行出错。
错误信息:dumped_.exe应用程序错误,提示“0x0042d9b2"指令引用“0x40062034"内存,该内存不能为"written",然后让我点确定或者取消。。。
----------------------------------------
我用F7 F8跟踪到了这里出的问题。。不在原程序的领空里。。我就抓瞎了~
7C92EAF0 8B1C24 MOV EBX,DWORD PTR SS:[ESP]
7C92EAF3 51 PUSH ECX
7C92EAF4 53 PUSH EBX
7C92EAF5 E8 C78C0200 CALL ntdll.7C9577C1 〈---F8到达这里后出现问题了
7C92EAFA 0AC0 OR AL,AL
7C92EAFC 74 0C JE SHORT ntdll.7C92EB0A
7C92EAFE 5B POP EBX
7C92EAFF 59 POP ECX
我用笨办法F7一直跟到了这里
7C86346F 51 PUSH ECX
7C863470 50 PUSH EAX
7C863471 8D85 78FAFFFF LEA EAX,DWORD PTR SS:[EBP-588]
7C863477 50 PUSH EAX
7C863478 6A 00 PUSH 0
7C86347A 6A 04 PUSH 4
7C86347C 68 440100D0 PUSH D0000144
7C863481 FF15 7812807C CALL DWORD PTR DS:[<&ntdll.NtRaiseHardError>] --到这里就进行不下去了,好像是死循环。。
7C863487 EB 12 JMP SHORT kernel32.7C86349B
7C863489 33C0 XOR EAX,EAX
7C86348B F6DB NEG BL
7C86348D 1BDB SBB EBX,EBX
7C86348F 83E3 FD AND EBX,FFFFFFFD
7C863492 83C3 06 ADD EBX,6
7C863495 899D B0FAFFFF MOV DWORD PTR SS:[EBP-550],EBX
7C86349B 85C0 TEST EAX,EAX
7C86349D 0F8C EE020000 JL kernel32.7C863791
7C8634A3 83BD B0FAFFFF 0>CMP DWORD PTR SS:[EBP-550],3
7C8634AA 0F85 E1020000 JNZ kernel32.7C863791
7C8634B0 803D 0C64887C 0>CMP BYTE PTR DS:[7C88640C],0
7C8634B7 0F85 DD020000 JNZ kernel32.7C86379A
7C8634BD 803D 0840887C 0>CMP BYTE PTR DS:[7C884008],0
7C8634C4 0F85 C0020000 JNZ kernel32.7C86378A
7C8634CA 33FF XOR EDI,EDI
7C8634CC 89BD 6CFAFFFF MOV DWORD PTR SS:[EBP-594],EDI
菜鸟寻求帮助啊。。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课