|
小快笔稿件统计系统4.1逆向教程
下载地址:http://www.xkbsoft.com/?thread-18-113.html
参考教程:https://www.52hb.com/forum.php?m ... =%D0%A1%BF%EC%B1%CA
个人逆向过程:
1、OD载入程序,F9运行,输入用户名,密码,登陆系统,CTRL+G,输入00401000
CTRL+F,输入“注册”
找到00416A8D 68 39A45300 push 小快笔稿.0053A439 ; 对不起!注册码错误!
向上查找,看什么地址跳到00416A88 83C4 08 add esp,0x8
004168EE /0F8F 94010000 jg 小快笔稿.00416A88\\这个跳转到00416A88,最终跳向注册失败。
下面其中其个CALL,进行了赋值
00416895 E8 F495FFFF call 小快笔稿.0040FE8E
0041689A 8945 F4 mov dword ptr ss:[ebp-0xC],eax
0041689D 8B5D FC mov ebx,dword ptr ss:[ebp-0x4]
004168A0 85DB test ebx,ebx
004168A2 74 09 je short 小快笔稿.004168AD
004168A4 53 push ebx
004168A5 E8 0C580100 call 小快笔稿.0042C0B6
004168AA 83C4 04 add esp,0x4
004168AD 8B5D F8 mov ebx,dword ptr ss:[ebp-0x8] ; user32.772F8EAB
004168B0 85DB test ebx,ebx
004168B2 74 09 je short 小快笔稿.004168BD
004168B4 53 push ebx
004168B5 E8 FC570100 call 小快笔稿.0042C0B6
004168BA 83C4 04 add esp,0x4
004168BD 68 02000080 push 0x80000002
004168C2 6A 00 push 0x0
004168C4 FF75 F4 push dword ptr ss:[ebp-0xC] ; user32.772F8D9A
004168C7 68 01000000 push 0x1
004168CC BB B0CD4200 mov ebx,小快笔稿.0042CDB0
004168D1 E8 F8570100 call 小快笔稿.0042C0CE
004168D6 83C4 10 add esp,0x10
004168D9 8945 E4 mov dword ptr ss:[ebp-0x1C],eax
004168DC 8955 E8 mov dword ptr ss:[ebp-0x18],edx ; ntdll.KiFastSystemCallRet
004168DF DD45 E4 fld qword ptr ss:[ebp-0x1C]
004168E2 E8 BDADFEFF call 小快笔稿.004016A4
004168E7 33C9 xor ecx,ecx
004168E9 41 inc ecx
004168EA 51 push ecx
004168EB 50 push eax
004168EC 3BC8 cmp ecx,eax
通过分析,最终确定是00416895 E8 F495FFFF call 小快笔稿.0040FE8E\\是关键CALL
F7进CALL,F2在段首下断,发现注册和功能部分都要验证这部分,haier8917讲是直接段首赋值
mov eax,1
retn8
我一直进行跟踪,发现
004103E1 837D BC 00 cmp dword ptr ss:[ebp-0x44],0x0
004103E5 0F84 0F000000 je 小快笔稿.004103FA
004103EB B8 01000000 mov eax,0x1
004103F0 E9 0F000000 jmp 小快笔稿.00410404
004103F5 E9 0A000000 jmp 小快笔稿.00410404
004103FA B8 00000000 mov eax,0x0
这一段影响EAX的值,所以004103E5 /0F84 0F000000 je 小快笔稿.004103FA是关键
直接NOP掉后,EAX就是1了。
原来二进制代码:0F 84 0F 00 00 00
改后二进制代码:90 90 90 90 90 90
由于程序是加壳的,不能直接保存,本人脱壳水平有限,所以直接用大白制作补丁文件
步骤:指令替换补丁--添加补丁
勾选补丁地址需程序解码后进行判定--HOOK API---kernel32.dll---GetVersion
随后内存地址:004103E5,模块基址:00401000
原始数据:0F 84 0F 00 00 00
补丁数据:90 90 90 90 90 90
制作完毕后,运行补丁程序,成功后,打开原程序,试用版没有,注册部分提示已成功注册,功能部分一切正常。
视频下载地址:链接: http://pan.baidu.com/s/1gfvCMsj 密码:
|
评分
-
参与人数 12 | 威望 +1 |
HB +26 |
THX +6 |
收起
理由
|
禽大师
| |
+ 1 |
|
|
虚心学习
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少! |
lies
| |
|
+ 1 |
|
别管我了行
| |
+ 2 |
|
|
消逝的过去
| |
+ 2 |
|
|
飞刀梦想
| |
+ 1 |
|
|
77493466
| |
+ 1 |
|
[快捷评语] - 2017,让我们17学破解! |
duanbin109
| |
+ 1 |
+ 1 |
[快捷评语] - 2017,让我们17学破解! |
tianzhiya
| |
+ 2 |
+ 1 |
[快捷评语] - 吃水不忘打井人,给个评分懂感恩! |
haier8917
| |
+ 4 |
+ 1 |
[快捷评语] - 分享精神,是最值得尊敬的! |
RIO
| |
+ 1 |
+ 1 |
[快捷评语] - 2017,让我们17学破解! |
Shark恒
| + 1 |
+ 10 |
+ 1 |
[快捷评语] - 2017,让我们17学破解! |
查看全部评分
|