党员信息管理系统1.0逆向、追码、写注册机。
Microsoft Visual Basic 5.0 / 6.0,无壳,提示注册,注册后,提示没有注册成功。
1、爆破
分析得知,注册码保存在数据文件中,sqdygl.mdb,软件会重启验证。
搜索字符串“zcm”,双击返回
0045C569 . C785 60FFFFFF>mov dword ptr ss:[ebp-0xA0],党员信息.00416F2>; zcm\\F2下断
F9运行,来到登陆窗口,输入密码1,确定,程序被断下。一路F8单步,观察相关变化
0045C5BD . 8945 C0 mov dword ptr ss:[ebp-0x40],eax\\出现注册码
eax=014E7A80
堆栈 ss:[0012F108]=001FADC4, (UNICODE "5A1CFFB735E66B97")
在堆栈窗口:
0012F0E8 00205F1C UNICODE "FF07237F02CDB779"
0012F0EC 00416B7C UNICODE "操作员"
0012F0F0 00000000
0012F0F4 0012ED64
0012F0F8 001FADC4 UNICODE "5A1CFFB735E66B97"
可以判断5A1CFFB735E66B97为注册码。
我们这里是爆破,所以还要向下跟踪。
来到这里0045C60C /74 14 je short 党员信息.0045C622\\它跳过了0045C61D
而0045C61D . /E9 1D010000 jmp 党员信息.0045C73F\\会跳过未注册提示。
所以0045C60C /74 14 je short 党员信息.0045C622\\关键跳,要修改它
直接NOP掉。保存修改后的文件,运行一下。提示已注册,成功爆破。
2、追码写注册机
搜索字符串“没有注册成功”,双击,返回到
00516CAA . C745 88 D8CA4>mov dword ptr ss:[ebp-0x78],党员信息.0041CAD>; 没有注册成功,请仔细检查核实后再进行注册!
向上查找来到
00516C68 > \8B35 7C124000 mov esi,dword ptr ds:[<&MSVBVM60.__vbaVa>; msvbvm60.__vbaVarDup
这个跳转跳过成功,走向失败,向上找到跳转来源
005162C2 . /0F84 A0090000 je 党员信息.00516C68\\关键跳转
向上来到段首
00516090 > \55 push ebp\\F2下断,
F9运行程序,注册,输入假码,确定,程序被断下,一路F8,观察相关地址变化
00516163 . 8B4D E4 mov ecx,dword ptr ss:[ebp-0x1C]
堆栈 ss:[0012F458]=001FA254, (UNICODE "FF07237F02CDB779")
ecx=7C93005D (ntdll.7C93005D)
00516166 . 8B3D 64104000 mov edi,dword ptr ds:[<&MSVBVM60.__vbaSt>; msvbvm60.__vbaStrCat\\机器码
EAX 00204264 UNICODE "QqMm"
ECX 001FA254 UNICODE "FF07237F02CDB779"
005161E0 . 8BD0 mov edx,eax\\注册码初步出现(是字母是小写的,应该为大写)
EAX 002055F4 UNICODE "5a1cffb735e66b97"
00516211 . 8BD0 mov edx,eax\\注册码出现
EAX 001FA254 UNICODE "5A1CFFB735E66B97"
00516271 . 8D4D C0 lea ecx,dword ptr ss:[ebp-0x40]\\假码出现
EAX 002055F4 UNICODE "111111111111111"
005162C2 . /0F84 A0090000 je 党员信息.00516C68\\跳到注册失败。
00516C68 > \8B35 7C124000 mov esi,dword ptr ds:[<&MSVBVM60.__vbaVa>; msvbvm60.__vbaVarDup\\向下到失败提示。
写注册机,相关数据如下。
00516211 . 8BD0 mov edx,eax\\这个地址制作注册机容易死机。
EAX 00207264 UNICODE "5A1CFFB735E66B97"
向下,
00516213 . 8D4D E8 lea ecx,dword ptr ss:[ebp-0x18]\\用这个地址制作注册机
EAX 00207264 UNICODE "5A1CFFB735E66B97"
ECX 0012F434
EDX 00207264 UNICODE "5A1CFFB735E66B97"
制作完毕,测试下,得到注册码5A1CFFB735E66B97,成功注册,教程到此结束,谢谢大家观看!
视频教程及相关资料下载地址:
|