飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2721|回复: 0

[yayazhi申请加入]Themida 1.8.x.x -> Oreans Technologies脱壳

[复制链接]
  • TA的每日心情

    2017-7-19 15:45
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2009-3-25 21:03:00 | 显示全部楼层 |阅读模式
    破解作者】 yayazhi
    【作者邮箱】 [email protected]
    【使用工具】 TheOD,ImportREC v1.7c,PEiD0.94
    【破解平台】 WinXP SP3
    【破解软件】 QQ游戏通用刷分器包月版
    【软件介绍】 QQ外挂
    【保护方式】 Themida 1.8.x.x -> Oreans Technologies
    【破解声明】 我是一只小菜鸟,偶得一点经验愿与大家分享,失误之处敬请各位大侠多多指教
    ========================================================================================
    1.PEID查壳
    Themida 1.8.x.x -> Oreans Technologies *


    2.脱壳
    ========================================================================================
    OD载入停在这里


    006AC014 >  B8 00000000     mov eax, 0 <---------停在这里
    006AC019    60              pushad
    006AC01A    0BC0            or eax, eax
    006AC01C    74 68           je short QQ游戏通.006AC086
    006AC01E    E8 00000000     call QQ游戏通.006AC023
    006AC023    58              pop eax
    006AC024    05 53000000     add eax, 53
    006AC029    8038 E9         cmp byte ptr ds:[eax], 0E9
    006AC02C    75 13           jnz short QQ游戏通.006AC041
    006AC02E    61              popad
    006AC02F    EB 45           jmp short QQ游戏通.006AC076
    006AC031    DB2D 37C06A00   fld tbyte ptr ds:[6AC037]

    打开内存code段下内存写入断点;Shift+F9,小心被壳检测到,要隐藏好od哦:)

    0083D829    F3:A4           rep movs byte ptr es:[edi], byte ptr ds:><-在这里F7,F8各一次,再Shift+F9;
    0083D82B    C685 71096908 5>mov byte ptr ss:[ebp+8690971], 56
    0083D832    68 396D1FD4     push D41F6D39
    0083D837    FFB5 31356908   push dword ptr ss:[ebp+8693531]
    0083D83D    8D85 72EC6D08   lea eax, dword ptr ss:[ebp+86DEC72]
    0083D843    FFD0            call eax
    0083D845    68 00800000     push 8000
    0083D84A    6A 00           push 0
    0083D84C    52              push edx


    0084F93C    8908            mov dword ptr ds:[eax], ecx<-------到了这里
    0084F93E    AD              lods dword ptr ds:[esi]
    0084F93F    C746 FC 0000000>mov dword ptr ds:[esi-4], 0
    0084F946    89B5 C50C6908   mov dword ptr ss:[ebp+8690CC5], esi
    0084F94C    83F8 FF         cmp eax, -1
    0084F94F    0F85 20000000   jnz QQ游戏通.0084F975
    0084F955    813E DDDDDDDD   cmp dword ptr ds:[esi], DDDDDDDD
    0084F95B    0F85 14000000   jnz QQ游戏通.0084F975
    0084F961    C706 00000000   mov dword ptr ds:[esi], 0

    取消内存断点,接着F8往下,不要打断跳转,直到下面


    0084EEE1    C785 B9116908 0>mov dword ptr ss:[ebp+86911B9], 0        ; 到这注意了
    0084EEEB    C785 01116908 0>mov dword ptr ss:[ebp+8691101], 0
    0084EEF5    83BD 3A7D7708 0>cmp dword ptr ss:[ebp+8777D3A], 0



    0084EF5B  ^\0F85 EAFFFFFF   jnz QQ游戏通.0084EF4B
    0084EF61    8BC1            mov eax, ecx
    0084EF63    F7D0            not eax
    0084EF65    3985 09076908   cmp dword ptr ss:[ebp+8690709], eax
    0084EF6B    0F84 1D000000   je QQ游戏通.0084EF8E                        ; magic  jmp
    0084EF71    B8 00000000     mov eax, 0
    0084EF76    0BC0            or eax, eax
    0084EF78    0F85 0A000000   jnz QQ游戏通.0084EF88


    0084F0D8    FF95 8D1F6908   call dword ptr ss:[ebp+8691F8D]
    0084F0DE    59              pop ecx
    0084F0DF    5E              pop esi
    0084F0E0    83BD 3D306908 0>cmp dword ptr ss:[ebp+869303D], 1
    0084F0E7    0F84 39000000   je QQ游戏通.0084F126                          这四个je全部nop掉
    0084F0ED    3B8D BD036908   cmp ecx, dword ptr ss:[ebp+86903BD]
    0084F0F3    0F84 2D000000   je QQ游戏通.0084F126
    0084F0F9    3B8D BD046908   cmp ecx, dword ptr ss:[ebp+86904BD]
    0084F0FF    0F84 21000000   je QQ游戏通.0084F126
    0084F105    3B8D 810A6908   cmp ecx, dword ptr ss:[ebp+8690A81]
    0084F10B    0F84 15000000   je QQ游戏通.0084F126
    0084F111    8D9D CB937708   lea ebx, dword ptr ss:[ebp+87793CB]
    0084F117    FFD3            call ebx

    Ctrl+G:ZwFreeVirtualMemory


    7C92D370 >  B8 53000000     mov eax, 53
    7C92D375    BA 0003FE7F     mov edx, 7FFE0300
    7C92D37A    FF12            call dword ptr ds:[edx]
    7C92D37C    C2 1000         retn 10        <-------在这F2

    一直Shift+F9运行,这时要注意EDI的变化,直到EDI有重复的值变化,我这里运行两次就可以了。
    取消F2断点,打开内存在code段下内存访问断点。shift+f9就到OEP了。

    0040B250    68 0CB94000     push QQ游戏通.0040B90C                      ; ASCII "VB5!6&vb6chs.dll"
    0040B255    E8 EEFFFFFF     call QQ游戏通.0040B248
    0040B25A    0000            add byte ptr ds:[eax], al
    0040B25C    68 00000030     push 30000000
    0040B261    0000            add byte ptr ds:[eax], al

    ========================================================================================
    3.修复

    自动查找,找不到有用的信息,手动查找下。把RVA填1000,就能找到,修复可以运行,PEID-Microsoft Visual Basic 5.0 / 6.0。
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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