飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 7327|回复: 23

[原创] 精装友情通讯录——SMC另类绿化

  [复制链接]

该用户从未签到

发表于 2010-6-3 13:36:48 | 显示全部楼层 |阅读模式
本帖最后由 ifox 于 2010-6-4 22:58 编辑

【破文标题】精装友情通讯录SMC另类绿化
【破文作者】ifox
破解工具】OD+ZeroAdder
【破解平台】WinXP Sp3
【软件名称】精装友情通讯录
【破解声明】学习技术,无他。

------------------------------------------------------------------------
【破解过程】目前通用的方式是用函数替代法来实现绿化,其实熟悉DOS的朋友应该知道当前目录的路径写法还有另外一个表示".\"即可。

下面就利用SMC的方式,修改软件获取到的系统目录,修改为".\"实现当前目录,从而达到绿化的目的。
=========================================
00514657  |.  68 6CCE5100    push    0051CE6C                         ; |Buffer = jzyq.0051CE6C
0051465C  |.  E8 AB2AEFFF    call    <jmp.&kernel32.GetSystemDirector>; \GetSystemDirectoryA
00514661  |.  8BC6           mov     eax, esi
00514663  |.  BA 6CCE5100    mov     edx, 0051CE6C                    ;  ASCII "C:\WINDOWS\system32"
00514668  |.  B9 81000000    mov     ecx, 81
0051466D  |.  E8 1204EFFF    call    00404A84
00514672  |.  68 904A5100    push    00514A90                         ;  ASCII "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
00514677  |.  FF36           push    dword ptr [esi]
00514679  |.  68 C84A5100    push    00514AC8                         ;  ASCII "\mpdata.dat;Persist Security Info=False;Jet OLEDB:Database Password=dbfec5b91qaz2wsx3edc"
==================================
00514663  |.  BA 6CCE5100    mov     edx, 0051CE6C                    ;  ASCII "C:\WINDOWS\system32"
这里是获取到的系统目录,字符串保存在内存0051CE6C中,我们去修改内存为".\",然后再把结果给EDX。

为了方便,直接使用ZeroAdder增加一个区段.patch,大小100Bytes,PEID查看区段地址,找到在程序中的位置为:005E8000.

修改00514663  |.  BA 6CCE5100    mov     edx, 0051CE6C                            ;  ASCII "C:\WINDOWS\system32"代码为:

00514663    E9 98390D00                jmp     005E8000                           ;跳到我们的代码,修改代码如下:
005E8000    C705 6CCE5100 2E5C0000     mov     dword ptr [51CE6C], 005C2E         ;".\"HEX代码为2E5C,倒着赋值给内存地址,多余的部分给00,这里不显示
005E800A    C705 70CE5100 00000000     mov     dword ptr [51CE70], 0              ;多余的都赋值成00
005E8014    C705 74CE5100 00000000     mov     dword ptr [51CE74], 0
005E801E    C705 78CE5100 00000000     mov     dword ptr [51CE78], 0
005E8028    BA 6CCE5100                mov     edx, 0051CE6C                      ;恢复原来地方的代码
005E802D  - E9 36C6F2FF                jmp     00514668                           ;跳回程序原流程下一行继续执行。

到此完成SMC代码实现绿化。

评分

参与人数 1威望 +40 飘云币 +40 收起 理由
月之精灵 + 40 + 40 您的贴子很精彩,希望能再次分享!

查看全部评分

PYG19周年生日快乐!
  • TA的每日心情
    开心
    2021-2-19 14:43
  • 签到天数: 69 天

    [LV.6]常住居民II

    发表于 2010-6-3 13:50:17 | 显示全部楼层
    这个不错~~简单易懂~
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2010-6-3 14:23:40 | 显示全部楼层
    /:017   这个简单点。
    PYG19周年生日快乐!
  • TA的每日心情

    2016-6-2 20:34
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2010-6-3 15:07:52 | 显示全部楼层
    我也比较喜欢这样的修改方法
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2010-6-3 18:00:16 | 显示全部楼层
    哈哈,这个够绝的!
    PYG19周年生日快乐!
  • TA的每日心情

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

    [LV.1]初来乍到

    发表于 2010-6-3 18:10:14 | 显示全部楼层
    思路很好/:good
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2010-6-3 19:18:10 | 显示全部楼层
    很实用的方法,不 错啊
    PYG19周年生日快乐!
  • TA的每日心情
    慵懒
    2015-10-9 11:25
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2010-6-3 20:54:40 | 显示全部楼层
    这个方法很好,学习了
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2010-6-3 23:05:25 | 显示全部楼层
    虽然不会弄,但大概意思看了。
    多谢楼主的文章
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2010-6-4 00:37:42 | 显示全部楼层
    这个思路不错,哈哈,学习了!谢谢LZ
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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