老文章档案 · 2003 年

EZIP1.0脱壳手记

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

好久没有写有关于脱壳的文章了 主要是最近一直在研究Keygen的编写和密码学 而且也没有什么感兴趣的壳可写

小弟功力微薄 太难的写不出来 比如 DBPE1.5B4 或者 ASProtect1.3 太简单的又没有 ^_^ 今天到http://www.programmerstools.org/

溜达了一圈 乱七八糟的东西弄下来一大堆 其中就有一个这个东西 叫做EZIP 是个动态压缩软件 使用Generic Unpacker Win32 脱壳居

然非法操作 还以为会有点乐趣值得研究一下 没有想到使用TRW脱壳居然出奇的简单 :( 功夫不能白费 写出来给一些初学者参考一

下吧 不对的地方请多多执教!

脱壳的目标就是EZIP程序本身。

用TRW载入程序 按两下F10后来到外壳部分代码段:

017F:004582DC INT3

017F:004582DD MOV EBP,ESP /TRW的光条停在这里

017F:004582DF SUB EBP,0428

017F:004582E5 PUSH EBX

017F:004582E6 PUSH ESI

017F:004582E7 PUSH EDI

017F:004582E8 LEA EAX,[EBP+FFFFFC94]

017F:004582EE PUSH EAX

017F:004582EF CALL 004550F0

017F:004582F4 POP ECX

017F:004582F5 TEST EAX,EAX

017F:004582F7 JNZ 0045868A

这个东西的壳相当简单 比我所见过的任何壳都简单许多 一直按F10单步跟踪就到达了这里:

017F:00458539 PUSH EAX

017F:0045853A PUSH DWORD [EBP+FFFFFDEC]

017F:00458540 LEA EAX,[EBP+FFFFFC3C]

017F:00458546 PUSH EAX

017F:00458547 LEA EAX,[EBP+FFFFFC94]

017F:0045854D PUSH EAX

017F:0045854E CALL 00455005

017F:00458553 ADD ESP,BYTE +10

017F:00458556 AND DWORD[EBP+FFFFFC34]

017F:0045855D JMP SHORT 0045856C /跳到脱壳代码段

017F:0045855F MOV EAX,[EBP+FFFFFC34] /标志位-EAX

017F:00458565 INC EAX /循环一次后减一

017F:00458566 MOV [EBP+FFFFFC34],EAX /压入地址 EBP+FFFFFC34 中

017F:0045856C MOV EAX,[EBP+FFFFFBE4] /从这里开始程序开始进行循环 并在内存中脱壳

017F:00458572 MOVZX EAX,WORD [EAX+06] /取值

017F:00458576 CMP [EBP+FFFFFC34],EAX /对比循环标志

017F:0045857C JNC NEAR 0045861F /跳出到45861F的话则循环结束

017F:00458582 MOV EAX,[EBP+FFFFFDEC]

017F:00458588 MOV EAX,[EAX+0C]

017F:0045858B ADD EAX,[EBP+FFFFFBE0]

若没有在 0045857C 处跳出,你就会按F10跟到这里:

017F:004585F5 LEA EAX,[EBP+FFFFFC3C]

017F:004585FB PUSH EAX

017F:004585FC LEA EAX,[EBP+FFFFFC94]

017F:00458602 PUSH EAX

017F:00458603 CALL 00455050

017F:00458608 ADD ESP,BYTE +18

017F:0045860B MOV EAX,[EBP+FFFFFDEC]

017F:00458611 ADD EAX,BYTE +28

017F:00458614 MOV [EBP+FFFFFDEC],EAX

017F:0045861A JMP 0045855F /跳到上面继续进行循环脱壳

017F:0045861F PUSH DWORD [EBP+FFFFFDE8]

因此我们知道了这个壳的第一个关键处 就是45857C 只要这个时候下 BPX XXXXXXX (45857C中JNC语句后面的地址) 然后按

一下F5 程序就会自动停到循环后的第一个语句处 这时按F10继续跟踪会很快来到这里:

017F:00458662 POP ECX

017F:00458663 POP ECX

017F:00458664 MOV EAX,[EBP+FFFFFC2C]

017F:0045866A MOV EAX,[EAX+10]

017F:0045866D MOV ECX,[EBP+FFFFFC2C]

017F:00458673 ADD EAX,[ECX+1C]

017F:00458676 MOV [EBP+FFFFFC38],EAX

017F:0045867C MOV EAX,[EBP+FFFFFC38]

017F:00458682 POP EDI

017F:00458683 POP ESI

017F:00458684 POP EBX

017F:00458685 MOV ESP,EBP

017F:00458687 POP EBP

017F:00458688 JMP EAX /这个就是跳到程序的OEP的JMP

017F:0045868A POP EDI

从这个JMP跳出来 哦~~~ 整个世界清净了 重要找到了OEP ^_^ 赶快下命令 MAKEPE ———— 脱壳成功 程序没有对

输入表加密 脱壳后可以夸平台运行了 呵呵

脱壳后的程序370多K 看来这个东西的压缩比还是很高的阿 (出处:赢政天下收集整理)

相关文章:

·怎样脱用 Aspack2.12 加的壳(适合初学者)

·脱pecompact1.71加的壳

·PEPack1.0脱壳手记

·手动脱壳的教程(由petite v2.2加壳)

·论 彩票快车白金版v90 的脱壳+爆破

·Aspack的壳

·对PECompact.exe v1.34的手动脱壳

·Petite 脱壳“标准”解决方法

·Petite 2.x 脱壳

·脱壳----对用Petite2.2加壳的程序进行手动脱壳的一点分析

相关软件:

·NetConch(网络贝壳) 1.1

·甲壳虫进销存 V3.16 医药版

·甲壳虫医药版 V3.80

·甲壳虫服装鞋帽版 V3.90

·甲壳虫超市版 V3.68

·花生壳(PeanutHull) V2.0 正式版

·甲壳虫XP插件版 2.0.5

→ 特别推荐

→ 热点TOP10

关于我们 |

帮助(?)

| 广告服务 |

版权声明 |

商业合作 |

发展历程 |

加盟我们 |

联系我们

Copyright © 1999-2003

winzheng.com All Rights Reserved.

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

Powered

by:MeSky.Net

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

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

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