逆向破解之160个CrackMe —— 002-003
CrackMe —— 002
160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序
CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 cracker,想挑战一下其它 cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破。
| 编号 | 作者 | 保护方式 |
| 002 | Afkayas | Name/Serial(VB5) |
| 003 | Afkayas | Nag,Name/Serial(VB5) |
工具
x32dbg
KeyMake
开始破解之旅
ON.1
使用x32dbg打开002号程序,运行
在输入框输入任意数据,点击按钮 OK ,弹出窗口

爆破方式
搜索字符串 “Try Again”点进地址向上查看,在 0040258B处下断点 ,这里是逻辑正确跳转处
0040258B | 74 58 | je afkayas.1.4025E5 |
0040258D | 68 801B4000 | push afkayas.1.401B80 | 401B80:L"You Get It"
00402592 | 68 9C1B4000 | push afkayas.1.401B9C | 401B9C:L"\r\n"
00402597 | FFD7 | call edi |
00402599 | 8BD0 | mov edx,eax |
0040259B | 8D4D E8 | lea ecx,dword ptr ss:[ebp-0x18] |
0040259E | FFD3 | call ebx |
004025A0 | 50 | push eax |
004025A1 | 68 A81B4000 | push afkayas.1.401BA8 | 401BA8:L"KeyGen It Now"
004025A6 | FFD7 | call edi |
004025A8 | 8D4D 94 | lea ecx,dword ptr ss:[ebp-0x6C] |
004025AB | 8945 CC | mov dword ptr ss:[ebp-0x34],eax |
004025AE | 8D55 A4 | lea edx,dword ptr ss:[ebp-0x5C] |
004025B1 | 51 | push ecx |
004025B2 | 8D45 B4 | lea eax,dword ptr ss:[ebp-0x4C] |
004025B5 | 52 | push edx |
004025B6 | 50 | push eax |
004025B7 | 8D4D C4 | lea ecx,dword ptr ss:[ebp-0x3C] |
004025BA | 6A 00 | push 0x0 |
004025BC | 51 | push ecx |
004025BD | C745 C4 08000000 | mov dword ptr ss:[ebp-0x3C],0x8 |
004025C4 | FF15 10414000 | call dword ptr ds:[<&rtcMsgBox>] |
004025CA | 8D4D E8 | lea ecx,dword ptr ss:[ebp-0x18] |
004025CD | FF15 80414000 | call dword ptr ds:[<&__vbaFreeStr>] |
004025D3 | 8D55 94 | lea edx,dword ptr ss:[ebp-0x6C] |
004025D6 | 8D45 A4 | lea eax,dword ptr ss:[ebp-0x5C] |
004025D9 | 52 | push edx |
004025DA | 8D4D B4 | lea ecx,dword ptr ss:[ebp-0x4C] |
004025DD | 50 | push eax |
004025DE | 8D55 C4 | lea edx,dword ptr ss:[ebp-0x3C] |
004025E1 | 51 | push ecx |
004025E2 | 52 | push edx |
004025E3 | EB 56 | jmp afkayas.1.40263B |
004025E5 | 68 C81B4000 | push afkayas.1.401BC8 | 401BC8:L"You Get Wrong"
004025EA | 68 9C1B4000 | push afkayas.1.401B9C | 401B9C:L"\r\n"
004025EF | FFD7 | call edi |
再次点击 OK 按钮,此时停在断点处,ZF 标志位为 ,双击改变标志位为,F9 运行

出现正确提示,修改 je 4025E5 为 NOP 保存,输入任意数据,点击按钮,显示正确弹窗。
注册机方式
此处需要选择宽字符串

CrackMe —— 003
ON.1
使用x32dbg打开003号程序,运行
出现了两个窗口

左边的窗口是要Kill掉的,右边的则需要我们来爆破
ON.2
这里使用4C方法来破解NAG窗口
来到入口点
00401170 | 68 D4674000 | push afkayas.2.4067D4 |
00401175 | E8 F0FFFFFF | call <JMP.&ThunRTMain> |
0040117A | 0000 | add byte ptr ds:[eax],al |
第一个push处转到内存窗口,内存窗口地址为004067D4 ,4C就是这个地址加上4C
右键转到->表达式

此时跳转到00406820地址处
00406820 68 68 40 00 CC 67 40 00 7C 11 40 00 68 00 00 00 hh@.Ìg@.|.@.h...
在该地址处右键“在当前内存窗口中转到指定DWORD”

此时在 和004048D8处各有两个标志位,该标志位代表了程序加载窗口的启动顺序,先加载后加载,就是我们要去除的NAG窗口,将两个标志位颠倒,便可以达到去除NAG窗口的效果。

绕过验证方法和002相同 ( ̄▽ ̄)~*
逆向破解之160个CrackMe —— 002-003的更多相关文章
- 逆向破解之160个CrackMe —— 001
CrackMe —— 001 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- 逆向破解之160个CrackMe —— 004-005
CrackMe —— 004 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- 逆向破解之160个CrackMe —— 013
CrackMe —— 013 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- 逆向破解之160个CrackMe —— 014
CrackMe —— 014 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- 逆向破解之160个CrackMe —— 016
CrackMe —— 016 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- 逆向破解之160个CrackMe —— 017
CrackMe —— 017 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- 逆向破解之160个CrackMe —— 018
CrackMe —— 018 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- 逆向破解之160个CrackMe —— 025
CrackMe —— 025 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- 逆向破解之160个CrackMe —— 026
CrackMe —— 026 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
随机推荐
- 公司倒闭 1 年了,而我当年的项目上了 GitHub 热榜
公司倒闭 1 年多了,而我在公司倒闭时候做的开源项目,最近却上了 GitHub Trending,看着这个数据,真是不胜唏嘘. 缘起 2017 年 11 月份的时候,松哥所在的公司因为经营不善要关门了 ...
- POJ 3581:Sequence(后缀数组)
题目链接 题意 给出n个数字的序列,现在让你分成三段,使得每一段翻转之后拼接起来的序列字典序最小.保证第一个数是序列中最大的数. 例如样例是{10, 1, 2, 3, 4},分成{1, 10}, {2 ...
- 02(a)多元无约束优化问题
2.1 基本优化问题 $\operatorname{minimize}\text{ }f(x)\text{ for }x\in {{R}^{n}}$ 解决无约束优化问题的一般步骤 ...
- 关于Nginx499、502和504的分析
我相信有些人在面试运维类岗位的时候会碰到对方问关于这方面的问题,我这里通过几个实验来复现这个情况,并做出相关分析,我希望大家看完后针对这种问题能有一个清晰思路. 服务器 IP Nginx 192.16 ...
- 【linux杂谈】在SSH连接中,openssh如何解决'Connection refused'错误?
openssh是SSH (Secure SHell) 协议的免费开源实现.SSH协议族可以用来进行远程控制, 或在计算机之间传送文件. 这就意味着远程登陆,文件推拉特别是搭建集群后公钥的部署,经常要利 ...
- GStreamer基础教程04 - 动态连接Pipeline
摘要 在以前的文章中,我们了解到了2种播放文件的方式:一种是在知道了文件的类型及编码方式后,手动创建所需Element并构造Pipeline:另一种是直接使用playbin,由playbin内部动态创 ...
- 番外:深浅copy
进击のpython 深浅copy copy是什么意思? 复制 (又学一个单词!开不开森) 那啥叫复制呢? 百度百科上给的解释是:仿原样品制造 我们曾经有过这样的印象 a = "zhangsa ...
- ROS中URDF的学习以及与Xacro的比较
1.urdf与Xacro简单比较 "URDF" 是最初也是比较简单的机器人描述文件,它的结构简单明了,容易理解.但是这也导致当机器人模型变得复杂时,urdf的结构描述就变得冗长,无 ...
- CentOS 7搭建vsftp(虚拟用户方式登录)
说明: vsftpd的版本:vsftpd-3.0.2-22.el7.x86_64 ftp 根目录 : /data/ftp ftp 配置文件目录:/etc/vsftpd ftp 虚拟用户权限配置文件目录 ...
- SpringBoot快速入门01--环境搭建
SpringBoot快速入门--环境搭建 1.创建web工程 1.1 创建新的工程. 1.2 选择maven工程,点击下一步. 1.3 填写groupid(maven的项目名称)和artifacti ...