飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 3942|回复: 5

[求助] dll插件类型软件破解的一般思路(个人分析已写出)

[复制链接]
  • TA的每日心情
    难过
    2022-2-6 09:25
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2008-6-18 13:35:54 | 显示全部楼层 |阅读模式
    PDFcamp Printer,可以将doc、xls、ppt、txt文档直接“打印”成pdf文件,未注册版本试用30天,且转换后的pdf文件有水印。程序只有几百K,安装后在安装目录中没有主文件,经过半天的摸索才找到如何注册,汗,呵呵,随便打开一个word文档,选择“文件”——“打印(Ctrl+P)”,调出打印框后点“属性”可以看到它的界面,在About选项卡中就有注册框了,如图1
    未命名.jpeg (29.95 KB, 下载次数: 23)
        大家看到了,只有一个文本框,没有机器码和用户名输入提示,输入任意假码后点“Register”,弹出提示框 “Your register number error ...”,用Wsyscheck查看word.exe加载的模块发现两个可疑dll—— pdfui.dll和pdfprn.dll(而且这两个文件是加了UPX壳的),由此猜测它是dll文件注册类型.

        至此开始尝试之旅了:
        OD附加word.exe,bp MessageBoxA下断后点注册,OD提示断下,Alt+F9返回后到此
    1. 7718A6E9    56              PUSH ESI
    2. 7718A6EA    FF37            PUSH DWORD PTR DS:[EDI]
    3. 7718A6EC    FF15 B0141877   CALL DWORD PTR DS:[<&USER32.IsDialogMess>; USER32.IsDialogMessageW
    4. 7718A6F2    F7D8            NEG EAX
    5. 7718A6F4    1BC0            SBB EAX,EAX               ********停到此处*******
    6. 7718A6F6    F7D8            NEG EAX
    7. 7718A6F8    5F              POP EDI
    8. 7718A6F9    5B              POP EBX
    9. 7718A6FA    5E              POP ESI
    10. 7718A6FB    5D              POP EBP
    11. 7718A6FC    C2 0800         RETN 8
    复制代码
    F8单步走却发现一直都是在模块Comct132中来回绕,根本找不到任何有用信息。

        没办法,只有换种思路,尝试使用PointH断点,点击注册后OD断下,F8单步步过,企图回到关键点,但是当F8到这里时却弹出了错误提示窗口,可是从断下到现在还一直都在USER32.dll里面转呢,都还没走出去,晕啊
    1. 77D2D2DA    6A 00           push    0
    2. 77D2D2DC    6A 0C           push    0C
    3. 77D2D2DE    5A              pop     edx
    4. 77D2D2DF    8D8D F0F7FFFF   lea     ecx, dword ptr [ebp-810]
    5. 77D2D2E5    8985 F0F7FFFF   mov     dword ptr [ebp-810], eax
    6. 77D2D2EB    E8 B4C1FEFF     call    77D194A4                *****提示注册码错误*****
    7. 77D2D2F0    8B4D FC         mov     ecx, dword ptr [ebp-4]
    8. 77D2D2F3    5E              pop     esi
    9. 77D2D2F4    E8 7BB3FEFF     call    77D18674
    10. 77D2D2F9    C9              leave
    11. 77D2D2FA    C2 0400         retn    4
    复制代码
    不得已,再换一种思路,用MFCSpy(经过研究发现此公司的软件一般都是VC++编写的),可是用了之后才发现只能找到注册按钮的ID号,却无法找到按钮的点击事件入口点,至此,彻底没思路了!

        其实对于处理这类没有主程序,只是作为别的软件插件的东东,我一直都很迷茫,也几乎很少见到有人写这种类型软件破解的一般思路总结或者类似的教程等,所以,在此请教高手指点一二,如果有大侠觉得这个问题有代表性的话愿意为论坛贡献一篇类似教程或总结,我相信肯定是篇精华帖哦o(∩_∩)o...

    注:
       此程序网上注册码几年前早有流传,今天我拿它来举例,只是觉得它程序小又具有代表性,为了便于高手讲解也方便自己学习,请斑竹不要误会(*^__^*) 嘻嘻……

    附件: pdfcamp_setup.part1.rar (300 KB, 下载次数: 37) pdfcamp_setup.part2.rar (242.4 KB, 下载次数: 32)
    PYG19周年生日快乐!
  • TA的每日心情
    难过
    2022-2-6 09:25
  • 签到天数: 6 天

    [LV.2]偶尔看看I

     楼主| 发表于 2008-6-18 13:51:23 | 显示全部楼层
    这个问题的解决思路肯定有多种,在看雪论坛上sessiondiy兄弟提供了一种针对C类程序的常规思路,就是下GetWindowTextA断点,经测试可行/:good
       欢迎大家接着来,继续提供自己的分析思路和方法,毕竟多角度分析才能进步更快,举一反三,加油!

    评分

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

    查看全部评分

    PYG19周年生日快乐!
  • TA的每日心情
    难过
    2022-2-6 09:25
  • 签到天数: 6 天

    [LV.2]偶尔看看I

     楼主| 发表于 2008-6-18 15:21:04 | 显示全部楼层
    关于本软件的详细破解分析,我已经做出教程,大家有兴趣可以看一下
    https://www.chinapyg.com/viewthr ... e%3D1&frombbs=1

    算法很简单,但这毕竟是我接触破解一年多以来的**作,希望大家不要取笑哦/:013
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-6-18 15:37:53 | 显示全部楼层
    不错 其实搞DLL和搞文件自身的下端思路基本是相同的 还是下API或分析 DLL的字符串提示 一般都得附加来搞 如果壳反调试 将会很难搞

    PDFcamp Printer (PDF Writer) 2.2
    华军下载:http://nj.onlinedown.net/soft/67939.htm
    官方下载:http://www.verypdf.com/pdfcamp/pdfcamp.htm
    PYG19周年生日快乐!
  • TA的每日心情
    难过
    2022-2-6 09:25
  • 签到天数: 6 天

    [LV.2]偶尔看看I

     楼主| 发表于 2008-6-18 16:39:29 | 显示全部楼层
    嗯,谢谢坛主的关心
    如果dll构造的算法很难的话,那岂不是也会增加破解门槛的吗?/:018
    那么以后如果要发行插件,还是加穿山甲、老王壳或者TMD的最新版,反调试功能强,脱壳修复困难,那样要相对保险好多倍,嗯,加解密本来就是矛和盾一家,给共享软件的开发提点小建议,嘿嘿~~~

    [ 本帖最后由 playboysen 于 2008-6-18 17:24 编辑 ]
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2022-10-19 14:02
  • 签到天数: 240 天

    [LV.8]以坛为家I

    发表于 2008-6-27 22:21:34 | 显示全部楼层
    不错。进来支持一下楼主。
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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