对加密壳acprotectOEP处理
核心提示:菜驹acprotect OEP壳玩加密处理:添加文件和下载附件PDF1。加密过程:acproctect V1.41版本的分析过程偷2 OEP。入口点代码:加载后,企业名称= 00…食品加工也acprotect柯尔特加密壳OEP
下载:添加文件和PDF
1。加密过程:
acproctect V1.41版
分析切入点代码偷OEP
2。分析过程:
加载后,企业名称= 00412000
00412000、60 pushad
00412001 E8 01000000呼叫vcmfc图书馆1.00412007
00412006 - 7e 83省xvcmfc图书馆1.00411f8b
004120080424添加Al、0x24
0041200a 06推ES
0041200b C3基因
0041200c 7701 JA xvcmfc图书馆1.0041200f
0041200e 43公司EBX
0041200f FC CLD
004120107501 xvcmfc JNZ图书馆1.00412013
入口点在shell段中(地址:00412000,大小:19000)
根据壳体的特点,在00412001小时ESP
来这里:
0041254a 56推ESI
0041254b 8f05 a1294100流行DWORD PTR DS:{ 0x4129a1 }
0041255160 pushad
004125527803 JS xvcmfc图书馆1.00412557
004125547901该xvcmfc图书馆1.00412557
00412556日本xvcmfc 7B 40图书馆1.00412598
你可以看到pushad,删除硬件断点后,在pushad HR ESP下
来这里:
0042775351推ECX
00427754 8f05 89284100流行DWORD PTR DS:{ 0x412889 };{ 889 } = ECX
60 pushad 0042775a
61 0042775b POPAD
0042775c 51推ECX
0042775d 8f05 cd294100流行DWORD PTR DS:{ 0x4129cd };{ } = ECX 9cd
00427763 ff35 cd294100推DWORD PTR DS:{ 0x4129cd }
004277698915 e1284100 MOV DWORD PTR DS:{ 0x4128e1 },EDX
0042776f ff35 e1284100推DWORD PTR DS:{ 0x4128e1 }
0042777556推ESI
00427776 11294100乐章ESI,VCMFC图书馆1.00412911
0042777b 8bd6 mov EDX,ESI
0042777d 5e弹出
0042777e 52推EDX
0042777f 59 pop ecx;ECX EDX = 412911 =
00427780 8f05 3d284100流行DWORD PTR DS:{ 0x41283d }
00427786 8b15 3d284100 mov EDX,DWORD PTR DS:{ 0x41283d }
0042778c 8929乐章DWORD PTR DS:{ ECX },{ 412911 } = EBP EBP;
0042778e 8f05 a12a4100流行DWORD PTR DS:{ 0x412aa1 }
0042779456推ESI
00427795是a12a4100 MOV ESI,1.00412aa1 vcmfc图书馆
0042779a 8b0e mov ecx,DWORD PTR DS:{ - }
0042779c 5e弹出
0042779d ff35 11294100推DWORD PTR DS:{ 0x412911 };这个地方是偷来的代码pushebp第一件
004277a3 8925 192b4100 MOV DWORD PTR DS:{ 0x412b19 },ESP
90 004277a9 NOP
90 004277aa NOP
60 pushad 004277ab
004277ac E8 01000000电话1.004277b2 vcmfc图书馆
004277b1 ^ 7783 JA xvcmfc图书馆1.00427736
注意三的pushad NOP NOP指令,这意味着,这意味着这是偷来的代码开始。当然,这里的NOP是随机填充,也许没有,也许有,也许有,也许很多…关键是pushad指令。
在NOP所有指令复制到二进制存储。
0042775351推ECX
00427754 8f05 89284100流行DWORD PTR DS:{ 0x412889 };{ 889 } = ECX
60 pushad 0042775a
61 0042775b POPAD
0042775c 51推ECX
0042775d 8f05 cd294100流行DWORD PTR DS:{ 0x4129cd };{ } = ECX 9cd
00427763 ff35 cd294100推DWORD PTR DS:{ 0x4129cd }
004277698915 e1284100 MOV DWORD PTR DS:{ 0x4128e1 },EDX
0042776f ff35 e1284100推DWORD PTR DS:{ 0x4128e1 }
0042777556推ESI
00427776 11294100乐章ESI,VCMFC图书馆1.00412911
0042777b 8bd6 mov EDX,ESI
0042777d 5e弹出
0042777e 52推EDX
0042777f 59 pop ecx;ECX EDX = 412911 =
00427780 8f05 3d284100流行DWORD PTR DS:{ 0x41283d }
00427786 8b15 3d284100 mov EDX,DWORD PTR DS:{ 0x41283d }
0042778c 8929乐章DWORD PTR DS:{ ECX },{ 412911 } = EBP EBP;
0042778e 8f05 a12a4100流行DWORD PTR DS:{ 0x412aa1 }
0042779456推ESI
00427795是a12a4100 MOV ESI,1.00412aa1 vcmfc图书馆
0042779a 8b0e mov ecx,DWORD PTR DS:{ - }
0042779c 5e弹出
0042779d ff35 11294100推DWORD PTR DS:{ 0x412911 };这个地方是偷来的代码pushebp第一件
004277a3 8925 192b4100 MOV DWORD PTR DS:{ 0x412b19 },ESP
此代码的二进制数据是:
51 8F 0589284100606151 8F 05 CD 294100 CD 2941008915 E1 FF FF 35 284100 35 410056 11294100栋8B E128 D6 5e 5259 8F 05 3D 284100栋8B 15 3D 2841008929 8F 05 A1 2A 410056 A1 2A 4100 8b 0e 5e FF 35112941008925 192B 4100
重复以上步骤,直到N次,如何确定N,我在这里经过弹出试用版的NAG。
在n次之间保存二进制数据。
00429106 / EB 01 JMP xvcmfc图书馆1.00429109
00429108 | E8 ff254b91叫918db70c
42公司0042910d EDX
00429106是在跳,F7进入
00429109 4b914200 FF25 JMP DWORD PTR DS:{ 0x42914b };vcmfc图书馆1.00405391
60 pushad 0042910f
00429110 E8 00000000呼叫vcmfc图书馆1.00429115
00429115座5E弹出
00429116 83ee 06子ESI,0x6
其中:
DS:{ 0042914b } = 00405391(vcmfc图书馆1.00405391)
这是一个很长的横截面,什么是横截面当前指令是00429109,它将跳转到00405391。
正如你可以看到从模块的原理图,它是跳跃的。困扰段的文本段执行..这是传说中的横截面。
所以,当你进入一段代码,这是传说中的伪OEP,和伪OEP是这样的。
然后把它扔掉
修复与进口记录下IAT,没有解决问题的转储文件
进口记录将添加该文件的mackt部分,其中包含输入表的大小是1000,和输入表不能占用太多空间。我们会把被盗的代码放在这一部分。
开放dump_修复。exe与OD,在0042b000部分找到一个空位置。
我在找0042bba0,把二进制的顶部,并添加一个JMP 00405391(跳到伪OEP)。
0042bebf EAX 58流行
8908 0042bec0 MOV EAX DWORD PTR DS:{ },ECX
0042bec2 A1 a4604000 mov eax,DWORD PTR DS:{ 0x4060a4 }
0042bec7 - E9 c594fdff JMP dumped_。
使用负载PE修改入口点0042bba0,OK,完成。
保存所有二进制数据:
0042775351推ECX
00427754 8f05 89284100流行的DWORD ptrds:{ 0x412889 };{ 889 } = ECX
60 pushad 0042775a
61 0042775b POPAD
0042775c 51推ECX
0042775d 8f05 cd294100流行DWORD ptrds:{ 0x4129cd };{ } = ECX 9cd
00427763 ff35 cd294100推DWORD ptrds:{ 0x4129cd }
004277698915 e1284100 MOV DWORD ptrds:{ 0x4128e1 },EDX
0042776f ff35 e1284100推DWORD ptrds:{ 0x4128e1 }
0042777556推ESI
00427776 11294100乐章ESI,VCMFC图书馆1.00412911
0042777b 8bd6 mov EDX,ESI
0042777d 5e弹出
0042777e 52推EDX
0042777f 59 pop ecx;ECX EDX = 412911 =
00427780 8f05 3d284100流行DWORD ptrds:{ 0x41283d }
00427786 8b15 3d284100 mov EDX,DWORD ptrds:{ 0x41283d }
8929乐章0042778c DWORD ptrds:{ ECX },{ 412911 } = EBP EBP;
0042778e 8f05 a12a4100流行DWORD ptrds:{ 0x412aa1 }
0042779456推ESI
00427795是a12a4100 MOV ESI,1.00412aa1 vcmfc图书馆
0042779a 8b0e mov ecx,esi DWORD ptrds:{ }
0042779c 5e弹出
0042779d ff35 11294100推DWORD ptrds:{ 0x412911 };这个地方是被偷走的第一个代码,pushebp
004277a3 8925 192b4100 MOV DWORD ptrds:{ 0x412b19 },ESP
51 8F 0589284100606151 8F 05 CD 294100 CD 2941008915 E1 284100 FF FF 35 35 E1 28
410056是11294100栋8B D6 5e 5259 8f05 3D 284100 8B 15 3D 2841008929 8f 05 A1 2A 41
0056是A1 2A 4100 8b 0e 5e FF 3511294100892519 2B 4100
FF 3519 2B 4100 8F 05 C1 29410056 BEC1 294100栋8B 2e 5e 9d 57高炉29410089号1F 5F 35
9d 294100893531284100 FF FF FF FF FF 353128410068 5e 893599 2a 4100栋8B 1d 99 2a
4100 8F 05 0d 2A 4100 8B 35 0d 2A 410057
89 1C 24 8F 0505294100 8F 0519284100 FF FF 35052941008905 D5 2a 3519284100栋5B
4100 FF 35 D5 2A 410089 3C 2489 0c 24c7 0424 A0 61400057 8F 05 E1 2A 4100 FF 35 E1
410089 1C 24 C7 0424 C0 544000
64 A1 00000000 8905 A5 294100 FF 35a5 29410089 1C 2489 0d 85 2A 4100 FF 3585 2A 41
0057高炉91294100栋8B CF 5F 56 8b F1 8bde 5e 8b 0C 24 05 41008903 24 05 8f B5 B5
埃德284100法郎3591294100
6489250000000083 EC 6853 8F 05 d529 4100 FF 35 D5 294100 8F 0599284100 FF 3599
28410057890424 8F 0565294100 ff35 6529410089342452 8F 05 F1 284100 FF 35 F1
28410089三维C9 2A 4100 FF 35 C9 2A 4100
56 8F 0531 2a 4100606168 E5 2A 41 005f 51栋8B CF 8b D1 59 8F 05 B9 284100 8B 284100 8B 2841
0089个3A 8f 05 D1 28410053 BB D1 284100栋8B 13号5B FF 35 E5 2A 41008965 E8 33分贝89
891585294100 FF 358529410089342453 89142450 B8 0200000060
8b D0 5852座5E 8f 0501 2a 4100 8B 15 012a 41005689142450 B8 25294100栋8B D0 588932
8f 05广告294100广告294100栋8B 8B 15 3424 8F 05 B9 2A 4100 3525294100 FF FF 15986040
00 8F 050129410050 B8 5d 2A 4100893858
FF 35 5d 2A 410051 C7 0424012941 008f 0585284100栋8B 3D 85284100 8b 0f 8b 3C 24 8f
056129410083 0d B4 F1 4000 FF 83 0db8 F1 4000 FF FF FF 15 9C 6040008905 C1 284100
35 C1 28410057高炉35284100栋8B C7 5f89 30
8b 0424 8F 0541284100 FF 353528410050 8F 05 6D 2A 4100 FF 35 6D 2A 410089 3D 3928
4100 FF 353928410051 B9 7C 7140 008b F9 595758 5F 50座5E 8f 05 2D 2A 4100 8b 05 2D
4100栋8B 0e 8f 0511 2B 4100 FF 3511 2b41 00
55 8F 0525 2B 41006061座5E 8908 FF 15a0 60400052 8F 0555 2a 4100 FF 3555 2a 4100 C7
052929410078714000 FF 3529294100 8F 0535 2a 4100栋8B 1535 2a 4100栋8B 0a 8f 05 C9
28410050 B8 C9 284100 8B 105889 08a1 A4 604000