深入伪UPX分析之一汇编分析

 作 者: menting
时 间: 2008-08-23,10:54
链 接: http://bbs.pediy.com/showthread.php?t=71248

经过一翻周折,UPX这个简单的壳,我却么有搞定!_!.不得不难过了:(
一直心情很糟糕,么有办法静下来做东西了.好长时间么来看雪了,今天碰到个很简单的UPX壳,我竟然么有搞定.
天哪~~~~,我是何等的渺小.一直想给看雪带点好东西,但是我依然么有拿的出手的东西.因为我已经很久么有
好好打开OD和IDA看过.最多是随手打开随手关掉.

最近玩游戏,碰到了个东西,它有个英文名字GameGuard,不知道大家听说过么,好象它便是大名顶顶的NP,关于NP
我会再以后的文章中说明,当然是旧版本,做为研究无所谓新旧,为了看雪也为了我和大家,我选择了旧版本.
今天和大家探讨的是GameGuard.des的脱壳问题,因为PEID告诉我说是未知,我来个深度扫描竟然是UPX,
和我开了个天大的玩笑.

我很熟练的OD,不到10秒,不!是5秒,一个断点,两下F8,于是我到了OEP,LOAD直接DUMP发现竟然是4KB,我晕了.....
直接拿WINHEX,从内存提出来LOADPE重建搞定.发现这样的脱壳不完美首先运行不起来.而且后来修复后,运行,
发现也不正常,于是我用UPX -D么想到提示:
//-----------------------------------------------------------------------------------------------
E:/软件加密解密/脱壳工具/UPX/upx303w>upx -d gameguard.des
                       Ultimate Packer for eXecutables
                          Copyright (C) 1996 - 2008
UPX 3.03w       Markus Oberhumer, Laszlo Molnar & John Reiser   Apr 27th 2008

        File size         Ratio      Format      Name
   --------------------   ------   -----------   -----------
upx: gameguard.des: CantUnpackException: file is modified/hacked/protected; take
 care!!!

Unpacked 0 files.
//----------------------------------------------------------------------------------------------

对上面的提示只能是汗颜了.一到咱看雪,搜索一下!发现有个UPXFIX很好玩.点一下修复,竟然告诉我不是UPX
壳,到底那个说的对呢??我们来看看入口:
//----------------------------------------------------------------------------------------------
00422AF0 >  31FF            xor     edi, edi
00422AF2    74 06           je      short 00422AFA
00422AF4    61              popad
00422AF5  - E9 4A4D5030     jmp     30927844
00422AFA    5A              pop     edx
00422AFB    BA 7D000000     mov     edx, 7D
00422B00    807C24 08 01    cmp     byte ptr [esp+8], 1
00422B05    E9 00000000     jmp     00422B0A
00422B0A    60              pushad
00422B0B    BE 00504100     mov     esi, 00415000
00422B10    31FF            xor     edi, edi
00422B12    74 06           je      short 00422B1A
00422B14    61              popad
00422B15  - E9 4A4D5030     jmp     30927864
00422B1A    8DBE 00C0FEFF   lea     edi, dword ptr [esi+FFFEC000]
00422B20    31C9            xor     ecx, ecx
00422B22    74 06           je      short 00422B2A
00422B24    61              popad
00422B25  - E9 4A4D5030     jmp     30927874

//-----------------------------------------------------------------------------------------------
大家看看是不是UPX,但是和UPX脱壳方法很是一样.估计是被修改过的UPX了.管它呢~~~好好看看.

1:
//-----------------------------------------------------------------------------------------------
00422AF0 >  31FF            xor     edi, edi                         ; edi =0
00422AF2    74 06           je      short 00422AFA                   ; if edi == 0 ->jmp
00422AF4    61              popad
00422AF5  - E9 4A4D5030     jmp     30927844
00422AFA    5A              pop     edx                              ; save edx
00422AFB    BA 7D000000     m
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值