904897560 发表于 2012-4-7 16:15

打开破解的思路之门(非原创)

觉得这文章好,分享一下~~~觉得好的就顶一下吧~~
打开破解的思路之门


按钮事件:程序通过按钮触发一系列事情经过就叫做按钮事件,那么这个按钮就叫做事件按钮。1、有注册错误/正确提示       用户输入信息          |||||   软件判断是否正确(je/jne/jz/jnz...)          ||||| Y-------------------N |||||            |||||正确提示         错误提示 如果事先找不到按钮事件,可以通过下消息断点,返回后回嗍即可找到按钮事件起始位置。 bp MessageBoxAbp rtcMsgBox      (VB语言)*********************************************************************2、无任何提示bp GetDlgItem        用户输入信息          |||||信息保存(reg/ini/dll...)          |||||   Y--------------N   |||||          |||||   无提示         无提示           或者|||||             |||||   -----------------          |||||提示信息保存,需要重启 $$$$$$下次启动的时候来判断Y/N$$$$$$可以通过bp GetDlgItem获取按钮事件代码*********************************************************************3、未注册一启动或者关闭就跳出个注册框或者提示框   bp RegOpenKey(A)   bp CreateFileA   bp GetPrivateProfileStringA 软件启动的时候,是怎么知道自动打开注册框或者提示框的呢?那么他在启动的时候一定是读取到某个东西来判断的是什么东西?reg/ini/dll/其他至于保存到什么文件,可以使用以下方法1、查找字符串,看是否有可疑文件名或者注册表键名2、猜。。。下断点观察3、按钮事件跟踪*********************************************************************4、未注册一启动或者关闭就打开网页链接断点:bp ShellExecuteA类似的组合 Cmp/test/其他判断Je/jne/jne/jz XXXXXXXX00409D4E   68 48B54300PUSH 0043B548            ;ASCII "http://www.*.com"00409D53   68 40B54300PUSH 0043B540            ;ASCII "open"00409D58   50 PUSH EAX00409D59   FF1528134300 CALL DWORD PTR DS:[<&SHELL32.ShellExecuteA>]   ;SHELL32.ShellExecuteA 软件启动---判断是否注册---是否Open 断下后回嗍代码即可找到关键点,常用的方法,转存跟踪法。*********************************************************************5、未注册就功能使用限制 判断是否注册---某种功能是否让你使用---如果不能够用,一定会有提示的,或是错误提示或是弹出注册框等。 那么从提示入手即可找到解除限制的关键。 不完美破解:解除功能限制*********************************************************************6、未注册就日期限制   bp GetLocalTime 获取本地时间    bp GetSystemTime 获取系统时间    bp GetFileTime 获取文件时间 一般下这几个断点比较难分析关键捷径:查找字符串--找可疑文件--一般以DLL多见只要不让它读取到这个DLL即可解除限制*********************************************************************7、Demo(演示试用版)--功能残缺 这个和上面的功能限制不一样。功能限制是软件本身就有这个功能,对程序而言,相对应的功能代码也存在Demo即是没这个功能,空架子一个而已。一句话:破解也无用!*********************************************************************8、网络验证 无法登陆有错误提示者:下消息断点回嗍代码,找按钮事件,重新来过,从按钮事件开始跟踪,找网络验证CALL(所需要登陆的地址在这个CALL里面),接下来就是分析返回值或者改登陆地址为本地(127.0.0.1),再后面就需要改某些跳转了。 无法登陆自动退出者:下bp ExitProcess断下(一般可以断下)回嗍代码,找按钮事件,重新来过,从按钮事件开始跟踪,找网络验证CALL(所需要登陆的地址在这个CALL里面),接下来就是分析返回值或者改登陆地址为本地(127.0.0.1),再后面就需要改某些跳转了*********************************************************************9、狗加密 一般狗加密软件,一启动就会检测所需要的狗文件,若没有狗文件,提示错误这里我们有两个入手点1、“一启动就会检测所需要的狗文件”下bp CreateFileA等断点,断下后回嗍2、“若没有狗文件,提示错误”,下bp MessageBoxA,断下后,回嗍*********************************************************************总结: 从上面的介绍说明可以看出,有这么一个共同点---按钮事件可以这么说,按钮事件是我们的思路之门按钮事件可以这样得来:1、            通过下相应断点,回嗍代码2、            通过辅助工具快捷的得到(VBExplorer、DEDE) 按钮事件断得下来,断得正确

Chief 发表于 2012-4-7 16:20

//、不错,蛮全的。顶下

爱的单纯 发表于 2012-4-7 16:22

感谢楼主分享,学习了

1354669803 发表于 2012-4-7 16:32

虽然一点也看不懂但是支持了

飞龙使者 发表于 2012-4-7 16:34

一般软件启动的时候会读注册表或文件什么的有一个判断
改那个最直接了

297044530 发表于 2012-4-7 17:07

很好的总结 值得学习研究啊

qrh19980111 发表于 2012-4-7 18:25

虽然知道,但是还是谢谢楼主的分享!~

qq290305221 发表于 2012-4-7 18:47

看看。看看。。。

riguang2b 发表于 2012-4-7 22:10

我觉得不错哦。

josong 发表于 2012-4-7 22:20

谢谢整理!很受用
替我节省不少时间
{:1_921:}
页: [1] 2 3
查看完整版本: 打开破解的思路之门(非原创)