飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 6007|回复: 7

[原创] yoda's cryptor+ACProtect壳

[复制链接]

该用户从未签到

发表于 2008-9-13 21:40:24 | 显示全部楼层 |阅读模式
权限不够,只能发这啦
破文作者:叶飘
发表日期:2008年9月13日
软件名称:黄山IE修复专家 8.55版本
下载地址:http://www.skycn.com/soft/14441.html
软件简介: 反浏览器劫持病毒,超越IE修复极限,立足永久修复的治本之点。同时具备IE修复、杀QQ病毒、杀各种以驱动服务方式运行的病毒、杀各类木马(无进程木马、插入线程木马)、清除各种间谍广告程序、各种流行病毒及系统救援与日志上报于一身,一套等于多套。修复易死灰复燃顽固性、古怪性恶意网页所破坏的不能完全彻底修复的IE,专门清除间隔一段时间自动弹出恶意网页、多开几次IE及重起系统后又会被反复篡改的不能从注册表、进程、服务、启动项等清除的、挥之不去、除之不尽的奇怪恶意代码;一次性根除在用户在打开文本文件、可执行文件、浏览器、我的电脑、驱动器等又会死灰复燃的关联性病毒。在修复时自动为系统建立备份快照,自动创建浏览器劫持日志供用户查看、分析。特点:集预防、修复、免疫、救援四大功能于一身,无需实时监控,也可实现恶意网站预防及免疫,从而减少系统开销,已免疫过的恶意站点以后将不会被感染。可以清除用其他杀毒软件在正常模式与安全模式下也无法删除、清除失败的病毒文件...
软件大小: 4.51 MB
加壳方式:yoda's cryptor壳+ACProtect壳
破解声明: 刚学破解接近2个月,没人指点,琢磨几日,终于把这个壳给脱了,第一次写脱壳的笔记,失误之处请各位大侠多多赐教.因本人水平太低,想求一师傅带带!若那位不嫌弃,加我QQ:287753356
破解内容:
设置OllyDbg忽略所有的异常选项。用IsDebug插件去掉OllyDbg的调试器标志
0058E060 >  55              PUSH EBP
0058E061    8BEC            MOV EBP,ESP
0058E063    6A FF           PUSH -1
0058E065    68 2A2C0A00     PUSH 0A2C2A
0058E06A    68 38900D00     PUSH 0D9038
0058E06F    64:A1 00000000  MOV EAX,DWORD PTR FS:[0]
0058E075    50              PUSH EAX
0058E076    64:8925 0000000>MOV DWORD PTR FS:[0],ESP
0058E07D    58              POP EAX
0058E07E    64:A3 00000000  MOV DWORD PTR FS:[0],EAX
0058E084    58              POP EAX
0058E085    EB 0B           JMP SHORT hsreg.0058E092           前面这部分实际上是伪装的Microsoft Visual C++
0058E087    58              POP EAX
0058E088    58              POP EAX
0058E089    58              POP EAX
0058E08A    58              POP EAX
0058E08B    58              POP EAX
0058E08C    58              POP EAX
0058E08D    58              POP EAX
0058E08E    58              POP EAX
0058E08F    58              POP EAX
0058E090    90              NOP
0058E091    90              NOP
0058E092    60              PUSHAD                              yoda's cryptor 1.x / modified壳的入口
0058E093    E8 00000000     CALL hsreg.0058E098                 F7
0058E098    5D              POP EBP
0058E099    81ED 89173906   SUB EBP,6391789
0058E09F    B9 230C0000     MOV ECX,0C23
0058E0A4    8DBD D1173906   LEA EDI,DWORD PTR SS:[EBP+63917D1]
0058E0AA    8BF7            MOV ESI,EDI
0058E0AC    AC              LODS BYTE PTR DS:[ESI]
0058E0AD    F8              CLC
0058E0AE    02C1            ADD AL,CL
0058E0B0    2C D0           SUB AL,0D0
0058E0B2    C0C8 95         ROR AL,95                                ; 位移常数超出 1..31 的范围
0058E0B5    90              NOP
0058E0B6    C0C8 CF         ROR AL,0CF                               ; 位移常数超出 1..31 的范围
0058E0B9    EB 01           JMP SHORT hsreg.0058E0BC
0058E0BB    C2 90EB         RETN 0EB90
0058E0BE    01E9            ADD ECX,EBP
0058E0C0    EB 01           JMP SHORT hsreg.0058E0C3
0058E0C2  - E9 045490EB     JMP EBE934CB
0058E0C7    01E9            ADD ECX,EBP
0058E0C9    EB 01           JMP SHORT hsreg.0058E0CC
0058E0CB    E8 2C51F9C0     CALL C15231FC
0058E0D0    C8 562AC1       ENTER 2A56,0C1
0058E0D4    F8              CLC
0058E0D5    C0C0 B4         ROL AL,0B4                               ; 位移常数超出 1..31 的范围
0058E0D8    04 A0           ADD AL,0A0
0058E0DA    C0C0 76         ROL AL,76                                ; 位移常数超出 1..31 的范围
0058E0DD    AA              STOS BYTE PTR ES:[EDI]
0058E0DE  ^ E2 CC           LOOPD SHORT hsreg.0058E0AC
0058E0E0    A8 62           TEST AL,62                               F4到这,程序开始解码

******************************************************************
0058E0E0    8B4424 20       MOV EAX,DWORD PTR SS:[ESP+20]
0058E0E4    40              INC EAX
0058E0E5    78 0A           JS SHORT hsreg.0058E0F1
0058E0E7    C785 7F213906 0>MOV DWORD PTR SS:[EBP+639217F],1
0058E0F1    8D85 51173906   LEA EAX,DWORD PTR SS:[EBP+6391751]
0058E0F7    B9 66070000     MOV ECX,766
0058E0FC    E8 46030000     CALL hsreg.0058E447
0058E101    8985 7B213906   MOV DWORD PTR SS:[EBP+639217B],EAX
0058E107    8B85 73213906   MOV EAX,DWORD PTR SS:[EBP+6392173]
0058E10D    83E0 01         AND EAX,1
0058E110    74 40           JE SHORT hsreg.0058E152                    
0058E112    8DB5 EB223906   LEA ESI,DWORD PTR SS:[EBP+63922EB]

******************************************************************
0058E152    8B85 6B213906   MOV EAX,DWORD PTR SS:[EBP+639216B]       ; hsreg.00400000
0058E158    0340 3C         ADD EAX,DWORD PTR DS:[EAX+3C]
0058E15B    05 80000000     ADD EAX,80
0058E160    8B08            MOV ECX,DWORD PTR DS:[EAX]
0058E162    038D 6B213906   ADD ECX,DWORD PTR SS:[EBP+639216B]
0058E168    83C1 10         ADD ECX,10

……
……
……
0058E2A8    C742 50 0010000>MOV DWORD PTR DS:[EDX+50],1000              一路F8到这
0058E2AF    E8 0A000000     CALL hsreg.0058E2BE                         F7进入                       
0058E2B4    4E              DEC ESI

********************************************************************

0058E2BE    FF95 21233906   CALL DWORD PTR SS:[EBP+6392321]
0058E2C4    91              XCHG EAX,ECX
0058E2C5    E3 58           JECXZ SHORT hsreg.0058E31F                    回车,shift+F9
********************************************************************
0058E31F    8CC9            MOV CX,CS
0058E321    32C9            XOR CL,CL
0058E323    E3 02           JECXZ SHORT hsreg.0058E327
0058E325    EB 66           JMP SHORT hsreg.0058E38D
0058E327    EB 14           JMP SHORT hsreg.0058E33D
0058E329    8B4C24 04       MOV ECX,DWORD PTR SS:[ESP+4]
0058E32D    8B49 04         MOV ECX,DWORD PTR DS:[ECX+4]
0058E330    8381 B8000000 0>ADD DWORD PTR DS:[ECX+B8],2
0058E337    33C0            XOR EAX,EAX
0058E339    48              DEC EAX
0058E33A    C2 0400         RETN 4
0058E33D    60              PUSHAD
0058E33E    E8 1C000000     CALL hsreg.0058E35F                            F7进入
********************************************************************
0058E35F    FFB5 0C233906   PUSH DWORD PTR SS:[EBP+639230C]          ; kernel32.7C800000
0058E365    FF95 FB223906   CALL DWORD PTR SS:[EBP+63922FB]
0058E36B    96              XCHG EAX,ESI
0058E36C    8D85 1A1A3906   LEA EAX,DWORD PTR SS:[EBP+6391A1A]
0058E372    50              PUSH EAX
0058E373    FFD6            CALL ESI
0058E375    97              XCHG EAX,EDI
0058E376    33D2            XOR EDX,EDX
0058E378    F7FA            IDIV EDX
0058E37A    90              NOP
0058E37B    90              NOP
0058E37C    CD 01           INT 1
0058E37E    90              NOP
0058E37F    90              NOP
0058E380    CC              INT3
0058E381    90              NOP
0058E382    90              NOP
0058E383    33C0            XOR EAX,EAX
0058E385    3100            XOR DWORD PTR DS:[EAX],EAX
0058E387    90              NOP
0058E388    90              NOP
0058E389    57              PUSH EDI
0058E38A    FFD6            CALL ESI
0058E38C    61              POPAD                                    F2下断,shift+F9
0058E38D    8BBD 6B213906   MOV EDI,DWORD PTR SS:[EBP+639216B]
0058E393    037F 3C         ADD EDI,DWORD PTR DS:[EDI+3C]
0058E396    8BB5 6B213906   MOV ESI,DWORD PTR SS:[EBP+639216B]
0058E39C    8B4F 54         MOV ECX,DWORD PTR DS:[EDI+54]
0058E39F    8D85 10243906   LEA EAX,DWORD PTR SS:[EBP+6392410]
0058E3A5    50              PUSH EAX
0058E3A6    6A 04           PUSH 4
0058E3A8    51              PUSH ECX
0058E3A9    FFB5 6B213906   PUSH DWORD PTR SS:[EBP+639216B]
0058E3AF    FF95 34233906   CALL DWORD PTR SS:[EBP+6392334]
0058E3B5    F785 73213906 0>TEST DWORD PTR SS:[EBP+6392173],8
0058E3BF   /0F84 A7000000   JE hsreg.0058E46C                        回车,shift+F9
*******************************************************************
0058E46C   /E9 0B000000     JMP hsreg.0058E47C
0058E471   |06              PUSH ES
0058E472   |BB 01000000     MOV EBX,1
0058E477   |E8 08000000     CALL hsreg.0058E484
0058E47C   \8D85 3E1C3906   LEA EAX,DWORD PTR SS:[EBP+6391C3E]
0058E482    50              PUSH EAX
0058E483    C3              RETN
*******************************************************************
0058E54D    8B9D 6B213906   MOV EBX,DWORD PTR SS:[EBP+639216B]       ; hsreg.00400000
0058E553    039D 6F213906   ADD EBX,DWORD PTR SS:[EBP+639216F]
0058E559    C1CB 07         ROR EBX,7                             查看信息窗口,此时EBX=00570000便是ACProtect壳的入口
0058E55C    895C24 10       MOV DWORD PTR SS:[ESP+10],EBX
0058E560    8D9D 391F3906   LEA EBX,DWORD PTR SS:[EBP+6391F39]
0058E566    895C24 1C       MOV DWORD PTR SS:[ESP+1C],EBX
0058E56A    8BBD 6B213906   MOV EDI,DWORD PTR SS:[EBP+639216B]
0058E570    037F 3C         ADD EDI,DWORD PTR DS:[EDI+3C]
0058E573    8B9F C0000000   MOV EBX,DWORD PTR DS:[EDI+C0]

将0058E559处的ROR EBX,7改成JMP EBX,单步F8便可到达ACProtect壳的入口
00570000    60              PUSHAD
00570001    50              PUSH EAX
00570002    E8 01000000     CALL hsreg.00570008
00570007  - 72 83           JB SHORT hsreg.0056FF8C
00570009    C40458          LES EAX,FWORD PTR DS:[EAX+EBX*2]         ; 段寄存器修饰
0057000C    23EB            AND EBP,EBX
0057000E    79 02           JNS SHORT hsreg.00570012
00570010    87F5            XCHG EBP,ESI
00570012    40              INC EAX
00570013    66:C1C5 AA      ROL BP,0AA                               ; 位移常数超出 1..31 的范围
00570017    7A 03           JPE SHORT hsreg.0057001C
00570019    7B 01           JPO SHORT hsreg.0057001C
0057001B  - 77 B8           JA SHORT hsreg.0056FFD5
0057001D    D337            SAL DWORD PTR DS:[EDI],CL

查看内存,在Memory map, 项目 21
地址=00401000
大小=0000C000 (49152.)
属主=hsreg    00400000
区段=.text
包含=代码
类型=映像 01001004
访问=RW
初始访问=RWE

下断,shift+F9到达

0040D75F     8A18            MOV BL,BYTE PTR DS:[EAX]
0040D761     40              INC EAX
0040D762     885C24 0C       MOV BYTE PTR SS:[ESP+C],BL
0040D766     8902            MOV DWORD PTR DS:[EDX],EAX
0040D768     8B42 08         MOV EAX,DWORD PTR DS:[EDX+8]
………
0040D789     73 D2           JNB SHORT hsreg.0040D75D         F4跳过

………
0040D7AE     5E              POP ESI
0040D7AF     59              POP ECX
0040D7B0     C2 0400         RETN 4                            一路F8到这
***************************************************
0040DB1F     85C0            TEST EAX,EAX
0040DB21     75 0E           JNZ SHORT hsreg.0040DB31
0040DB23     8BBB 60020000   MOV EDI,DWORD PTR DS:[EBX+260]
0040DB29     B9 BD000000     MOV ECX,0BD

…………
0040DB7E     02D0            ADD DL,AL
0040DB80     80E2 0F         AND DL,0F
0040DB83     885434 24       MOV BYTE PTR SS:[ESP+ESI+24],DL
0040DB87     46              INC ESI
0040DB88     EB 60           JMP SHORT hsreg.0040DBEA


0040DBEA     81FE F5020000   CMP ESI,2F5
0040DBF0   ^ 0F8C 73FFFFFF   JL hsreg.0040DB69                    F4跳过   
0040DBF6     8D5424 24       LEA EDX,DWORD PTR SS:[ESP+24]   
………………
………………



一路F8,遇到往上的就F4一直走到

0040D3A7     0BC9            OR ECX,ECX
0040D3A9     8985 A8030000   MOV DWORD PTR SS:[EBP+3A8],EAX
0040D3AF     61              POPAD
0040D3B0     75 08           JNZ SHORT hsreg.0040D3BA
0040D3B2     B8 01000000     MOV EAX,1
0040D3B7     C2 0C00         RETN 0C
0040D3BA     68 24114000     PUSH hsreg.00401124
0040D3BF     C3              RETN                             
***********************************************************************************

00401124     55              PUSH EBP                                程序真正的OEP
00401125     8BEC            MOV EBP,ESP
00401127     6A FF           PUSH -1
00401129     68 C7104000     PUSH hsreg.004010C7
0040112E     68 CB104000     PUSH hsreg.004010CB
00401133     64:A1 00000000  MOV EAX,DWORD PTR FS:[0]
00401139     50              PUSH EAX
0040113A     64:8925 0000000>MOV DWORD PTR FS:[0],ESP
00401141     58              POP EAX
00401142     58              POP EAX
00401143     58              POP EAX
00401144     58              POP EAX
00401145     58              POP EAX
00401146     53              PUSH EBX
00401147     56              PUSH ESI
00401148     57              PUSH EDI
00401149     BB 00B04000     MOV EBX,hsreg.0040B000



LordPE脱壳    ImportREC修复,IAT全部有效,修复完成后,程序正常运行!

评分

参与人数 1威望 +4 飘云币 +28 收起 理由
wangyuankai + 4 + 28 PYG有你更精彩!

查看全部评分

PYG19周年生日快乐!
  • TA的每日心情
    开心
    2016-4-11 20:07
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2008-9-13 22:29:30 | 显示全部楼层
    我在站务版块转过来的。版主们请自行查看帖子内容。
    PYG19周年生日快乐!

    该用户从未签到

     楼主| 发表于 2008-9-13 23:47:31 | 显示全部楼层
    谢谢啊~真是忠心的感谢
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-9-14 08:08:00 | 显示全部楼层
    第一步 BP VirtualFree  Shift+F9 断下后返回
    第二步 Ctrl+S popad  已经是OEP的出口了
    PYG19周年生日快乐!

    该用户从未签到

     楼主| 发表于 2008-9-14 11:45:16 | 显示全部楼层

    回复 4# 的帖子

    试了下您说的方法~我这运行起来不行~
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-9-14 11:59:41 | 显示全部楼层
    那就算了~ 能脱就行。各有各的方法。
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2015-8-3 23:07
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2008-9-14 14:19:43 | 显示全部楼层
    原帖由 Luckly 于 2008-9-14 11:59 发表
    那就算了~ 能脱就行。各有各的方法。

    /:018
    /:018 /:018 /:018 /:018
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2017-5-9 01:01
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    发表于 2008-9-14 23:04:38 | 显示全部楼层
    是的各有各的方法,有些方法不是能一两句就能说得清楚的
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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