飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 22803|回复: 60

[转贴] 完美破解共享软件-渗透V3.0

[复制链接]
  • TA的每日心情
    开心
    2024-6-4 09:58
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2007-9-26 20:18:46 | 显示全部楼层 |阅读模式
    完美破解共享软件-渗透V3.0

    今天所破解的软件是"渗透V3.0"
    所用到的工具是:filemon 与Olldy.w32dasm
    ----------------------------------------------
    一.寻找关键跳
      在破解之前.要先对软件进行查壳/脱壳.以前介绍过很多次了.这次就不多说了.脱壳后查找注册时的错误
    提示信息在渗透3.0软件界面中点击工具栏上的"注册"按钮,打开注册对话框.随便输入一个注码码"111-111
    -111-111"确定后弹出错误提示信息"注册码错误,请检查你的注册码"记住该信息,不用管它.关闭注册对话框
    运行反汇编程序W32Dasm.点击菜单"反汇编-打开文件"调入脱壳后的"Unpacked.exe"文件程序自动对调入的
    渗透PMT程序进行反编译.反汇编完成后,点击菜单"参考"-->"串式数据参考"命令,打开串式参考内容清单对
    话框.在串式数据列表中寻找刚才记下的出错提示信息,拖动到列表最底部,可以查看到提示信息"注册码错误
    ",虽然与我们看到的错误提示信息相比不够完整,但是足以确定注册码关键跳位置了.双击该提示信息后来到
    W32Dasm窗口中的相应代码段处.
    -----------------------------------------------
    二.爆破
      向上拖动查看程序代码.来到代码段"004BA2FA"处,在这里可以看到代码语句为"004BA2FA" 7442 je
    04BA33E".机器代码为"74420",对应的汇编语"je 04BA33E",这句就是注册码验证处,只要将汇编语句" je"改
    为"jne"就可以取消注册码验证了.选中该句代码.点击右键,在弹出菜单中选择"Hexedit"命令.在弹出的快速
    字节编辑器对话窗口中,将"修改字节"中的"7442A1DO*********"改为"7542A1DO********"
    修改完毕后,点击"保存"按钮,将修改保存到原文件中,然后点击对话框中的"运行"按钮,重新运行修改过的
    PMT.exe程序.在注册码输入框中输入任意密码.确定后提示"注册成功.请重新启动软件!"
    ------------------------------------------------
    三.分析
    按照一般情况,此时软件已经成功的进行了破解.成为注册版了.然而当我们重启软件后,打开软件注册窗口.
    在注册对话窗口的左上角处依然提示软件未注册.看到软件经过重启后.又变成未注册软件了.由此可以推测
    软件的注册检测手段是非常严格的.软件很有可能是在重启时,又读取了注册表中的某个键值或者硬盘中的某
    个文件,对软件是否正确注册加以判断.如果判断失败.将又重新显示未注册信息.
    ------------------------------------------------
    四.监视到注册标志
      
      在使用RegMon监视注册表时.没有发现什么可疑的键值,具体的过程就不多说了.但是在使用filemon时监
    视硬盘文件时,却发现软件在注册过程中有些不寻常..
      运行filemon软件,在菜单"卷"中勾选"卷C",设置只监视PMT渗透软件的安装目录.取消其它的监视项目.
    然后注册并重新启动软件,查看监视到的硬盘数据读取信息时,可以看到在点击注册时,软件读取了C盘下的
    "C:\
    windows
    \pmt.ini"文件.从文件名一看可知,该文件必定与渗透PMT程序注册有关联.用记事本打
    开"pmt.ini"文件,这是PMT的配置文件.在文件中可以看到文件中的"[S/N]"段处,保存有我们添写的注册码.
    显而易见.软件在注册成功后,将我们输入的注册码保存在了这里,然后当重启时又因此文件中读取这个注册
    码.并经过注册码算法检测,判断是否为正确的注册码.由于我们只爆破了注册时的代码.未爆解启动时的注册
    码检测.导致软件还是不能注册成功.
    -------------------------------------------------
    五.完美爆破
      如何找到启动时的注册码判断代码呢?再次用W32Dasm调入脱壳后的"unpacked.exe"文件,点击菜单"查看"
    -->"查找文本"打开搜索文本对话框.在其中输入要搜索查找的字符串为"S/N".然后点击"查找下一个"按钮.
    很快就定位到的代码段中相应的位置处.不过在程序中共有8处代码段使用到了"S/N"字符,因此通过该字符串
    来判断是查找启动时的关键跳是不行的.
    打开串式数据参考对话窗口,在窗口列表中查找需要的信息,果真看到了"已注册"字符.
    双击该字符串,来到对应的汇编代码处.
    这里有两个"已注册"信息,当然是找最上面的一个了.在第一个"已注册"信息代码段上面不远处.有一个跳转
    语句"004B9BFB 742C je 004B9C29004BA2FA",不用说,这一定是关键跳了!找到了关键跳就好办了.直接用上
    面的方法,点击右键进行修改,将代码中的"74'改为"75"即可!
    保存对程序文件的修改,退出W32Dasm后,重新启动渗透程序.可以看到程序已经成功的注册啦!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-9-27 18:46:45 | 显示全部楼层
    谢谢提供!学习中……
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-9-27 19:45:15 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-9-27 21:14:15 | 显示全部楼层
    慢慢的研究!!!!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-9-27 21:49:57 | 显示全部楼层
    我还是要学习。谢谢楼主
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-9-28 10:54:53 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-9-28 13:12:36 | 显示全部楼层
    这一破解方法应该说很有效,不过我还在深入研究!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-10-1 15:56:15 | 显示全部楼层
    谢谢提供,学习学习..........
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-10-2 23:12:00 | 显示全部楼层
    不错哦,学习了啊
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-10-4 02:05:36 | 显示全部楼层
    虽然看的不太明白,但还是支持
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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