中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 看雪学院专区 > 脱壳技术 > PECompact
PECompact V2.40 简便脱壳二法
作者:fly 时间:2005-11-19 16:30 出处:pediy.com 责编:月夜寒箫
              摘要:暂无
下载页面:  http://www.hanzify.org/?Go=Show::List&ID=6189 
软件大小:  1.3MB  
所属分类:  加密解密   
上传时间:  2004-08-08 00:44:47    
软件汉化:  FeiXJ 
运行环境:  WIN9X/WINME/WINNT/WIN2000PRO/WINXP  
软件简介:  这是一个可执行文件的压缩(加壳)工具。  
             
【作者声明】:只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
             
【调试环境】:WinXP、Ollydbg V1.10、PEiD、LordPE、ImportREC
             
————————————————————————————————— 
【脱壳过程】:
          
         
看到有兄弟问,所以简单写几句。
准备扔西红柿的兄弟可否考虑扔西瓜过来给我?呵呵

用PECompact V2.40汉化版给Win98的记事本加壳,PECompact的压缩效果已经不错了。
             
设置Ollydbg忽略所有的异常选项。
—————————————————————————————————
一、第一种方法


004010CC     B8 E8E54000         mov eax,Notepad.0040E5E8//进入OD后暂停在这
004010D1     50                  push eax
004010D2     64:FF35 00000000    push dword ptr fs:[0]
004010D9     64:8925 00000000    mov dword ptr fs:[0],esp
004010E0     33C0                xor eax,eax
004010E2     8908                mov dword ptr ds:[eax],ecx

下断:BP VirtualFree 
中断后取消断点,Ctrl+F9两次,返回0040E695处

0040E693     FFD7                call edi
0040E695     8985 23120010       mov dword ptr ss:[ebp+10001223],eax; Notepad.<ModuleEntryPoint>
0040E69B     8BF0                mov esi,eax
0040E69D     59                  pop ecx
0040E69E     5A                  pop edx
0040E69F     03CA                add ecx,edx
0040E6A1     68 00800000         push 8000
0040E6A6     6A 00               push 0
0040E6A8     57                  push edi
0040E6A9     FF11                call dword ptr ds:[ecx]; kernel32.VirtualFree
0040E6AB     8BC6                mov eax,esi
0040E6AD     5A                  pop edx
0040E6AE     5E                  pop esi
0040E6AF     5F                  pop edi
0040E6B0     59                  pop ecx
0040E6B1     5B                  pop ebx
0040E6B2     5D                  pop ebp
0040E6B3     FFE0                jmp eax; Notepad.<ModuleEntryPoint>
//飞向光明之巅! ^O^


—————————————————————————————————
二、第二种方法


004010CC     B8 E8E54000         mov eax,Notepad.0040E5E8//进入OD后暂停在这
004010D1     50                  push eax
004010D2     64:FF35 00000000    push dword ptr fs:[0]
004010D9     64:8925 00000000    mov dword ptr fs:[0],esp
004010E0     33C0                xor eax,eax
004010E2     8908                mov dword ptr ds:[eax],ecx

看到这个004010CC的入口,各位兄弟该有想法了吧?呵呵
PECompact V1.84等旧版都是:
JMP   XXXXXXXX
PUSH  XXXXXXXX//OEP的RVA
而新版索性就直接以原OEP为壳入口地址了

下断:HE EIP
F9运行,直接中断在OEP处了

004010CC     55                  push ebp//OEP
004010CD     8BEC                mov ebp,esp
004010CF     83EC 44             sub esp,44
004010D2     56                  push esi
004010D3     FF15 E4634000       call dword ptr ds:[4063E4]; kernel32.GetCommandLineA

拿出LordPE来DUMP进程,ImportREC修复输入表吧。
注:第2种方法不适用于Delphi程序,看来很多壳对Delphi都特别“照顾”呀。
关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有