
这次有幸能再次参加集训,跟小伙伴们一起学习,内心本应是高兴的,并且这是我第一次发表破解分析。
一、对本软件的整体认识。
1、窗口标题里带有未注册字样。
2、未注册不能指定年份。
3、点击帮助-注册提示输入注册码。
4、随便输入注册码,点击确定,没有任何提示。弹窗直接消失。
5、连续输错3次15位注册码有提示注册码错误,并且会关闭软件。
二、尝试破解,使功能可用。
首先用PEID.exe查壳为Borland C++ 1999无壳,
file:///c:/docume~1/admini~1/locals~1/temp/msohtml1/01/clip_image001.jpg。file:///c:/docume~1/admini~1/locals~1/temp/msohtml1/01/clip_image013.jpg。【招聘file:///c:\docume~1\admini~1\locals~1\temp\m]rw`41qe95]`f}ogp1prti.pngfile:///c:\docume~1\admini~1\locals~1\temp\m]rw`41qe95]`f}ogp1prti.pngfile:///c:\docume~1\admini~1\locals~1\temp\m]rw`41qe95]`f}ogp1prti.png招聘。
OD载入,查找字符串“注册”
file:///c:/docume~1/admini~1/locals~1/temp/msohtml1/01/clip_image013.jpg。file:///c:/docume~1/admini~1/locals~1/temp/msohtml1/01/clip_image001.jpg。【招聘file:///c:\docume~1\admini~1\locals~1\temp\m]rw`41qe95]`f}ogp1prti.pngfile:///c:\docume~1\admini~1\locals~1\temp\m]rw`41qe95]`f}ogp1prti.pngfile:///c:\docume~1\admini~1\locals~1\temp\m]rw`41qe95]`f}ogp1prti.png招聘。
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image006.gif
继续查找,看看有没有可疑的东西和注册成功的提示。
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image008.gif
发现注册码.txt很可疑,应该是保存注册码的文件。
00459E44 /.55 push ebp;段首下断,点击确定,断在这
。。。。。。
00459EBF |.E8 487C1400 call BaZi.005A1B0C ;假注册码111111111111111
。。。。。。
]补充一点,我想到的一个简单易行的办法,可以加大破解难度7)注册码的判断分两个函数,两个标志,在注册码的输入窗体中,只判断注册码的前一部分,使用func1()判断,注册用户输入正确注册码时并不会感到异常,而破解者通常会在此窗口中追踪代码,就算破解了,在此出破解通过的只是一部分算法而已,但要让他自以为成功了,通过后标志1为真,about窗口显示成功注册了。1,当输入ID,CODE等,立即进行比对,正确的话则做注册处理,以后也不会再麻烦你,也就是说你已经是注册用户了.不正确的话,当然是输入到你对为止了.2,同上,但以后一执行程式还是会判断.针对这种情况,想只改机械码是根本不行的,必须把注册码揪出来.3,输入时不立即比对,只写入资料到某个文件(如*.INI文件)中,程式第二次启动时再比对.例如:flashget,特点是巨麻烦,想破解它们,必须要有足够的耐心.(flashget破解参看我的破解日记)追注册码的步骤首先,将程式的注册对话框打开,输入你的姓名和任意的注册码(推荐用87654321)第二步,按CTRL-n呼叫出trw2000,然后下中断(一般用bpxhmemcpy),回车,键入g,回车第三步,返回注册程式,按册窗中的确定按钮.第四步,如果被trw拦到,说明刚才打的中断发挥作用了,可以继续工作.如果出现的是注册失败的对话框,说明trw的中断没有作用,只有重复第二步,换个中断试试.(中断设置,看雪教程很详细,不重复)。手机的pin码是保护sim卡的一种安全措施,防止别人盗用sim卡,如果启用了开机pin码,那么每次开机后就要输入4位数pin码。
00459F05 |.74 0D je XBaZi.00459F14
00459F07 |.8B45 B0 mov eax,[local.20]
00459F0A |.E8 1DA50E00 call BaZi.0054442C
00459F0F |.E9 6A020000 jmp BaZi.0045A17E ;跳入注册错误
00459F14 |>8B55 B0 mov edx,[local.20]

0045A026 |.FF35 90266D00 push dword ptrds:[0x6D2690]
检查选择部分的代码是否在主模块中,并检查是否有修改的代码,如果有则返回一个结构体数组,里面包括修改处的首地址及长度,否则返回0值:。注意:在finally中改变返回值的做法是不好的,因为如果存在finally代码块,try中的return语句不会立马返回调用者,而是记录下返回值待finally代码块执行完毕之后再向调用者返回其值,然后如果在finally中修改了返回值,就会返回修改后的值。对于研究过jquery源码或曾经打算研究jquery源码的同学来说,上面这段代码肯定不会陌生,它有一个特点:看上去比较晦涩,特别是是结合了jquery源码里面比较诡异的代码缩进~ 通过闭包返回的jquery对象,闭包里面是有...。
0045A031 |.59 pop ecx
0045A032 |.84C0 test al,al
0045A034 |.0F84 44010000 je BaZi.0045A17E ;al为1,不跳
0045A03A |.FF35 90266D00 push dword ptrds:[0x6D2690]
检查选择部分的代码是否在主模块中,并检查是否有修改的代码,如果有则返回一个结构体数组,里面包括修改处的首地址及长度,否则返回0值:。注意:在finally中改变返回值的做法是不好的,因为如果存在finally代码块,try中的return语句不会立马返回调用者,而是记录下返回值待finally代码块执行完毕之后再向调用者返回其值,然后如果在finally中修改了返回值,就会返回修改后的值。对于研究过jquery源码或曾经打算研究jquery源码的同学来说,上面这段代码肯定不会陌生,它有一个特点:看上去比较晦涩,特别是是结合了jquery源码里面比较诡异的代码缩进~ 通过闭包返回的jquery对象,闭包里面是有...。
0045A045 |.59 pop ecx
0045A046 |.84C0 test al,al
0045A048 |.0F84 30010000 je BaZi.0045A17E ;al为1,不跳
0045A04E |.FF35 90266D00 push dword ptrds:[0x6D2690]
检查选择部分的代码是否在主模块中,并检查是否有修改的代码,如果有则返回一个结构体数组,里面包括修改处的首地址及长度,否则返回0值:。注意:在finally中改变返回值的做法是不好的,因为如果存在finally代码块,try中的return语句不会立马返回调用者,而是记录下返回值待finally代码块执行完毕之后再向调用者返回其值,然后如果在finally中修改了返回值,就会返回修改后的值。对于研究过jquery源码或曾经打算研究jquery源码的同学来说,上面这段代码肯定不会陌生,它有一个特点:看上去比较晦涩,特别是是结合了jquery源码里面比较诡异的代码缩进~ 通过闭包返回的jquery对象,闭包里面是有...。
0045A059 |.59 pop ecx
0045A05A |.84C0 test al,al
0045A05C |.0F84 1C010000 je BaZi.0045A17E ;al为1,不跳
0045A062 |.66:C745 50>mov word ptrss:[ebp-0x3C],0x50
0045A068 |.8D45 E4 lea eax,[local.7]
0045A06B |.E8 047EFAFF call BaZi.00401E74
0045A070 |.50 push eax
0045A071 |.FF45 D0 inc [local.12]
:00404509 89d7 mov edi, edx <===edx=78787876。安装完成后如果在gtools目录下存在注册机keygen.exe则会自动调用该注册机进行注册,如果没有注册机请自行到网络上搜索,手动注册如下:在autocad注册步骤中选择激活产品-->如果序列号不为666-69696969请修改为这个序列号,复制申请码如xlyz alau k7xa 91p3 vqn2 hrtz之形式,然后打开注册机,粘贴此申请码到申请码文本框中并点生成按钮将生成如kh0h k0n8 lh8h td53 523v p1ss v4yf e9p3 s0pp ky6z r5nt z4a2 he15 86qf g79d 570f 5juq之形式的授权码,接着当然是复制此授权码返回到刚才的授权界面并选择粘贴激活码并粘贴即可。这时应该想到,把 018dab08 的 mov edx,esi 改为 mov esi,edx 会将堆栈中存的假码全都换成程序自己算出来的真码,不管程序运行到哪里都是用两个真码进行比较,自然就会成功注册了。
。。。。。。。
0045A10A |.BA 81545E00 mov edx,BaZi.005E5481 ;玄奥八字V7.2
0045A10F |.8D45 E0 lea eax,[local.8]
0045A112 |.E8 25791400 call BaZi.005A1A3C
0045A117 |.FF45 D0 inc [local.12]
0045A11A |.8B10 mov edx,dword ptr ds:[eax]
0045A11C |.A1 DC1F6D00 mov eax,dword ptr ds:[0x6D1FDC]
0045A121 |.8B00 mov eax,dword ptr ds:[eax]
0045A123 |.E8 04E50F00 call BaZi.0055862C
0045A128 |.FF4D D0 dec [local.12]
0045A12B |.8D45 E0 lea eax,[local.8]
0045A12E |.BA 02000000 mov edx,0x2
0045A133 |.E8 D4791400 call BaZi.005A1B0C
0045A138 |.8B0D DC1F6D00 mov ecx,dwordptr ds:[0x6D1FDC] ; BaZi._FrmMain
。。。。。。。
0045A17E |>8B45 B0 mov eax,[local.20]
0045A181 |.66:83B8 38030>cmp word ptrds:[eax+0x338],0x3
码,输入正确可以无限次使用,又接着继续输入十次错误,再次输入也会提示错误,以便起到警示作用,默认一般是是6位,重启进入系统,防止外人偷看手机屏幕内容,输入三次pin码错误,默认一般是1234,在这里面即可看到自己手机的pin1/,甚至不提示错误,直接要puk码输入。需要注意的是,如果输入三次pin码错误,手机便会自动锁卡,并提示输入puk码解锁,因此,如果修改了pin码,一定要牢记。二是解屏pin,被其它人使用浪费你的手机费,使你的手机个人信息丢失,甚至不提示错误,一旦输错三次,输入正确可以无限次使用、密码登录中国电信官网,输入三次pin码错误、这里提供一种锁屏pin码忘记后的解决l办法。
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-101836-1.html
这么惨