首页
社区
课程
招聘
[求助]脱壳问题
发表于: 2007-7-10 09:50 4944

[求助]脱壳问题

2007-7-10 09:50
4944
通过学习看雪论坛的脱壳教程,学着脱壳,在脱壳后经过IAT修复,运行时发"应用程序正常化
(0Xc0000005)失败.请单击"确定",终止应用程序."错误,请教各位老大,这是由于什么原因引起的?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 47147
活跃值: (20465)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
2
可能是输入表没修复正确,你按步骤重新操作一遍。
如问题依旧,你将自己的操作步骤列出,我们看看。
2007-7-10 09:59
0
雪    币: 44
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
fyd
3
现将脱壳经IAT修复后程序在ollydbg中的调试情况如下,请大侠们诊断:
00524AEA >/$  55            PUSH EBP
00524AEB  |.  8BEC          MOV EBP,ESP
00524AED  |.  6A FF         PUSH -1
00524AEF  |.  68 F0DB5700   PUSH 2_.0057DBF0
00524AF4  |.  68 DC9F5200   PUSH 2_.00529FDC                         ;  SE 处理程序安装
00524AF9  |.  64:A1 0000000>MOV EAX,DWORD PTR FS:[0]
00524AFF  |.  50            PUSH EAX
00524B00  |.  64:8925 00000>MOV DWORD PTR FS:[0],ESP
00524B07  |.  83EC 58       SUB ESP,58
00524B0A  |.  53            PUSH EBX
00524B0B  |.  56            PUSH ESI
00524B0C  |.  57            PUSH EDI
00524B0D  |.  8965 E8       MOV DWORD PTR SS:[EBP-18],ESP
00524B10  |.  FF15 9CA35600 CALL DWORD PTR DS:[56A39C]               ;  kernel32.GetVersion
00524B16  |.  33D2          XOR EDX,EDX
00524B18  |.  8AD4          MOV DL,AH
00524B1A  |.  8915 24B45A00 MOV DWORD PTR DS:[5AB424],EDX
00524B20  |.  8BC8          MOV ECX,EAX
00524B22  |.  81E1 FF000000 AND ECX,0FF
00524B28  |.  890D 20B45A00 MOV DWORD PTR DS:[5AB420],ECX
00524B2E  |.  C1E1 08       SHL ECX,8
00524B31  |.  03CA          ADD ECX,EDX
00524B33  |.  890D 1CB45A00 MOV DWORD PTR DS:[5AB41C],ECX
00524B39  |.  C1E8 10       SHR EAX,10
00524B3C  |.  A3 18B45A00   MOV DWORD PTR DS:[5AB418],EAX
00524B41  |.  6A 01         PUSH 1
00524B43  |.  E8 656D0000   CALL 2_.0052B8AD
00524B48  |.  59            POP ECX
00524B49  |.  85C0          TEST EAX,EAX
00524B4B  |.  75 08         JNZ SHORT 2_.00524B55
00524B4D  |.  6A 1C         PUSH 1C
00524B4F  |.  E8 C3000000   CALL 2_.00524C17
00524B54  |.  59            POP ECX
00524B55  |>  E8 723B0000   CALL 2_.005286CC
00524B5A  |.  85C0          TEST EAX,EAX
00524B5C  |.  75 08         JNZ SHORT 2_.00524B66
00524B5E  |.  6A 10         PUSH 10
00524B60  |.  E8 B2000000   CALL 2_.00524C17
00524B65  |.  59            POP ECX
00524B66  |>  33F6          XOR ESI,ESI
00524B68  |.  8975 FC       MOV DWORD PTR SS:[EBP-4],ESI
00524B6B  |.  E8 83510000   CALL 2_.00529CF3
00524B70  |.  FF15 CCA25600 CALL DWORD PTR DS:[56A2CC]               ; [GetCommandLineA
00524B76  |.  A3 28BB5A00   MOV DWORD PTR DS:[5ABB28],EAX
00524B7B  |.  E8 06880000   CALL 2_.0052D386
00524B80  |.  A3 58B45A00   MOV DWORD PTR DS:[5AB458],EAX
00524B85  |.  E8 AF850000   CALL 2_.0052D139
00524B8A  |.  E8 F1840000   CALL 2_.0052D080
00524B8F  |.  E8 D7FBFFFF   CALL 2_.0052476B         ;F7进入。
00524B94  |.  8975 D0       MOV DWORD PTR SS:[EBP-30],ESI
00524B97  |.  8D45 A4       LEA EAX,DWORD PTR SS:[EBP-5C]
00524B9A  |.  50            PUSH EAX                                 ; /pStartupinfo

0052476B  /$  A1 E0525A00   MOV EAX,DWORD PTR DS:[5A52E0]   ;来到这里
00524770  |.  85C0          TEST EAX,EAX
00524772  |.  74 02         JE SHORT 2_.00524776
00524774  |.  FFD0          CALL EAX                        ;F7进入
00524776  |>  68 C0805900   PUSH 2_.005980C0
0052477B  |.  68 AC805900   PUSH 2_.005980AC
00524780  |.  E8 EC000000   CALL 2_.00524871
00524785  |.  68 A8805900   PUSH 2_.005980A8
0052478A  |.  68 00805900   PUSH 2_.00598000
0052478F  |.  E8 DD000000   CALL 2_.00524871
00524794  |.  83C4 10       ADD ESP,10
00524797  \.  C3            RETN

00521EB8   .  E8 13000000   CALL 2_.00521ED0        ;来到这,F7进入
00521EBD   .  E8 EF530000   CALL 2_.005272B1        ;再次来到着,F7进入
00521EC2   .  A3 F0B35A00   MOV DWORD PTR DS:[5AB3F0],EAX
00521EC7   .  E8 95530000   CALL 2_.00527261
00521ECC   .  DBE2          FCLEX
00521ECE   .  C3            RETN
00521ECF   .  C3            RETN
00521ED0  /$  B8 8A765200   MOV EAX,2_.0052768A                  ;来到这
00521ED5  |.  C705 08595A00>MOV DWORD PTR DS:[5A5908],2_.00527334
00521EDF  |.  A3 04595A00   MOV DWORD PTR DS:[5A5904],EAX
00521EE4  |.  C705 0C595A00>MOV DWORD PTR DS:[5A590C],2_.0052739A
00521EEE  |.  C705 10595A00>MOV DWORD PTR DS:[5A5910],2_.005272DA
00521EF8  |.  C705 14595A00>MOV DWORD PTR DS:[5A5914],2_.00527382
00521F02  |.  A3 18595A00   MOV DWORD PTR DS:[5A5918],EAX
00521F07  \.  C3            RETN                               ;返回

005272B1  |$  68 188F5700   PUSH 2_.00578F18             ; /pModule = "KERNEL32",来到这
005272B6  |.  FF15 ACA35600 CALL DWORD PTR DS:[56A3AC]   ; \GetModuleHandleA,F7进入
005272BC  |.  85C0          TEST EAX,EAX                 ;继续F7
005272BE  |.  74 15         JE SHORT 2_.005272D5
005272C0  |.  68 C8DD5700   PUSH 2_.0057DDC8             ;  ASCII "IsProcessorFeaturePresent"
005272C5  |.  50            PUSH EAX
005272C6  |.  FF15 B0A35600 CALL DWORD PTR DS:[56A3B0]   ;  kernel32.7C915FEC,F7进入
005272CC  |.  85C0          TEST EAX,EAX
005272CE  |.  74 05         JE SHORT 2_.005272D5
005272D0  |.  6A 00         PUSH 0
005272D2  |.  FFD0          CALL EAX
005272D4  |.  C3            RETN

7C80B6A1 >  8BFF            MOV EDI,EDI                 ; ntdll.7C93094E,来到这
7C80B6A3    55              PUSH EBP
7C80B6A4    8BEC            MOV EBP,ESP
7C80B6A6    837D 08 00      CMP DWORD PTR SS:[EBP+8],0
7C80B6AA    74 18           JE SHORT kernel32.7C80B6C4
7C80B6AC    FF75 08         PUSH DWORD PTR SS:[EBP+8]
7C80B6AF    E8 C0290000     CALL kernel32.7C80E074
7C80B6B4    85C0            TEST EAX,EAX
7C80B6B6    74 08           JE SHORT kernel32.7C80B6C0
7C80B6B8    FF70 04         PUSH DWORD PTR DS:[EAX+4]
7C80B6BB    E8 7D2D0000     CALL kernel32.GetModuleHandleW
7C80B6C0    5D              POP EBP
7C80B6C1    C2 0400         RETN 4                        ;返回

7C915FD2    6F              OUTS DX,DWORD PTR ES:[EDI]               ; I/O 命令
7C915FD3    006400 75       ADD BYTE PTR DS:[EAX+EAX+75],AH
7C915FD7    0063 00         ADD BYTE PTR DS:[EBX],AH
7C915FDA    74 00           JE SHORT kernel32.7C915FDC
7C915FDC    56              PUSH ESI
7C915FDD    0065 00         ADD BYTE PTR SS:[EBP],AH
7C915FE0    72 00           JB SHORT kernel32.7C915FE2
7C915FE2    73 00           JNB SHORT kernel32.7C915FE4
7C915FE4    6900 6F006E00   IMUL EAX,DWORD PTR DS:[EAX],6E006F
7C915FEA    0000            ADD BYTE PTR DS:[EAX],AL
7C915FE   35 002E0031     XOR EAX,31002E00                   ;来到此,F7
7C915FF1    002E            ADD BYTE PTR DS:[ESI],CH         ;F7,出错:“调试的程序无法处理例外”,不能继续下去
7C915FF3    0032            ADD BYTE PTR DS:[EDX],DH
7C915FF5    0036            ADD BYTE PTR DS:[ESI],DH
7C915FF7    0030            ADD BYTE PTR DS:[EAX],DH
7C915FF9    0030            ADD BYTE PTR DS:[EAX],DH
7C915FFB    002E            ADD BYTE PTR DS:[ESI],CH
7C915FFD    0033            ADD BYTE PTR DS:[EBX],DH
7C915FFF    0031            ADD BYTE PTR DS:[ECX],DH
7C916001    0031            ADD BYTE PTR DS:[ECX],DH
7C916003    0039            ADD BYTE PTR DS:[ECX],BH
7C916005    0000            ADD BYTE PTR DS:[EAX],AL
7C916007    004400 00       ADD BYTE PTR DS:[EAX+EAX],AL
7C91600B    0001            ADD BYTE PTR DS:[ECX],AL
7C91600D    0056 00         ADD BYTE PTR DS:[ESI],DL
7C916010    61              POPAD
7C916011    0072 00         ADD BYTE PTR DS:[EDX],DH
7C916014    46              INC ESI
7C916015    0069 00         ADD BYTE PTR DS:[ECX],CH
7C916018    6C              INS BYTE PTR ES:[EDI],DX                 ; I/O 命令
7C916019    0065 00         ADD BYTE PTR SS:[EBP],AH
7C91601C    49              DEC ECX
7C91601D    006E 00         ADD BYTE PTR DS:[ESI],CH
7C916020    66:006F 00      ADD BYTE PTR DS:[EDI],CH
7C916024    0000            ADD BYTE PTR DS:[EAX],AL
7C916026    0000            ADD BYTE PTR DS:[EAX],AL
7C916028    24 00           AND AL,0
7C91602A    04 00           ADD AL,0
7C91602C    0000            ADD BYTE PTR DS:[EAX],AL
7C91602E    54              PUSH ESP
7C91602F    0072 00         ADD BYTE PTR DS:[EDX],DH
7C916032    61              POPAD
7C916033    006E 00         ADD BYTE PTR DS:[ESI],CH
7C916036    73 00           JNB SHORT kernel32.7C916038
7C916038    6C              INS BYTE PTR ES:[EDI],DX                 ; I/O 命令
7C916039    0061 00         ADD BYTE PTR DS:[ECX],AH
7C91603C    74 00           JE SHORT kernel32.7C91603E
7C91603E    6900 6F006E00   IMUL EAX,DWORD PTR DS:[EAX],6E006F
2007-7-10 14:16
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我也遇到同样的问题了,哪位大虾能告诉我,怎么弄啊?
2007-7-11 10:00
0
雪    币: 295
活跃值: (346)
能力值: ( LV9,RANK:530 )
在线值:
发帖
回帖
粉丝
5
7C915FD2-7C91603E 全是Data, 不是Code;

问题的原因是[56A3B0] 中的7C915FEC 不对,

应该是IAT没修复正确.

用未脱壳的程序, 在 005272C6 下硬件断点, 看[56A3B0]中是什么

005272C6  |.  FF15 B0A35600 CALL DWORD PTR DS:[56A3B0]   ;  kernel32.7C915FEC
2007-7-12 01:32
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
路过学习了!呵呵
2007-7-12 01:43
0
游客
登录 | 注册 方可回帖
返回
//