老文章档案 · 2003 年

用ollydbg手工脱ASPack212壳

赢政天下 [WINZHENG.COM] · 网络学院 · 2003-08-27 · 作者:人气: · 出处:赢政天下整理收藏)

使用工具:ollydbg、LordPE

脱壳对象:用ASPack212加壳的记事本程序

运行平台:win2k

脱ASPack212版压缩的程序方法:

01010374 EB 4A JMP SHORT NOTEPAD.010103C0

01010376 8907 MOV DWORD PTR DS:[EDI],EAX

01010378 8385 49050000 04 ADD DWORD PTR SS:[EBP+549],4

0101037F ^E9 32FFFFFF JMP NOTEPAD.010102B6

01010384 8906 MOV DWORD PTR DS:[ESI],EAX

01010386 8946 0C MOV DWORD PTR DS:[ESI+C],EAX

01010389 8946 10 MOV DWORD PTR DS:[ESI+10],EAX

0101038C 83C6 14 ADD ESI,14

0101038F 8B95 22040000 MOV EDX,DWORD PTR SS:[EBP+422]

0101038F 8B95 22040000 MOV EDX,DWORD PTR SS:[EBP+422]

01010395 ^E9 EBFEFFFF JMP NOTEPAD.01010285

0101039A B8 20640000 MOV EAX,6420====》此处移入EAX的其实就是入口值。

0101039F 50 PUSH EAX

010103A0 0385 22040000 ADD EAX,DWORD PTR SS:[EBP+422]====》程序入口地址01006420移入EAX。

010103A6 59 POP ECX

010103A7 0BC9 OR ECX,ECX

010103A9 8985 A8030000 MOV DWORD PTR SS:[EBP+3A8],EAX

010103AF 61 POPAD===》标志。

010103B0 75 08 JNZ SHORT NOTEPAD.010103BA

010103B2 B8 01000000 MOV EAX,1

010103B7 C2 0C00 RETN 0C

010103BA 68 00000000 PUSH 0====》程序运行到此处时,此处值将改变为入口地址值(见下面的代码)。

010103BF C3 RETN=====》返回程序入口处。应在此中断,然后单步到程序真正入口处,再DUMP。

010103C0 8B85 26040000 MOV EAX,DWORD PTR SS:[EBP+426]

010103C6 8D8D 3B040000 LEA ECX,DWORD PTR SS:[EBP+43B]

010103CC 51 PUSH ECX

010103CD 50 PUSH EAX

010103CE FF95 490F0000 CALL DWORD PTR SS:[EBP+F49]

010103D4 8985 55050000 MOV DWORD PTR SS:[EBP+555],EAX

010103DA 8D85 47040000 LEA EAX,DWORD PTR SS:[EBP+447]

010103E0 50 PUSH EAX

010103E1 FF95 510F0000 CALL DWORD PTR SS:[EBP+F51]

010103E7 8985 2A040000 MOV DWORD PTR SS:[EBP+42A],EAX

程序运行后:

01010395 ^E9 EBFEFFFF JMP NOTEPAD.01010285

0101039A B8 20640000 MOV EAX,6420

0101039F 50 PUSH EAX

010103A0 0385 22040000 ADD EAX,DWORD PTR SS:[EBP+422]

010103A6 59 POP ECX

010103A7 0BC9 OR ECX,ECX

010103A9 8985 A8030000 MOV DWORD PTR SS:[EBP+3A8],EAX

010103AF 61 POPAD=====》标志。

010103B0 75 08 JNZ SHORT NOTEPAD.010103BA

010103B2 B8 01000000 MOV EAX,1

010103B7 C2 0C00 RETN 0C

010103BA 68 20640001 PUSH NOTEPAD.01006420====》程序真正入口地址。

010103BF C3 RETN====>返回到程序真正入口处。

010103C0 8B85 26040000 MOV EAX,DWORD PTR SS:[EBP+426]

010103C6 8D8D 3B040000 LEA ECX,DWORD PTR SS:[EBP+43B]

010103CC 51 PUSH ECX

010103CD 50 PUSH EAX

010103CE FF95 490F0000 CALL DWORD PTR SS:[EBP+F49]

010103D4 8985 55050000 MOV DWORD PTR SS:[EBP+555],EAX

010103DA 8D85 47040000 LEA EAX,DWORD PTR SS:[EBP+447]

010103E0 50 PUSH EAX

010103E1 FF95 510F0000 CALL DWORD PTR SS:[EBP+F51]

程序跳到:

01006419 C2 0800 RETN 8

0100641C 33C0 XOR EAX,EAX

0100641E ^EB F5 JMP SHORT NOTEPAD.01006415

01006420 55 PUSH EBP====》此处为真正入口。

01006421 8BEC MOV EBP,ESP

01006423 6A FF PUSH -1

01006425 68 88180001 PUSH NOTEPAD.01001888

0100642A 68 D0650001 PUSH NOTEPAD.010065D0 ; JMP to msvcrt._except_handler3

0100642F 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]

01006435 50 PUSH EAX

DUMP出来以后,修改入口点为00006420,然后重建PE。OK!(DUMP工具为LordPE)

(出处:赢政天下整理收藏)

相关文章:

相关软件:

→ 特别推荐

→ 热点TOP10

关于我们 |

帮助(?)

| 广告服务 |

版权声明 |

商业合作 |

发展历程 |

加盟我们 |

联系我们

Copyright © 1999-2003

winzheng.com All Rights Reserved.

繁体版:由华琦数码技术提供

Powered

by:MeSky.Net

2003-2004 年,宽带刚刚普及,下载站的文章区是许多人学电脑的第一课堂。
🕰 → 🤖 从那时到现在

当年一篇教程能让一台电脑焕然一新;今天的效率工具换成了 AI。 想知道当下最可靠的 AI 模型怎么选?看 赢政指数——我们用了 28 年的选软件严谨,现在用来评测大模型。

档案性质声明:本页为赢政天下(1998-2011)老文章的历史档案复原, 内容反映当年发表时的原貌——包括当年的技术表述、软件版本与观点,部分方法在今天已不适用或不合规,仅作互联网历史记录与研究用途, 不提供任何形式的下载。原始数据经由公共网络存档(Internet Archive)复原。发现问题请联系我们
← 返回老文章档案 · 软件史档案馆 · 赢政天下站史