LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

软件逆向破解零基础入门实战07

admin
2025年12月12日 19:45 本文热度 38
新手学习软件逆向破解零基础入门实战7,本次练习的试验软件非常简单,也非常适合刚学习软件逆向破解的朋友练习。


要求:输入正确的注册码完成注册。难度为一颗星!
打开调试器OllyDBG.EXE,将要调试的程序拖入后,F9运行起来。输入假的注册码 it0365按提示到OD里查字符串找关键位置。
错误提示:Leider Falsch !  Schau noch mal genau nach ...
找字符串时要注意这里
标题中看OD断在哪个模块。如果不在程序模块内,我们就要跳转到程序内存中才可以搜索到字符,不然搜索是其它模块的就找不到关键位置。
如何进入程序模块内?
点击菜单栏上的M到内存窗口看所有程序加载的内容信息和地址。
选择 TEXT段 右键 反汇编查看(回车键)
这里可以看到它是一个VB语言写的程序!
返回到了程序模块后,右键选择中文搜索引擎,这里选智能搜索,这样搜索到的内容更多些。
程序比较简单,搜索到的内容也少。
看到输入假码的错误提示也出现了。我们双击它返回到汇编代码看看是哪里跳转提示这个信息的。

反汇编代码向上翻,看到有个跳转
    00401D8B   .  FF15 5C314000 call dword ptr ds:[<&MSVBVM50.__vbaFreeS>;  MSVBVM50.__vbaFreeStr00401D91   .  8D4D D4       lea ecx,dword ptr ss:[ebp-0x2C]00401D94   .  FF15 60314000 call dword ptr ds:[<&MSVBVM50.__vbaFreeO>;  MSVBVM50.__vbaFreeObj00401D9A   .  66:3BFE       cmp di,si00401D9D   .  0F84 A0000000 je Andréna.00401E4300401DA3   .  FF15 2C314000 call dword ptr ds:[<&MSVBVM50.#534>]     ;  MSVBVM50.rtcBeep00401DA9   .  8B3D 48314000 mov edi,dword ptr ds:[<&MSVBVM50.__vbaVa>;  MSVBVM50.__vbaVarDup00401DAF   .  B9 04000280   mov ecx,0x80020004

    继续向上翻,找到开头下断点
    按下OK按钮,断下后F8往下走。
      00401D73   .  51            push ecx00401D74   .  68 541A4000   push Andréna.00401A54                    ;  SynTaX 2oo100401D79   .  FF15 08314000 call dword ptr ds:[<&MSVBVM50.__vbaStrCm>;  MSVBVM50.__vbaStrCmp

      __vbaStrCmp:字符比较函数

      这里有个固定字符串和输入的假注册码比较,在堆栈窗口看

      往下走,不相等后面的JE就跳转到失败了。这里就是关键位置。

      输入找到的那个固定字符串(SynTaX 2oo1)输入到软件上,看看对不对。


      果真那个就是真的注册码。是不是非常简单?直接就攻下来了。


      ==============================

      软件功能非常简单,下面给大家讲下如何DIY。我们把注册码修改下。比如修改为:gzh:it0365
      在比较的位置
        00401D73   .  51            push ecx00401D74   .  68 541A4000   push Andréna.00401A54                    ;  SynTaX 2oo100401D79   .  FF15 08314000 call dword ptr ds:[<&MSVBVM50.__vbaStrCm>;  MSVBVM50.__vbaStrCmp

        选择
          00401D74
          这里按回车看数据窗口
          我们把这里的数据修改为我们自己的内容,选择要修改的字段右键--二进制--编辑
          修改后的内容:
          但是我们修改的内容没有原字符长,多了个1.直接用00填充即可。填充完后,还要向上翻
          注意这个16,它是字符的长度。我们修改的字符和原字符长度不同,就要修改否则程序在比较时就会出错。
          修改后数据如下:
          改完后,保存新文件即可。
          保存后我们运行新程序,看看效果。
          成功修改了原来的注册码。大家有兴趣也可以给程序做个汉化。使用16进制编辑软件或OD修改,修改时需要注意修改的字符长度。


          阅读原文:原文链接


          该文章在 2025/12/13 8:54:36 编辑过
          关键字查询
          相关文章
          正在查询...
          点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
          点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
          点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
          点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
          Copyright 2010-2025 ClickSun All Rights Reserved