好友
阅读权限 35
听众
最后登录 1970-1-1
风吹屁屁凉
发表于 2008-6-25 15:53
-----------------------------------------------------
--版权所有 Sone
-----------------------------------------------------
[ 破文标题 ] Solid PDF Tools v2.0 标志位爆破教程(参赛作品)
[ 破文作者 ] 风吹屁屁凉
[ 作者邮箱 ] UnPackCn@vip.qq.com
[ 作者主页 ] http://www.52pojie.cn/?a= 风吹屁屁凉
[ 破解 工具 ] OllyDbg
[ 破解平台 ] Windows Xp Sp2
[ 软件名称 ] Solid PDF Tools v2.0
[ 软件大小 ] 1.79M
[ 原版下载 ] http://dl10.filekicker.net/priva ... 0/solidpdftools.exe
[ 保护方式 ] 注册码注册
[ 软件简介 ] 一款很不错的PDF阅读工具.
[ 破解声明 ] 我是一只小菜鸟挖,但我愿意和大家分享我的小经验.
-----------------------------------------------------
[ 破解过程 ]-----------------------------------------
吾爱破解 论坛 www.52pojie.cn
大家好,我是吾爱破解论坛的风吹屁屁凉,一直想找时间给大家做个简单的动画教程,今天总算有了时间,要做的教程是Solid PDF Tools v2.0 标志位爆破教程,一个菜鸟教程,吾爱有很多高手哦,他们的教程才是偶学习的方向,算法才是最高深的,但是初学者应该先学会爆破吧~
好,现在来进如今天的主题,先来看看我们的目标软件,打开后就有注册提示,界面很漂亮哦,我们先点适用,大概了解下软件如果不注册会有哪些限制,这个功能是把PDF格式文件转化成Word文件格式的,不注册上面有显示,看到没?我们再看看软件的注册流程,通过注册码注册的,注册码注册基本都是类似重起验证,就是把你的注册成功的信息保存在一些地方,比如注册表,还可以是一类.ini,.dat文件,输入假码会出错,有错误对话框弹出,好了,我们现在可以拿出我们的利器,用OD载入这个没加壳(国外软件很少看到加壳的,给我们省了很多时间。)的程序,Microsoft Visual C++ ver. 8.0的程序,大家可以看看,和以前的VC入口差别很大哦。
先从注册入手吧,有对话框就好办了,输入假码弹错误对话框,我们可以通过堆栈调用的方法快速定位到关键位置,看操作,先点F12暂停,再看堆栈窗口,双击进入,我们回朔到断首,下断来重新跟踪,通过分析,我们可以看出他通过一个ComverterCore.DLL来注册的,这段代码都是在这个DLL中,除了这样的方法,我们还可以通过查找字符串的方法,我就不赘述了,不过这个软件要注意的是查找的是Unicode码,不是Ascii码。
013770D1 |> \8D4D D8 lea ecx,[local.10] 代码断首,下端跟踪。
找到关键了,现在就重新来跟踪下,再次点确定注册,程序中断在我们的断点处,F8单步跟踪分析
01377197 |. E8 3DE7FFFF call Converte.013758D9
0137719C |. 84C0 test al,al
0137719E |. 8BCB mov ecx,ebx
013771A0 |. 0F84 FB000000 je Converte.013772A1 ; (初始 cpu 选择)
013771A6 |. E8 B4EAFFFF call Converte.01375C5F
013771AB |. 8BCB mov ecx,ebx
013771AD |. E8 23E7FFFF call Converte.013758D5
013771B2 |. 83F8 04 cmp eax,4
013771B5 |. 75 65 jnz short Converte.0137721C
013771B7 |. 68 8CAE3D01 push Converte.013DAE8C ; successfully_registered
013771BC |. 8D4D F0 lea ecx,[local.4] ; 这里就显示注册成功了
013771BF |. FF15 F8BB3C01 call dword ptr ds:[<&MFC80U.#283>; MFC80U.78305830
一般的新手朋友看到这有注册成功就会很激动,是不是NOP掉上面2个跳转就注册了?我们可以来试试,重起后还是显示未注册,我们来注册下,改了是出现注册成功了,但是刚才重起后还是未注册,这是为什么呢,就是因为是重起校验,他记录了注册信息,重新打开再次校验,这样我们应该怎么去破解,方法还是一样,不过关键是你破解的位置变了,不是NOP掉跳转让他没跳,而是去分析他为什么会跳转,我们来看看跳转上面的指令~
013771AD |. E8 23E7FFFF call Converte.013758D5
013771B2 |. 83F8 04 cmp eax,4
013771B5 |. 75 65 jnz short Converte.0137721C
013771B7 |. 68 8CAE3D01 push Converte.013DAE8C ; /successfully_registered
013771BC |. 8D4D F0 lea ecx,[local.4] ; |这里就显示注册成功了
013771B2 |. 83F8 04 cmp eax,4 比较EAX的值是不是4,不是4就跳了,上面的CALL就是EAX的值的由来?
013758D5 /$ 8B41 18 mov eax,dword ptr ds:[ecx+18] CALL的内容,你会发现2个CALL其实都是这个控制EAX的值,如果ecx+18的值是4那么EAX不就也是4喽,这样就注册成功,通过经验,你也会发现这个CALL里面的内容也是重起校验的关键地方,下好断点,我们重新来看看,是不是断下来了,这时候他也是1,我们改成4,看看效果,是不是没有弹注册了?那证明我们的结论是对的,这是一个关键,你可以爆破这里,但是我不会选择这里爆破,我会暴ecx+18(0141CCC0)我会爆破这里的值,其实越到附值的最上面爆破越保险,现在我们在0141CCC0下个内存写入断点,看看程序哪给他值的
01375920 /$ 8B4424 04 mov eax,dword ptr ss:[esp+4]
01375924 |. 8B00 mov eax,dword ptr ds:[eax] ; 这给EAX 1,如果给4就是注册喽~
01375926 |. 8941 18 mov dword ptr ds:[ecx+18],eax
这个地方就是附值的地方了,可以选择在这里爆破,怎么改?方法很多,只要让ecx+18返回值为4就可以喽
01375920 B8 04000000 mov eax,4
01375925 90 nop
01375926 |. 8941 18 mov dword ptr ds:[ecx+18],eax
就这样吧,其实你还可以继续往上找关键地方,esp+4比如这个的附值是哪来的,方法就是下内存写入断点,我们先保存下看看,注册对话框没有了,功能也没有了限制,如果想继续完美下去,就继续分析程序
这篇教程我讲的很详细很详细,重在带你进入软件破解的大门,学会基础的软件爆破方法,大概就这样吧,教程应该很大了,最后希望大家多来吾爱破解论坛学习交流,这是一个好很的学习地方。88
www.52pojie.cn
[ 破解总结 ]-----------------------------------------
学习软件标志位完美爆破~
-----------------------------------------------------
[ 版权声明 ] 发表于www.52pojie.cn 希望大家批评指教,多多交流.
-----------------------------------------------------
Solid PDF Tools v2.0 标志位爆破教程
发帖前要善用【论坛搜索 】 功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。