首页
社区
课程
招聘
[求助]Armadillo 3.78 - 4.xx脱壳最后部分和网上教程不一样
发表于: 2012-4-29 17:12 4498

[求助]Armadillo 3.78 - 4.xx脱壳最后部分和网上教程不一样

2012-4-29 17:12
4498
PEID查壳Armadillo 3.78 - 4.xx -> Silicon Realms Toolworks
ArmFP查壳为
Protected Armadillo
File Size 2076672
Load file
<-Find Protect
Protection system(Professional)
<Protection Options>
Debug-Blocker
Import Table Elimination
Strategic Code Splicing
Nanomites Processing
<Backup Key Options>
Variable Backup Keys
<Compression Options>
Better/Slower Compression
<Other Options>
<-Find Version
Version 6.24 03-12-2008
<- Elapsed Time 00h 00m 06s 438ms ->

前面步骤
BP OpenMutexA

00401000    60              pushad
00401001    9C              pushfd
00401002    68 5CFD1200     push    12FD5C                           ; ASCII "260::DACAD201C8"
00401007    33C0            xor     eax, eax
00401009    50              push    eax
0040100A    50              push    eax
0040100B    E8 BFD9407C     call    kernel32.CreateMutexA
00401010    9D              popfd
00401011    61              popad
00401012  - E9 94DA407C     jmp     kernel32.OpenMutexA
00401017    90              nop

60 9C 68 5C FD 12 00 33 C0 50 50 E8 BF D9 40 7C 9D 61 E9 94 DA 40 7C 90

he GetModuleHandleA+5

这都正常,但是这里ALT+F9返回代码和教程不一样了,返回内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
00E57561    8B55 F4         mov     edx, dword ptr [ebp-C]
00E57564    8B0D D4F1ED00   mov     ecx, dword ptr [EDF1D4]
00E5756A    890491          mov     dword ptr [ecx+edx*4], eax
00E5756D    8B55 F4         mov     edx, dword ptr [ebp-C]
00E57570    A1 D4F1ED00     mov     eax, dword ptr [EDF1D4]
00E57575    833C90 00       cmp     dword ptr [eax+edx*4], 0
00E57579    75 5C           jnz     short 00E575D7
00E5757B    8B4D F8         mov     ecx, dword ptr [ebp-8]
00E5757E    8B51 08         mov     edx, dword ptr [ecx+8]
00E57581    83E2 02         and     edx, 2
00E57584    74 38           je      short 00E575BE
00E57586    B8 07000000     mov     eax, 7
00E5758B    C1E0 02         shl     eax, 2
00E5758E    8B0D 7CCAED00   mov     ecx, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E57594    8B15 7CCAED00   mov     edx, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E5759A    8B35 7CCAED00   mov     esi, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E575A0    8B5E 24         mov     ebx, dword ptr [esi+24]
00E575A3    335A 6C         xor     ebx, dword ptr [edx+6C]
00E575A6    331C01          xor     ebx, dword ptr [ecx+eax]
00E575A9    83E3 10         and     ebx, 10
00E575AC    F7DB            neg     ebx
00E575AE    1BDB            sbb     ebx, ebx
00E575B0    F7DB            neg     ebx
00E575B2    0FB6C3          movzx   eax, bl
00E575B5    85C0            test    eax, eax
00E575B7    75 05           jnz     short 00E575BE
00E575B9  ^ E9 1BFFFFFF     jmp     00E574D9
00E575BE    8D8D C8FEFFFF   lea     ecx, dword ptr [ebp-138]
00E575C4    51              push    ecx
00E575C5    FF15 8830EC00   call    dword ptr [EC3088]               ; kernel32.LoadLibraryA
00E575CB    8B55 F4         mov     edx, dword ptr [ebp-C]
00E575CE    8B0D D4F1ED00   mov     ecx, dword ptr [EDF1D4]
00E575D4    890491          mov     dword ptr [ecx+edx*4], eax
00E575D7    8B55 F4         mov     edx, dword ptr [ebp-C]
00E575DA    A1 D4F1ED00     mov     eax, dword ptr [EDF1D4]
00E575DF    833C90 00       cmp     dword ptr [eax+edx*4], 0
[COLOR="Red"]00E575E3    75 05           jnz     short 00E575EA                   ; 我把这里NOP[/COLOR]
00E575E5  ^ E9 EFFEFFFF     jmp     00E574D9
00E575EA    C785 BCFEFFFF 0>mov     dword ptr [ebp-144], 0
00E575F4    C785 C0FEFFFF 0>mov     dword ptr [ebp-140], 0
00E575FE    8B4D F8         mov     ecx, dword ptr [ebp-8]
00E57601    8B51 04         mov     edx, dword ptr [ecx+4]
00E57604    8995 C4FEFFFF   mov     dword ptr [ebp-13C], edx
00E5760A    EB 0F           jmp     short 00E5761B
00E5760C    8B85 C4FEFFFF   mov     eax, dword ptr [ebp-13C]
00E57612    83C0 0C         add     eax, 0C
00E57615    8985 C4FEFFFF   mov     dword ptr [ebp-13C], eax
00E5761B    8B8D C4FEFFFF   mov     ecx, dword ptr [ebp-13C]
00E57621    8339 00         cmp     dword ptr [ecx], 0
00E57624    74 11           je      short 00E57637
00E57626    8B95 C0FEFFFF   mov     edx, dword ptr [ebp-140]
00E5762C    83C2 01         add     edx, 1
00E5762F    8995 C0FEFFFF   mov     dword ptr [ebp-140], edx
00E57635  ^ EB D5           jmp     short 00E5760C
00E57637    33C9            xor     ecx, ecx
00E57639    8B85 C0FEFFFF   mov     eax, dword ptr [ebp-140]
00E5763F    BA 04000000     mov     edx, 4
00E57644    F7E2            mul     edx
00E57646    0F90C1          seto    cl
00E57649    F7D9            neg     ecx
00E5764B    0BC8            or      ecx, eax
00E5764D    51              push    ecx
00E5764E    E8 65440400     call    00E9BAB8
00E57653    83C4 04         add     esp, 4
00E57656    8985 7CFDFFFF   mov     dword ptr [ebp-284], eax
00E5765C    8B45 F4         mov     eax, dword ptr [ebp-C]
00E5765F    8B0D CCF1ED00   mov     ecx, dword ptr [EDF1CC]
00E57665    8B95 7CFDFFFF   mov     edx, dword ptr [ebp-284]
00E5766B    891481          mov     dword ptr [ecx+eax*4], edx
00E5766E    33C9            xor     ecx, ecx
00E57670    8B85 C0FEFFFF   mov     eax, dword ptr [ebp-140]
00E57676    BA 04000000     mov     edx, 4
00E5767B    F7E2            mul     edx
00E5767D    0F90C1          seto    cl
00E57680    F7D9            neg     ecx
00E57682    0BC8            or      ecx, eax
00E57684    51              push    ecx
00E57685    E8 2E440400     call    00E9BAB8
00E5768A    83C4 04         add     esp, 4
00E5768D    8985 78FDFFFF   mov     dword ptr [ebp-288], eax
00E57693    8B45 F4         mov     eax, dword ptr [ebp-C]
00E57696    8B0D D0F1ED00   mov     ecx, dword ptr [EDF1D0]
00E5769C    8B95 78FDFFFF   mov     edx, dword ptr [ebp-288]
00E576A2    891481          mov     dword ptr [ecx+eax*4], edx
00E576A5    8B45 F8         mov     eax, dword ptr [ebp-8]
00E576A8    8B48 04         mov     ecx, dword ptr [eax+4]
00E576AB    898D C4FEFFFF   mov     dword ptr [ebp-13C], ecx
00E576B1    EB 1E           jmp     short 00E576D1
00E576B3    8B95 C4FEFFFF   mov     edx, dword ptr [ebp-13C]
00E576B9    83C2 0C         add     edx, 0C
00E576BC    8995 C4FEFFFF   mov     dword ptr [ebp-13C], edx
00E576C2    8B85 BCFEFFFF   mov     eax, dword ptr [ebp-144]
00E576C8    83C0 01         add     eax, 1
00E576CB    8985 BCFEFFFF   mov     dword ptr [ebp-144], eax
00E576D1    8B8D C4FEFFFF   mov     ecx, dword ptr [ebp-13C]
00E576D7    8339 00         cmp     dword ptr [ecx], 0
00E576DA    0F84 47010000   je      00E57827
00E576E0    68 00010000     push    100
00E576E5    8D95 B8FDFFFF   lea     edx, dword ptr [ebp-248]
00E576EB    52              push    edx
00E576EC    8B85 C4FEFFFF   mov     eax, dword ptr [ebp-13C]
00E576F2    8B08            mov     ecx, dword ptr [eax]
00E576F4    51              push    ecx
00E576F5    E8 76BAFBFF     call    00E13170
00E576FA    83C4 0C         add     esp, 0C
00E576FD    8B15 7CCAED00   mov     edx, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E57703    A1 7CCAED00     mov     eax, dword ptr [EDCA7C]
00E57708    8B4A 40         mov     ecx, dword ptr [edx+40]
00E5770B    3348 24         xor     ecx, dword ptr [eax+24]
00E5770E    8B15 7CCAED00   mov     edx, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E57714    334A 6C         xor     ecx, dword ptr [edx+6C]
00E57717    A1 7CCAED00     mov     eax, dword ptr [EDCA7C]
00E5771C    3348 58         xor     ecx, dword ptr [eax+58]
00E5771F    898D 6CFDFFFF   mov     dword ptr [ebp-294], ecx
00E57725    8D8D B8FDFFFF   lea     ecx, dword ptr [ebp-248]
00E5772B    51              push    ecx
00E5772C    8B55 F4         mov     edx, dword ptr [ebp-C]
00E5772F    A1 D4F1ED00     mov     eax, dword ptr [EDF1D4]
00E57734    8B0C90          mov     ecx, dword ptr [eax+edx*4]
00E57737    51              push    ecx
00E57738    FF15 2432EC00   call    dword ptr [EC3224]               ; kernel32.GetProcAddress
00E5773E    3385 6CFDFFFF   xor     eax, dword ptr [ebp-294]
00E57744    8B55 F4         mov     edx, dword ptr [ebp-C]
00E57747    8B0D CCF1ED00   mov     ecx, dword ptr [EDF1CC]
00E5774D    8B1491          mov     edx, dword ptr [ecx+edx*4]
00E57750    8B8D BCFEFFFF   mov     ecx, dword ptr [ebp-144]
00E57756    89048A          mov     dword ptr [edx+ecx*4], eax
00E57759    6A 01           push    1
00E5775B    8D95 B8FDFFFF   lea     edx, dword ptr [ebp-248]
00E57761    52              push    edx
00E57762    8B45 F4         mov     eax, dword ptr [ebp-C]
00E57765    8B0D D4F1ED00   mov     ecx, dword ptr [EDF1D4]
00E5776B    8B1481          mov     edx, dword ptr [ecx+eax*4]
00E5776E    52              push    edx
00E5776F    E8 3C0A0000     call    00E581B0
00E57774    83C4 0C         add     esp, 0C
00E57777    8B4D F4         mov     ecx, dword ptr [ebp-C]
00E5777A    8B15 D0F1ED00   mov     edx, dword ptr [EDF1D0]
00E57780    8B0C8A          mov     ecx, dword ptr [edx+ecx*4]
00E57783    8B95 BCFEFFFF   mov     edx, dword ptr [ebp-144]
00E57789    890491          mov     dword ptr [ecx+edx*4], eax
00E5778C    8B45 F4         mov     eax, dword ptr [ebp-C]
00E5778F    8B0D D0F1ED00   mov     ecx, dword ptr [EDF1D0]
00E57795    8B1481          mov     edx, dword ptr [ecx+eax*4]
00E57798    8B85 BCFEFFFF   mov     eax, dword ptr [ebp-144]
00E5779E    833C82 00       cmp     dword ptr [edx+eax*4], 0
00E577A2    75 32           jnz     short 00E577D6
00E577A4    6A 00           push    0
00E577A6    8D8D B8FDFFFF   lea     ecx, dword ptr [ebp-248]
00E577AC    51              push    ecx
00E577AD    8B55 F4         mov     edx, dword ptr [ebp-C]
00E577B0    A1 D4F1ED00     mov     eax, dword ptr [EDF1D4]
00E577B5    8B0C90          mov     ecx, dword ptr [eax+edx*4]
00E577B8    51              push    ecx
00E577B9    E8 F2090000     call    00E581B0
00E577BE    83C4 0C         add     esp, 0C
00E577C1    8B55 F4         mov     edx, dword ptr [ebp-C]
00E577C4    8B0D D0F1ED00   mov     ecx, dword ptr [EDF1D0]
00E577CA    8B1491          mov     edx, dword ptr [ecx+edx*4]
00E577CD    8B8D BCFEFFFF   mov     ecx, dword ptr [ebp-144]
00E577D3    89048A          mov     dword ptr [edx+ecx*4], eax
00E577D6    8B55 F4         mov     edx, dword ptr [ebp-C]
00E577D9    A1 D0F1ED00     mov     eax, dword ptr [EDF1D0]
00E577DE    8B0C90          mov     ecx, dword ptr [eax+edx*4]
00E577E1    8B15 7CCAED00   mov     edx, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E577E7    A1 7CCAED00     mov     eax, dword ptr [EDCA7C]
00E577EC    8B35 7CCAED00   mov     esi, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E577F2    8B3D 7CCAED00   mov     edi, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E577F8    8B7F 40         mov     edi, dword ptr [edi+40]
00E577FB    337E 24         xor     edi, dword ptr [esi+24]
00E577FE    3378 6C         xor     edi, dword ptr [eax+6C]
00E57801    337A 58         xor     edi, dword ptr [edx+58]
00E57804    8B95 BCFEFFFF   mov     edx, dword ptr [ebp-144]
00E5780A    333C91          xor     edi, dword ptr [ecx+edx*4]
00E5780D    8B45 F4         mov     eax, dword ptr [ebp-C]
00E57810    8B0D D0F1ED00   mov     ecx, dword ptr [EDF1D0]
00E57816    8B1481          mov     edx, dword ptr [ecx+eax*4]
00E57819    8B85 BCFEFFFF   mov     eax, dword ptr [ebp-144]
00E5781F    893C82          mov     dword ptr [edx+eax*4], edi
00E57822  ^ E9 8CFEFFFF     jmp     00E576B3
00E57827    8B0D 7CCAED00   mov     ecx, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E5782D    8B15 7CCAED00   mov     edx, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E57833    A1 7CCAED00     mov     eax, dword ptr [EDCA7C]
00E57838    8B35 7CCAED00   mov     esi, dword ptr [EDCA7C]          ; OpenNetM.005D1938
00E5783E    8B76 5C         mov     esi, dword ptr [esi+5C]
00E57841    3370 6C         xor     esi, dword ptr [eax+6C]
00E57844    3372 7C         xor     esi, dword ptr [edx+7C]
00E57847    3371 18         xor     esi, dword ptr [ecx+18]
00E5784A    8B4D F4         mov     ecx, dword ptr [ebp-C]
00E5784D    8B15 D4F1ED00   mov     edx, dword ptr [EDF1D4]
00E57853    33348A          xor     esi, dword ptr [edx+ecx*4]
00E57856    8B45 F4         mov     eax, dword ptr [ebp-C]
00E57859    8B0D D4F1ED00   mov     ecx, dword ptr [EDF1D4]
00E5785F    893481          mov     dword ptr [ecx+eax*4], esi
00E57862  ^ E9 72FCFFFF     jmp     00E574D9
00E57867    EB 03           jmp     short 00E5786C                   ; 这里下断,F9
00E57869    D6              salc
00E5786A    D6              salc


修改红色部分代码不知道对不对?网上教程都是JE跳转指令

然后再下 bp GetCurrentThreadId,F9后断到这里

1
2
3
7C8097B8 >  64:A1 18000000  mov     eax, dword ptr fs:[18]
7C8097BE    8B40 24         mov     eax, dword ptr [eax+24]
7C8097C1    C3              retn


然后我按ALT+M,在401000断下内存访问断点,F9运行后,返回无效区域,不知道是什么原因?

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

收藏
免费
支持
分享
最新回复 (1)
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
好像还要下拉找一个
01055C0E    ^\0F85 49FEFFFF    jnz 01055A5D
01055C14      EB 03                    jmp short 01055C19  //F2下断,Shift+F9,断下!取消断点!
01055C16      D6                         salc(其上下断)
01055C17      D6                         salc
我看其他教程的,你ALT+F9返回后修改了那个JNE要找两个SALC和JNZ JMP一起的
2013-1-24 13:26
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册