来看雪论坛已经很久了,其中也学到了很多东东。作为菜鸟,在此谈谈本人破解经验,希望可以对刚入门的朋友有用。
软件: 一款查询工具 ,可以快速查询手机话费余额。
peid:Microsoft Visual Basic 5.0 / 6.0
EP区段: .text
调试工具: C32Asm OD
先打开软件,弹出注册框(您的机器码如下,请复制下面框中整行字给软件设计商)——确定——对话框(请输入你的注册码)——输入假码(0000000000)——软件自动关闭,没有任何提示。
软件目录中生成了一个.ini文件。
可以判断这款软件是一个文件自效验的。注册成功后软件会将信息保存在.ini文件中,以后开启软件时会自动识别软件是否已注册。
现在已经基本了解到了这个软件的有用信息,我们现在可以进行破解了。
首先用C32Asm载入 —— 查看—— 字符串——编辑——Unicode——导出text文件。
用记事本程序打开导出的text文件如下(截取部分)
您的机器码如下,请复制下面框中整行字给软件设计商
::0044B8BA->MOV EDX,416CB8
您还有
::0043DFF4->PUSH 411468
您输入的第 1 张一卡通当前可用余额已经为零
::00440C14->MOV EDX,411B08
佩?暙???怀鏓伉?暙???怀鏓?
::00432C9C->PUSH 410C7C
::00432D6F->PUSH 410C7C
::00432DDF->PUSH 410C7C
::004372B2->PUSH 410C7C
::00437339->PUSH 410C7C
::004373BF->PUSH 410C7C
::0043758D->PUSH 410C7C
::00437614->PUSH 410C7C
::004376B7->PUSH 410C7C
::0043EA68->PUSH 410C7C
::0043EAC1->PUSH 410C7C
::0043EB1E->PUSH 410C7C
::0043EB77->PUSH 410C7C
沁Ф;
::0040804D->ADD DWORD PTR [EAX],4081BD
清空成功
::004304FB->MOV DWORD PTR [EBP-70],410D84
请检查网页内容
::0041F6C6->MOV DWORD PTR [EBP-78],40DDF4
请输入
::0043C491->PUSH 411294
::0043C55E->PUSH 411294
请输入卡号和密码以及验证码
::00440D32->MOV EDX,411B50
请输入内容
::00433BF3->MOV EDX,40CBA0
请输入您的注册码
::0044B97B->MOV EDX,416D58
请输入验证码
::0042CFFA->PUSH 4107B8
请输入账号
::00440EDF->MOV EDX,411988
::004412C5->MOV EDX,411988
请输入账号和密码,格式:aaa,bbb
::004431FD->MOV EDX,411ED8
请输入资料
::004368D4->MOV EDX,4111DC
请先初始化K
::0044BBDD->MOV DWORD PTR [EBP-68],416D80
请先复制内容
::00433F6B->MOV DWORD PTR [EBP-78],411008
请选择一台最新的电脑安装
::0044B86A->PUSH 416CF0
如果没登成功请在网页上先登
::0044388E->MOV DWORD PTR [EBP-58],411F04
软件名称:
::0044B8D3->PUSH 414000
设计登录
::0043D2D7->MOV EDX,411424
是否要清空,确认请输入2个或更多字符
::00430416->MOV EDX,410D58
手工登陆成功
::0043EB0B->PUSH 4115CC
手机号
::0043EE98->MOV EDX,411714
输入:
::0043EEE5->PUSH 411720
所有文件 (*.*)
::0044584B->PUSH 4164F4
::00445942->PUSH 4164F4
天
::004238C3->MOV DWORD PTR [EBP-10C],40EE04
维护登陆
::0043D1D7->MOV EDX,411414
未知
::00442C1F->MOV EDX,411EBC
未知错误,已停止操作
::0043B391->MOV DWORD PTR [EBP-90],411244
无效的密码,请重试!
::0043E0C1->PUSH 411484
仙?暙???怀鏓\x0A
::004227D2->PUSH 40E2B0
::00422817->PUSH 40E2B0
::00422846->PUSH 40E2B0
::0042F99A->PUSH 40E2B0
::004317A8->PUSH 40E2B0
::004317DD->PUSH 40E2B0
::00431896->PUSH 40E2B0
::004318E6->PUSH 40E2B0
::00431942->PUSH 40E2B0
::00431977->PUSH 40E2B0
::004362DB->PUSH 40E2B0
::00436BE4->PUSH 40E2B0
::00436C6A->PUSH 40E2B0
::00436DFE->PUSH 40E2B0
::00436E85->PUSH 40E2B0
::00436F0C->PUSH 40E2B0
小时
::00423A7B->MOV DWORD PTR [EBP-10C],40EE0C
休?暙???怀鏓\x0C
::00430A30->PUSH 4106A4
::00430D4D->PUSH 4106A4
::00430DBD->PUSH 4106A4
::00430EAD->PUSH 4106A4
::00431186->PUSH 4106A4
::0043120D->PUSH 4106A4
::00433508->PUSH 4106A4
::004335B4->PUSH 4106A4
::00434EC6->PUSH 4106A4
::00437AA4->PUSH 4106A4
::0043812C->PUSH 4106A4
::00438364->PUSH 4106A4
::00438D5A->PUSH 4106A4
::00439D71->PUSH 4106A4
::0043A2C8->PUSH 4106A4
::0043A371->PUSH 4106A4
::0043A41E->PUSH 4106A4
验证码
::0043EF13->MOV EDX,411738
验证码不一致
::00441118->MOV EDX,4119C8
一般情况下,原价购买软件包一年升级
::0044B8A8->PUSH 416D30
已到最后一条信息!
::0042164B->MOV DWORD PTR [EBP-68],40E0E8
已试
::0043DFA4->PUSH 411454
暂停软件操作
::0042DD3D->MOV EDX,410BC8
粘贴成功!
::00421CD6->MOV DWORD PTR [EBP-78],40E1E4
粘贴失败!
::00421D04->MOV DWORD PTR [EBP-78],40E1F4
账号不存在
::00440E50->MOV EDX,411B8C
::004411A7->MOV EDX,411B8C
謀???倈鋿и
::00415D9D->IMUL ESI,GS:[BP+DI+74],437265
注册版
::00434A3B->MOV DWORD PTR [EBP-F8],4110E0
注册成功!
::0044BA87->MOV DWORD PTR [EBP-8C],416D70
注册后不可更换硬盘及电脑
::0044B882->PUSH 416D10
字符串为:
::00421843->PUSH 40E144
仡?暙???怀鏓\x06
哈哈!! 找到突破口了 。关键字符串
注册成功!
::0044BA87->MOV DWORD PTR [EBP-8C],416D70
至此破解可以说是成功了一半,下面就要看OD的功效了:
用OD 载入 ——右键——转到——0044BA87
0044BA52 E8 89020000 call 河南移动.0044BCE0 关键CALL (F7跟进)
0044BA57 66:3BC7 cmp ax,di 标志位置
0044BA5A 8945 EC mov dword ptr ss:[ebp-14],eax
0044BA5D 74 7A je short 河南移动.0044BAD9 关键跳
0044BA5F B9 04000280 mov ecx,80020004
0044BA64 B8 0A000000 mov eax,0A
0044BA69 894D 84 mov dword ptr ss:[ebp-7C],ecx
0044BA6C 894D 94 mov dword ptr ss:[ebp-6C],ecx
0044BA6F 894D A4 mov dword ptr ss:[ebp-5C],ecx
0044BA72 8D95 6CFFFFFF lea edx,dword ptr ss:[ebp-94]
0044BA78 8D4D AC lea ecx,dword ptr ss:[ebp-54]
0044BA7B 8985 7CFFFFFF mov dword ptr ss:[ebp-84],eax
0044BA81 8945 8C mov dword ptr ss:[ebp-74],eax
0044BA84 8945 9C mov dword ptr ss:[ebp-64],eax
0044BA87 C785 74FFFFFF 7>mov dword ptr ss:[ebp-8C],河南移动.00416D70 注册成功
0044BA91 C785 6CFFFFFF 0>mov dword ptr ss:[ebp-94],8
0044BA9B FF15 68134000 call dword ptr ds:[<&MSVBVM60.__vbaVarDu>; MSVBVM60.__vbaVarDup
0044BAA1 8D8D 7CFFFFFF lea ecx,dword ptr ss:[ebp-84]
0044BAA7 8D55 8C lea edx,dword ptr ss:[ebp-74]
0044BAAA 51 push ecx
0044BAAB 8D45 9C lea eax,dword ptr ss:[ebp-64]
0044BAAE 52 push edx
0044BAAF 50 push eax
0044BAB0 8D4D AC lea ecx,dword ptr ss:[ebp-54]
0044BAB3 57 push edi
0044BAB4 51 push ecx
0044BAB5 FF15 14114000 call dword ptr ds:[<&MSVBVM60.#595>] ; MSVBVM60.rtcMsgBox
0044BABB 8D95 7CFFFFFF lea edx,dword ptr ss:[ebp-84]
0044BAC1 8D45 8C lea eax,dword ptr ss:[ebp-74]
0044BAC4 52 push edx
0044BAC5 8D4D 9C lea ecx,dword ptr ss:[ebp-64]
0044BAC8 50 push eax
0044BAC9 8D55 AC lea edx,dword ptr ss:[ebp-54]
0044BACC 51 push ecx
0044BACD 52 push edx
0044BACE 6A 04 push 4 在0044BA52 处下断 ,F9 运行 —— 输入假注册码(000000) —— 确定
程序被OD断在了 0044BA52 处
F7跟进关键CALL 代码如下:
0044BCE0 55 push ebp
0044BCE1 8BEC mov ebp,esp
0044BCE3 83EC 08 sub esp,8
0044BCE6 68 963F4000 push <jmp.&MSVBVM60.__vbaExceptHandler>
0044BCEB 64:A1 00000000 mov eax,dword ptr fs:[0]
0044BCF1 50 push eax
0044BCF2 64:8925 0000000>mov dword ptr fs:[0],esp
0044BCF9 83EC 50 sub esp,50
0044BCFC 53 push ebx
0044BCFD 56 push esi
0044BCFE 57 push edi
0044BCFF 8965 F8 mov dword ptr ss:[ebp-8],esp
0044BD02 C745 FC 803F400>mov dword ptr ss:[ebp-4],河南移动.00403F80
0044BD09 33FF xor edi,edi
0044BD0B 6A 02 push 2
0044BD0D 57 push edi
0044BD0E 897D E8 mov dword ptr ss:[ebp-18],edi
0044BD11 897D E4 mov dword ptr ss:[ebp-1C],edi
0044BD14 897D D4 mov dword ptr ss:[ebp-2C],edi
0044BD17 897D C4 mov dword ptr ss:[ebp-3C],edi
0044BD1A 897D B4 mov dword ptr ss:[ebp-4C],edi
0044BD1D 897D A4 mov dword ptr ss:[ebp-5C],edi
0044BD20 E8 7BF6FFFF call 河南移动.0044B3A0
0044BD25 8945 DC mov dword ptr ss:[ebp-24],eax
0044BD28 8D45 D4 lea eax,dword ptr ss:[ebp-2C]
0044BD2B 8D4D C4 lea ecx,dword ptr ss:[ebp-3C]
0044BD2E BE 08000000 mov esi,8
0044BD33 50 push eax
0044BD34 51 push ecx
0044BD35 8975 D4 mov dword ptr ss:[ebp-2C],esi
0044BD38 FF15 48114000 call dword ptr ds:[<&MSVBVM60.#520>] ; MSVBVM60.rtcTrimVar
0044BD3E 8D55 C4 lea edx,dword ptr ss:[ebp-3C]
0044BD41 8D45 A4 lea eax,dword ptr ss:[ebp-5C]
0044BD44 52 push edx
0044BD45 8D4D B4 lea ecx,dword ptr ss:[ebp-4C]
0044BD48 50 push eax
0044BD49 51 push ecx
0044BD4A C745 AC 1CCE400>mov dword ptr ss:[ebp-54],河南移动.0040CE1C
这个CAll 跟进后 相信朋友们是很熟悉的,在
0044BCE0 55 push ebp
0044BCE1 8BEC mov ebp,esp
0044BCE3 83EC 08 sub esp,8
0044BCE6 68 963F4000 push <jmp.&MSVBVM60.__vbaExceptHandler>
处可以进行 标志位置 爆破
方法如下:
0044BCE0 55 push ebp (mov al,1)
0044BCE1 8BEC mov ebp,esp (retn)
修改后
0044BCE0 B0 01 mov al,1
0044BCE2 C3 retn
这样就可以了,选择修改处——右键——复制到可执行文件——保存——李丫头007(软件爆破后给它赋的名)
爆破只有软件就没有注册框弹出了,直接就可以用了!
当然这个只是最初级的爆破了,有时间再写追真码的下篇了。
关于破解我觉的是一个兴趣的问题,要有长久的热情。每次遇到困难都会是一个很好的机遇,让你在这条路上有新的突破,有新的发展!只有不断的探索,才会有更好的收获!
在这里写给初入门者,祝愿大家在这条路上都能找到属于自己的那份快乐,那份收获!
感谢看雪论坛,永远支持您!
有错误的地方希望大家批评指正
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法