吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 37157|回复: 16
收起左侧

[分享] 破解UPolyX 0.51壳

  [复制链接]
ieiqp 发表于 2009-11-18 17:01
最新版本是UPolyX 0.51,就以这个最新版本进行破解,破解样本是记事本程序。
  这个加壳程序是对UPX加壳过的程序进行二次加壳或加密。
  先压缩后进行加密
  PEID显示为:什么都没找到
  核心扫描为:ARJ Archive *    //不晓得代表什么意思
  OD载入,代码为:
  010143B8 > 0FB7CF          MOVZX ECX,DI //停在这里
  010143BB    D1D6            RCL ESI,1
  010143BD    69EF 6B823D0C   IMUL EBP,EDI,0C3D826B
  010143C3    EB 01           JMP SHORT 11.010143C6
  010143C5    C3              RETN   //从下面跳至这里
  010143C6    BE 40420101     MOV ESI,11.01014240
  010143CB    83EC 04         SUB ESP,4
  010143CE    893424          MOV DWORD PTR SS:[ESP],ESI
  010143D1    B9 B0000000     MOV ECX,0B0
  010143D6    8136 8E931300   XOR DWORD PTR DS:[ESI],13938E
  010143DC    51              PUSH ECX
  010143DD    33C9            XOR ECX,ECX
  010143DF    B9 04000000     MOV ECX,4
  010143E4    83C6 01         ADD ESI,1
  010143E7 ^ E2 FB           LOOPD SHORT 11.010143E4
  010143E9    59              POP ECX
  010143EA    83E9 03         SUB ECX,3
  010143ED ^ E2 E7           LOOPD SHORT 11.010143D6
  010143EF ^ EB D4           JMP SHORT 11.010143C5
  很简单的代码
  JMP SHORT 11.010143C5 是一个向上的跳转,跳到 RETN的地方,然后继续
  0101423D    00FF                    ADD BH,BH
  0101423F    0060 BE                 ADD BYTE PTR DS:[EAX-42],AH
  01014242    0000                    ADD BYTE PTR DS:[EAX],AL
  01014244    0101                    ADD DWORD PTR DS:[ECX],EAX
  01014246    8DBE 0010FFFF           LEA EDI,DWORD PTR DS:[ESI+FFFF1000]
  0101424C    57                      PUSH EDI
  0101424D    83CD FF                 OR EBP,FFFFFFFF
  01014250    EB 10                   JMP SHORT 11.01014262
  01014252    90                      NOP
  其实是跳往01014240,但鼠标动以下就会变成以上的汇编代码,需要右键-分析-分析代码,分析后就可以看到如下代码
  01014240   . 60                    PUSHAD
  01014241   . BE 00000101           MOV ESI,11.01010000
  01014246   . 8DBE 0010FFFF         LEA EDI,DWORD PTR DS:[ESI+FFFF1000]
  0101424C   . 57                    PUSH EDI
  0101424D   . 83CD FF               OR EBP,FFFFFFFF
  01014250   . EB 10                 JMP SHORT 11.01014262
  01014252      90                    NOP
  01014253      90                    NOP
  01014254      90                    NOP
  DUMP下来,然后PEID显示:
  UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus& Laszlo
  UPX的壳,剩下就很好解决了。UPX的壳很容易就可以脱,用脚本就可以了
  载入之前DUMP文件,OD载入
  01014377    FF96 F0AE0100   CALL DWORD PTR DS:[ESI+1AEF0]
  0101437D    09C0            OR EAX,EAX
  0101437F    74 07           JE SHORT 5.01014388
  01014381    8903            MOV DWORD PTR DS:[EBX],EAX
  01014383    83C3 04         ADD EBX,4
  01014386 ^ EB E1           JMP SHORT 5.01014369
  01014388    FF96 F4AE0100   CALL DWORD PTR DS:[ESI+1AEF4] //跟到这里,F8就直接执行,但离OEP已经很近了!
  0101438E    61              POPAD                         //在这里F2下断
  0101438F - E9 0930FFFF     JMP 5.0100739D
  01014394    0000            ADD BYTE PTR DS:[EAX],AL
  在0101438E下断后,程序跳往 JMP 5.0100739D
  那里就是OEP
  0100739D    6A 70           PUSH 70
  0100739F    68 98180001     PUSH 5.01001898
  010073A4    E8 BF010000     CALL 5.01007568
  010073A9    33DB            XOR EBX,EBX
  010073AB    53              PUSH EBX
  010073AC    8B3D CC100001   MOV EDI,DWORD PTR DS:[10010CC]           ; kernel32.GetModuleHandleA
  010073B2    FFD7            CALL EDI
  DUMP下来,PEID检测
  Microsoft Visual C++ 7.0 Method2
  完美完毕!

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

fxshark 发表于 2009-11-18 23:38
学习收益中 谢谢楼主无私奉献
cjc579 发表于 2011-9-12 15:15
pwzh88 发表于 2011-7-30 14:02
a2213572 发表于 2009-11-21 10:22
感謝分享!
自己也來試試看.
半瓶水 发表于 2009-11-20 20:45
不错,这些适合 我们新手。
JPK 发表于 2014-11-15 16:29
谢谢分享!吾爱因你而精彩!
ghc00259 发表于 2011-9-13 07:02
脱壳眼界开。。。
hanxing99 发表于 2013-4-3 18:55
见识了。。。
adri 发表于 2013-6-7 14:10
破解UPolyX 0.51壳 [[url=]修[/url]
头像被屏蔽
yc016 发表于 2013-11-2 19:26
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-17 23:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表