飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 156975|回复: 29

[原创] 咸菜馆超级网络电视3.5.3破解教程

[复制链接]

该用户从未签到

发表于 2007-4-22 22:04:30 | 显示全部楼层 |阅读模式
【文章标题】: 咸菜馆超级网络电视3.5.3追码教程
【文章作者】: 风&行者
【作者邮箱】: 神秘工作室
【作者QQ号】: 5150033
【软件名称】: 咸菜馆超级网络电视3.5.3
【下载地址】:
【加壳方式】: ASPack 2.12 +自校验
【编写语言】: VB
【使用工具】: PEID,OD,ImportREC,LordPE
【操作平台】: XP
【作者声明】: 我是一只小菜鸟,没什么技术含量,还望高手制作出算法注册机
--------------------------------------------------------------------------------
【详细过程】
  一、脱壳
  1、用ESP定律到达OEP,lordpe脱壳,IMC修复(OEP处填写48F0,RAV默认),此时OD不要关
  004048F0    68 DC8E4100        push XCGTV.00418EDC      ==>OEP处
  004048F5    E8 F0FFFFFF        call XCGTV.004048EA                            ; jmp to msvbvm60.ThunRTMain
  004048FA    0000               add byte ptr ds:[eax],al
  004048FC    48                 dec eax
  004048FD    0000               add byte ptr ds:[eax],al
  004048FF    0030               add byte ptr ds:[eax],dh
  00404901    0000               add byte ptr ds:[eax],al
  00404903    0040 00            add byte ptr ds:[eax],al
  00404906    0000               add byte ptr ds:[eax],al
  00404908    0000               add byte ptr ds:[eax],al
  0040490A    0000               add byte ptr ds:[eax],al
  试运行脱壳并修复过的软件,一闪而过,初步断定有自校验。
  
  2、去自校验:通用对比法(就是将已经触发自校检的程序与原来正常的程序进行关键跳转对比)
  用另一个OD打开脱壳后的程序dumped_.EXE,下断BP CreateFileA,F9四次后出现出错。CTRL+F2重新载入
  dumped_.EXE,下断BP reateFileA,F9三次。这时第一个OD命令中也下断BP CreateFileA,F9三次,这时两个OD
  停在同一个地方,ALT+F9返回,然后在两个OD中逐步单步跟踪,碰到JE、JNE、JBE...之类的关键跳转要对比一下两者的区别。
  7C801A24 >  8BFF               mov edi,edi    ;三次F9后断在这里,ALT+F9返回
  7C801A26    55                 push ebp
  7C801A27    8BEC               mov ebp,esp
  7C801A29    FF75 08            push dword ptr ss:[ebp+8]
  ================================================================
  逐步F8,跟到下面的代码时,发现两个跳转不一样
  004D53E9   /0F85 91000000      jnz XCGTV.004D5480    ; 原版这个地方信息窗口提示:跳转没有实现
  004D53EF   |833D 3C7E5300 00   cmp dword ptr ds:[537E3C],0
  004D53F6   |75 0F              jnz short XCGTV.004D5407
  004D53F8   |68 3C7E5300        push XCGTV.00537E3C
  004D53FD   |68 042D4200        push XCGTV.00422D04
  004D5402   |E8 A3F2F2FF        call XCGTV.004046AA                           
  ========================================================
  004D53E9   /0F85 91000000      jnz dumped_.004D5480     ;  脱壳版这个地方信息窗口提示:跳转已经实现
  004D53EF   |833D 3C7E5300 00   cmp dword ptr ds:[537E3C],0
  004D53F6   |75 0F              jnz short dumped_.004D5407
  004D53F8   |68 3C7E5300        push dumped_.00537E3C
  004D53FD   |68 042D4200        push dumped_.00422D04
  004D5402   |E8 A3F2F2FF        call <jmp.&msvbvm60.__vbaNew2>
  这时将脱壳版004D53E9处代码NOP掉后另存为unpack.exe。
  试着运行一下,如果正常完事,还不行的话继续跟踪下去。该例只改这一处。
  
  二、破解
  OD载入修复好的unpack.exe,F9运行,中间碰到几次异常,shift+F9过,直至弹出主界面,输入假的注册码1234567890
  命令行下断点bp __vbaVarTstEq,点注册认证,程序断下,ALT+F9返回,注意观察,向上找到1669C6C0,下断
  1669C6C0    55                 push ebp    ;重新运行程序,输入假的注册码,在这里下断,F8继续向下走,注意观察
  1669C6C1    8BEC               mov ebp,esp
  1669C6C3    83EC 0C            sub esp,0C
  1669C6C6    68 06186916        push pcy.16691806                              ; jmp to msvbvm60.__vbaExceptHandler
  1669C6CB    64:A1 00000000     mov eax,dword ptr fs:[0]
  1669C6D1    50                 push eax
  1669C6D2    64:8925 00000000   mov dword ptr fs:[0],esp
  1669C6D9    81EC 88000000      sub esp,88
  1669C6DF    53                 push ebx
  1669C6E0    56                 push esi
  1669C6E1    57                 push edi
  1669C6E2    8965 F4            mov dword ptr ss:[ebp-C],esp
  1669C6E5    C745 F8 F0126916   mov dword ptr ss:[ebp-8],pcy.166912F0
  1669C6EC    33DB               xor ebx,ebx
  1669C6EE    895D FC            mov dword ptr ss:[ebp-4],ebx
  1669C6F1    8B75 08            mov esi,dword ptr ss:[ebp+8]
  1669C6F4    56                 push esi
  1669C6F5    8B06               mov eax,dword ptr ds:[esi]
  1669C6F7    FF50 04            call dword ptr ds:[eax+4]
  1669C6FA    8B4E 44            mov ecx,dword ptr ds:[esi+44]
  1669C6FD    895D E8            mov dword ptr ss:[ebp-18],ebx
  1669C700    51                 push ecx
  1669C701    68 704E6916        push pcy.16694E70
  1669C706    895D E4            mov dword ptr ss:[ebp-1C],ebx
  1669C709    895D E0            mov dword ptr ss:[ebp-20],ebx
  1669C70C    895D DC            mov dword ptr ss:[ebp-24],ebx
  1669C70F    895D D8            mov dword ptr ss:[ebp-28],ebx
  1669C712    895D D4            mov dword ptr ss:[ebp-2C],ebx
  1669C715    895D C4            mov dword ptr ss:[ebp-3C],ebx
  1669C718    895D B4            mov dword ptr ss:[ebp-4C],ebx
  1669C71B    895D A4            mov dword ptr ss:[ebp-5C],ebx
  1669C71E    895D 94            mov dword ptr ss:[ebp-6C],ebx
  1669C721    895D 84            mov dword ptr ss:[ebp-7C],ebx
  1669C724    899D 74FFFFFF      mov dword ptr ss:[ebp-8C],ebx
  1669C72A    FF15 D0106916      call dword ptr ds:[166910D0]                   ; msvbvm60.__vbaStrCmp
  1669C730    85C0               test eax,eax
  1669C732    75 0A              jnz short pcy.1669C73E
  1669C734    E8 37530100        call pcy.166B1A70
  1669C739    E9 95010000        jmp pcy.1669C8D3
  1669C73E    8B16               mov edx,dword ptr ds:[esi]
  1669C740    8D45 DC            lea eax,dword ptr ss:[ebp-24]
  1669C743    50                 push eax
  1669C744    56                 push esi
  1669C745    FF92 EC070000      call dword ptr ds:[edx+7EC]
  1669C74B    3BC3               cmp eax,ebx
  1669C74D    7D 12              jge short pcy.1669C761
  1669C74F    68 EC070000        push 7EC
  1669C754    68 084C6916        push pcy.16694C08
  1669C759    56                 push esi
  1669C75A    50                 push eax
  1669C75B    FF15 60106916      call dword ptr ds:[16691060]                   ; msvbvm60.__vbaHresultCheckObj
  1669C761    8B4D DC            mov ecx,dword ptr ss:[ebp-24]
  1669C764    8B56 44            mov edx,dword ptr ds:[esi+44]
  1669C767    51                 push ecx
  1669C768    52                 push edx
  1669C769    FF15 4C106916      call dword ptr ds:[1669104C]                   ; msvbvm60.__vbaStrCat
  1669C76F    8B3D AC116916      mov edi,dword ptr ds:[166911AC]                ; msvbvm60.__vbaStrMove
  1669C775    8BD0               mov edx,eax
  1669C777    8D4D D8            lea ecx,dword ptr ss:[ebp-28]
  1669C77A    FFD7               call edi
  1669C77C    8B06               mov eax,dword ptr ds:[esi]
  1669C77E    8D4D D4            lea ecx,dword ptr ss:[ebp-2C]
  1669C781    8D55 D8            lea edx,dword ptr ss:[ebp-28]
  1669C784    51                 push ecx
  1669C785    52                 push edx
  1669C786    56                 push esi
  1669C787    FF90 24080000      call dword ptr ds:[eax+824]
  1669C78D    8B55 D4            mov edx,dword ptr ss:[ebp-2C]
  1669C790    8D4D E4            lea ecx,dword ptr ss:[ebp-1C]   ;这里EDX出现真正
                                                                                           的注册码FF0261CE80B82A8FB04BC850661879EC850C3BE8
  1669C793    895D D4            mov dword ptr ss:[ebp-2C],ebx
  1669C796    FFD7               call edi
  1669C798    8D45 D8            lea eax,dword ptr ss:[ebp-28]
  1669C79B    8D4D DC            lea ecx,dword ptr ss:[ebp-24]
  1669C79E    50                 push eax
  1669C79F    51                 push ecx
  1669C7A0    6A 02              push 2
  1669C7A2    FF15 48116916      call dword ptr ds:[16691148]                   ; msvbvm60.__vbaFreeStrList
  1669C7A8    B9 0A000000        mov ecx,0A
  1669C7AD    B8 04000280        mov eax,80020004
  1669C7B2    51                 push ecx
  1669C7B3    894D 84            mov dword ptr ss:[ebp-7C],ecx
  1669C7B6    8BD4               mov edx,esp
  1669C7B8    8945 8C            mov dword ptr ss:[ebp-74],eax
  1669C7BB    68 2C516916        push pcy.1669512C                              ; UNICODE "LiberationKey"
  1669C7C0    68 F8506916        push pcy.166950F8                              ; UNICODE "ActiveLock"
  1669C7C5    890A               mov dword ptr ds:[edx],ecx
  1669C7C7    8B4D 88            mov ecx,dword ptr ss:[ebp-78]
  1669C7CA    894A 04            mov dword ptr ds:[edx+4],ecx
  1669C7CD    8B4E 44            mov ecx,dword ptr ds:[esi+44]
  1669C7D0    51                 push ecx
  1669C7D1    8942 08            mov dword ptr ds:[edx+8],eax
  1669C7D4    8B45 90            mov eax,dword ptr ss:[ebp-70]
  1669C7D7    8942 0C            mov dword ptr ds:[edx+C],eax
  1669C7DA    FF15 70116916      call dword ptr ds:[16691170]                   ; msvbvm60.rtcGetSetting
  1669C7E0    8BD0               mov edx,eax
  1669C7E2    8D4D E0            lea ecx,dword ptr ss:[ebp-20]
  1669C7E5    FFD7               call edi
  1669C7E7    0FBF46 48          movsx eax,word ptr ds:[esi+48]
  1669C7EB    8D55 E4            lea edx,dword ptr ss:[ebp-1C]
  1669C7EE    8D4D 84            lea ecx,dword ptr ss:[ebp-7C]
  1669C7F1    8955 8C            mov dword ptr ss:[ebp-74],edx
  1669C7F4    50                 push eax
  1669C7F5    8D55 C4            lea edx,dword ptr ss:[ebp-3C]
  1669C7F8    51                 push ecx
  1669C7F9    52                 push edx
  1669C7FA    C745 84 08400000   mov dword ptr ss:[ebp-7C],4008
  1669C801    FF15 A0116916      call dword ptr ds:[166911A0]                   ; msvbvm60.rtcLeftCharVar
  1669C807    8B3D CC106916      mov edi,dword ptr ds:[166910CC]                ; msvbvm60.rtcUpperCaseVar
  1669C80D    8D45 C4            lea eax,dword ptr ss:[ebp-3C]
  1669C810    8D4D B4            lea ecx,dword ptr ss:[ebp-4C]
  1669C813    50                 push eax
  1669C814    51                 push ecx
  1669C815    FFD7               call edi
  1669C817    8D85 74FFFFFF      lea eax,dword ptr ss:[ebp-8C]
  1669C81D    8D4D A4            lea ecx,dword ptr ss:[ebp-5C]
  1669C820    8D55 E0            lea edx,dword ptr ss:[ebp-20]
  1669C823    50                 push eax
  1669C824    51                 push ecx
  1669C825    8995 7CFFFFFF      mov dword ptr ss:[ebp-84],edx
  1669C82B    C785 74FFFFFF 0840>mov dword ptr ss:[ebp-8C],4008
  1669C835    FFD7               call edi
  1669C837    8D55 B4            lea edx,dword ptr ss:[ebp-4C]
  1669C83A    8D45 A4            lea eax,dword ptr ss:[ebp-5C]
  1669C83D    52                 push edx
  1669C83E    50                 push eax
  1669C83F    FF15 D4106916      call dword ptr ds:[166910D4]                   ; msvbvm60.__vbaVarTstEq
  1669C845    8D4D A4            lea ecx,dword ptr ss:[ebp-5C]
  1669C848    8D55 B4            lea edx,dword ptr ss:[ebp-4C]
  1669C84B    66:8BF8            mov di,ax
  1669C84E    51                 push ecx
  1669C84F    52                 push edx
  1669C850    8D45 C4            lea eax,dword ptr ss:[ebp-3C]
  1669C853    50                 push eax
  1669C854    6A 03              push 3
  1669C856    FF15 2C106916      call dword ptr ds:[1669102C]                   ; msvbvm60.__vbaFreeVarList
  1669C85C    83C4 10            add esp,10
  1669C85F    66:3BFB            cmp di,bx
  我的机器码741FF7
  注册码FF0261CE80B82A8FB04BC850661879EC850C3BE8
  另外,软件作者防了一招,作出的内存注册机会被软件检测到,以前的版本也是这样,呵呵,真是用心良苦啊:)
如果像3.5.2一样的方法爆破,虽然软件能显示[全功能版]和注册用户,但VIP电影还是不能选.这是新版本的特别之处!
  
  
  
  
  
--------------------------------------------------------------------------------
【版权声明】: 本文原创于PYG论坛, 转载请注明作者并保持文章的完整, 谢谢!

[ 本帖最后由 suyajun 于 2007-4-22 22:29 编辑 ]

评分

参与人数 1威望 +8 飘云币 +20 收起 理由
kiss-you + 8 + 20 您的贴子很精彩,希望能再次分享!

查看全部评分

PYG19周年生日快乐!

该用户从未签到

发表于 2007-4-22 22:39:06 | 显示全部楼层
高,学习~~
PYG19周年生日快乐!

该用户从未签到

发表于 2007-4-22 22:47:32 | 显示全部楼层
牛..严重学习.....
脱壳后...去除...效验好简单...
PYG19周年生日快乐!

该用户从未签到

发表于 2007-4-22 22:53:49 | 显示全部楼层
学习中`~
牛人,支持~
PYG19周年生日快乐!

该用户从未签到

发表于 2007-4-22 23:05:09 | 显示全部楼层
/:12 有点看不懂,支持一下/:12
PYG19周年生日快乐!

该用户从未签到

发表于 2007-4-22 23:06:46 | 显示全部楼层
我想问一下楼主,为什么我刚才下的是3.5.2版本?
PYG19周年生日快乐!
  • TA的每日心情
    开心
    2016-4-24 21:35
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    发表于 2007-4-23 00:32:14 | 显示全部楼层
    高,不到一天就破掉了,厉害!!
    PYG19周年生日快乐!

    该用户从未签到

     楼主| 发表于 2007-4-23 06:31:06 | 显示全部楼层

    回复 #6 qq500com 的帖子

    你直接点它主页面上方的那个大的图片,那里有个超链接,指向的就是3.5.3版本
    PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2019-3-25 06:30
  • 签到天数: 1096 天

    [LV.10]以坛为家III

    发表于 2007-4-23 06:52:28 | 显示全部楼层
    厉害,牛人。
    PYG19周年生日快乐!
  • TA的每日心情
    难过
    昨天 08:31
  • 签到天数: 2246 天

    [LV.Master]伴坛终老

    发表于 2007-4-23 07:00:23 | 显示全部楼层
    真厉害,学习打印出来漫漫对比着看
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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