吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 2731|回复: 20

[原创逆向图文] 一款计算机安全保密检查软件的DEBUG

  [复制链接]
zyyujq 发表于 2022-7-11 13:28 | 显示全部楼层 |阅读模式

本帖最后由 zyyujq 于 2022-7-11 16:14 编辑

运行环境:WIN7、10
涉及工具:ExeinfoPe、x64dbg
教程类型:破解限制,算法分析等
是否讲解思路和原理:是 (讲解思路原理可获得精华)

以下为图文内容:软件界面:
fakename.png

fakename.png

软件运行后必须注册码、或者联系客服发送授权认证码,才能使用。


1、使用 ExeinfoPe 检查软件为VC++,未加密压缩:


fakename.png

2、使用 x64dbg 打开 CHECKSYSTEM 目录下的 ZHJSJZDBMJCXT.EXE(拼音缩写)
fakename.png

运行程序,不输入动态口令如图:
fakename.png


使用 X64DBG 搜索字符串:
fakename.png

查找动态口令为空:
fakename.png

鼠标点击第一个查询结果:
可见01328B69为输入动态口令为空的测试,将01328B6B的 74 7C 改为EB 7CJE 语句改为 JMP,忽略口令为空。
01328AE0 | 55                    | push ebp                                         |
01328AE1 | 8BEC                  | mov ebp,esp                                      |
01328AE3 | 6A FF                 | push FFFFFFFF                                    |
01328AE5 | 68 D7456801           | push 原文件.16845D7                     |
01328AEA | 64:A1 00000000        | mov eax,dword ptr fs:[0]                         |
01328AF0 | 50                    | push eax                                         |
01328AF1 | 81EC 70010000         | sub esp,170                                      |
01328AF7 | A1 98178901           | mov eax,dword ptr ds:[1891798]                   |
01328AFC | 33C5                  | xor eax,ebp                                      |
01328AFE | 8945 D8               | mov dword ptr ss:[ebp-28],eax                    |
01328B01 | 50                    | push eax                                         |
01328B02 | 8D45 F4               | lea eax,dword ptr ss:[ebp-C]                     |
01328B05 | 64:A3 00000000        | mov dword ptr fs:[0],eax                         |
01328B0B | 898D A0FEFFFF         | mov dword ptr ss:[ebp-160],ecx                   |
01328B11 | 6A 70                 | push 70                                          |
01328B13 | 6A 00                 | push 0                                           |
01328B15 | 8B85 A0FEFFFF         | mov eax,dword ptr ss:[ebp-160]                   |
01328B1B | 05 08050000           | add eax,508                                      |
01328B20 | 50                    | push eax                                         |
01328B21 | E8 8A4D3200           | call 原文件.164D8B0                     |
01328B26 | 83C4 0C               | add esp,C                                        |
01328B29 | 8B4D 08               | mov ecx,dword ptr ss:[ebp+8]                     |
01328B2C | C701 00000000         | mov dword ptr ds:[ecx],0                         |
01328B32 | 8D4D EC               | lea ecx,dword ptr ss:[ebp-14]                    |
01328B35 | E8 E630F9FF           | call 原文件.12BBC20                     |
01328B3A | C745 FC 00000000      | mov dword ptr ss:[ebp-4],0                       |
01328B41 | 8D55 EC               | lea edx,dword ptr ss:[ebp-14]                    |
01328B44 | 52                    | push edx                                         |
01328B45 | 8B8D A0FEFFFF         | mov ecx,dword ptr ss:[ebp-160]                   |
01328B4B | 81C1 28040000         | add ecx,428                                      |
01328B51 | E8 EA220000           | call 原文件.132AE40                     |
01328B56 | 8D4D EC               | lea ecx,dword ptr ss:[ebp-14]                    |
01328B59 | E8 7209FAFF           | call 原文件.12C94D0                     |
01328B5E | 8D4D EC               | lea ecx,dword ptr ss:[ebp-14]                    |
01328B61 | E8 FA810000           | call 原文件.1330D60                     |
01328B66 | 0FB6C0                | movzx eax,al                                     |

01328B69 | 85C0                  | test eax,eax                                     |
01328B6B | 74 7C                 | je 原文件.1328BE9                       |
01328B6D | 8D4D E4               | lea ecx,dword ptr ss:[ebp-1C]                    |
01328B70 | E8 AB30F9FF           | call 原文件.12BBC20                     |
01328B75 | C645 FC 01            | mov byte ptr ss:[ebp-4],1                        |
01328B79 | 68 20597701           | push 原文件.1775920                     | 1775920:L"动态口令为空!"
01328B7E | 8D4D E4               | lea ecx,dword ptr ss:[ebp-1C]                    |
01328B81 | 51                    | push ecx                                         |
01328B82 | E8 C944F9FF           | call 原文件.12BD050                     |
01328B87 | 83C4 08               | add esp,8                                        |
01328B8A | 6A FF                 | push FFFFFFFF                                    |
01328B8C | 6A 00                 | push 0                                           |
01328B8E | 6A 00                 | push 0                                           |
01328B90 | 6A 30                 | push 30                                          |
01328B92 | 68 30597701           | push 原文件.1775930                     | 1775930:"衏:y"
01328B97 | 8D4D E4               | lea ecx,dword ptr ss:[ebp-1C]                    |
01328B9A | E8 01143000           | call 原文件.1629FA0                     |
01328B9F | 50                    | push eax                                         |
01328BA0 | E8 DB220000           | call 原文件.132AE80                     |
01328BA5 | 83C4 18               | add esp,18                                       |
01328BA8 | 8B8D A0FEFFFF         | mov ecx,dword ptr ss:[ebp-160]                   |
01328BAE | 81C1 2C040000         | add ecx,42C                                      |


随意输入口令,软件弹出:

fakename.png

在字符串中查口令不正确,进入01328CF9,在上面有 01328CD3 条件语句,将 0F84 9A020000 改为E9 9B020000JE 语句改为 JMP,忽略口令不正确。
01328CB7 | 8B82 F4040000         | mov eax,dword ptr ds:[edx+4F4]                   |
01328CBD | 83E8 01               | sub eax,1                                        |
01328CC0 | 8B8D A0FEFFFF         | mov ecx,dword ptr ss:[ebp-160]                   |
01328CC6 | 8981 F4040000         | mov dword ptr ds:[ecx+4F4],eax                   |
01328CCC | 83BD D0FEFFFF 00      | cmp dword ptr ss:[ebp-130],0                     |
01328CD3 | 0F84 9A020000         | je 原文件.1328F73                       |
01328CD9 | 8B95 A0FEFFFF         | mov edx,dword ptr ss:[ebp-160]                   |
01328CDF | 83BA F4040000 00      | cmp dword ptr ds:[edx+4F4],0                     |
01328CE6 | 0F8E 41020000         | jle 原文件.1328F2D                      |
01328CEC | 8B85 A0FEFFFF         | mov eax,dword ptr ss:[ebp-160]                   |
01328CF2 | 8B88 F4040000         | mov ecx,dword ptr ds:[eax+4F4]                   |
01328CF8 | 51                    | push ecx                                         |
01328CF9 | 68 38597701           | push 原文件.1775938                     | 1775938:L"口令不正确!您还可以输入%d次!\r\n请检查本计算机的时间是否为北京时间,然后通过Key序列号+授权认证号的方式进行验证。"
01328CFE | 8D55 E0               | lea edx,dword ptr ss:[ebp-20]                    |
01328D01 | 52                    | push edx                                         |
01328D02 | E8 4943F9FF           | call 原文件.12BD050                     |
01328D07 | 83C4 0C               | add esp,C                                        |
01328D0A | 68 E4060000           | push 6E4                                         |
01328D0F | E8 973B3200           | call 原文件.164C8AB                     |
01328D14 | 83C4 04               | add esp,4                                        |
01328D17 | 8985 B4FEFFFF         | mov dword ptr ss:[ebp-14C],eax                   |
01328D1D | C645 FC 04            | mov byte ptr ss:[ebp-4],4                        |
01328D21 | 83BD B4FEFFFF 00      | cmp dword ptr ss:[ebp-14C],0                     |
01328D28 | 74 39                 | je 原文件.1328D63                       |
01328D2A | 51                    | push ecx                                         |
01328D2B | 8BCC                  | mov ecx,esp                                      |
01328D2D | 89A5 B0FEFFFF         | mov dword ptr ss:[ebp-150],esp                   |
01328D33 | 8D45 E0               | lea eax,dword ptr ss:[ebp-20]                    |
01328D36 | 50                    | push eax                                         |
01328D37 | E8 042FF9FF           | call 原文件.12BBC40                     |
01328D3C | 8985 90FEFFFF         | mov dword ptr ss:[ebp-170],eax                   |
01328D42 | 6A 28                 | push 28                                          |
01328D44 | 8B8D B4FEFFFF         | mov ecx,dword ptr ss:[ebp-14C]                   |
01328D4A | E8 B15F0400           | call 原文件.136ED00                     |
01328D4F | 8985 8CFEFFFF         | mov dword ptr ss:[ebp-174],eax                   |
01328D55 | 8B8D 8CFEFFFF         | mov ecx,dword ptr ss:[ebp-174]                   |
01328D5B | 898D 88FEFFFF         | mov dword ptr ss:[ebp-178],ecx                   |
01328D61 | EB 0A                 | jmp 原文件.1328D6D                      |
01328D63 | C785 88FEFFFF 0000000 | mov dword ptr ss:[ebp-178],0                     |


然后在 01328F73 下断点,运行到此断点,再单步调试,查看运行记录,运行到 01329061有测试语句test,上面提示1775AA8有m_nCurLevel 错误(理解为用户当前级别),
0132906175 13 改为 EB 13    即 jne 语句改为 JMP
01329020 | 55                    | push ebp                                         |
01329021 | 8BEC                  | mov ebp,esp                                      |
01329023 | 83EC 10               | sub esp,10                                       |
01329026 | 894D F0               | mov dword ptr ss:[ebp-10],ecx                    |
01329029 | C745 FC 00000000      | mov dword ptr ss:[ebp-4],0                       |
01329030 | 8B45 F0               | mov eax,dword ptr ss:[ebp-10]                    |
01329033 | 83B8 00050000 01      | cmp dword ptr ds:[eax+500],1                     |
0132903A | 7E 17                 | jle 原文件.1329053                      |
0132903C | 6A 00                 | push 0                                           |
0132903E | 68 A45A7701           | push 原文件.1775AA4                     |
01329043 | 68 A85A7701           | push 原文件.1775AA8                     | 1775AA8:L"m_nCurLevel 错误!"
01329048 | 8B4D F0               | mov ecx,dword ptr ss:[ebp-10]                    |
0132904B | 83C1 04               | add ecx,4                                        |
0132904E | E8 9D350000           | call 原文件.132C5F0                     |
01329053 | 8D4D FC               | lea ecx,dword ptr ss:[ebp-4]                     |
01329056 | 51                    | push ecx                                         |
01329057 | 8B4D F0               | mov ecx,dword ptr ss:[ebp-10]                    |
0132905A | E8 81FAFFFF           | call 原文件.1328AE0                     |
0132905F | 85C0                  | test eax,eax                                     |
01329061 | 75 13                 | jne 原文件.1329076                      |
01329063 | 837D FC 00            | cmp dword ptr ss:[ebp-4],0                       |
01329067 | 74 08                 | je 原文件.1329071                       |
01329069 | 8B4D F0               | mov ecx,dword ptr ss:[ebp-10]                    |
0132906C | E8 EF000000           | call 原文件.1329160                     |
01329071 | E9 DB000000           | jmp 原文件.1329151                      |
01329076 | 8B55 F0               | mov edx,dword ptr ss:[ebp-10]                    |
01329079 | 81C2 20040000         | add edx,420                                      |
0132907F | 52                    | push edx                                         |
01329080 | 8B4D F0               | mov ecx,dword ptr ss:[ebp-10]                    |
01329083 | 81C1 68040000         | add ecx,468                                      |
01329089 | E8 B21D0000           | call 原文件.132AE40                     |
0132908E | 8B4D F0               | mov ecx,dword ptr ss:[ebp-10]                    |
01329091 | 81C1 20040000         | add ecx,420                                      |
01329097 | E8 3404FAFF           | call 原文件.12C94D0                     |
0132909C | 8B4D F0               | mov ecx,dword ptr ss:[ebp-10]                    |
0132909F | 81C1 20040000         | add ecx,420                                      |
013290A5 | E8 B67C0000           | call 原文件.1330D60                     |
013290AA | 0FB6C0                | movzx eax,al                                     |
013290AD | 85C0                  | test eax,eax                                     |
013290AF | 75 40                 | jne 原文件.13290F1                      |
013290B1 | 8B4D F0               | mov ecx,dword ptr ss:[ebp-10]                    |


在X64DBG中继续运行调试,程序竟然已经通过,右键补丁输出修改的程序,并导出补丁文件,以便万一需要继续调试。
退出X64DBG,运行程序,不输动态口令,顺利进入程序界面,检测计算机,导出报告,证明破解完美通过。

7天下载地址:
链接:https://pan.baidu.com/s/1hqBArj90j-fgL_c4a_D00w
提取码:ZYYU

评分

参与人数 25HB +29 THX +8 收起 理由
消逝的过去 + 2
Jawon + 2
一路走来不容易 + 1
虚心学习 + 1
行行行行行行 + 1
459121520 + 1
爱汇编爱汇编 + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
风里去 + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
agan8888 + 1
筱手冰冷 + 2 + 1 过程很清楚,感谢楼主分享思路
Cerolluo + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
我爱学习一 + 1
yexing + 1
temp + 1
zxjzzh + 2 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
l278785481 + 1
xgbnapsua + 1
pengyuwa1122 + 1
飞刀梦想 + 1
3821618 + 1
车太震 + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
a6855569 + 2
pygicx + 1
莣孒嬡沵芣蓜 + 6 + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
以梦为马 + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
boot 发表于 2022-7-11 20:30 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
 楼主| zyyujq 发表于 2022-7-12 08:51 | 显示全部楼层

boot 发表于 2022-7-11 20:30
麻烦放一份原版安装包

下载地址,,不是已经提供?!....
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
 楼主| zyyujq 发表于 2022-7-12 09:58 | 显示全部楼层

本软件只有政府采购才能获得,4000-7000元一套,网站没有下载的!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
boot 发表于 2022-7-13 19:10 | 显示全部楼层

zyyujq 发表于 2022-7-12 09:58
本软件只有政府采购才能获得,4000-7000元一套,网站没有下载的!

跟着思路实践了一下,帖子里的程序地址是013xxxxx,我这边是012xxxxx或者011xxxxx地址会变。用CFF关掉随机基址后,地址固定成007xxxxx,比较好分析一些。
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
飞刀梦想 发表于 2022-7-14 21:36 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
pengyuwa1122 发表于 2022-7-22 02:20 | 显示全部楼层

厉害  受教了
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
既许一人以偏爱 发表于 2022-7-22 19:36 | 显示全部楼层

吃水不忘打井人,给个评分懂感恩!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
素衣少年 发表于 2022-8-11 16:53 | 显示全部楼层

厉害  受教了
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
智慧的猪猪 发表于 2022-8-19 13:15 | 显示全部楼层

过来学习学习赚点币,感谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表