逆向破解之160个CrackMe —— 022
CrackMe —— 022
160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序
CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 cracker,想挑战一下其它 cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破。
| 编号 | 作者 | 保护方式 |
| 022 | CarLitoZ | Serial(VB5) |
工具
x32dbg
VB Decompiler Pro
开始破解之旅
ON.1
爆破方式
首先使用x32dbg打开022号程序,搜索字符串

此时我们看见了有多个字符串,包含正确提示字符串还有一个可以的字符串“C:\\windows\\MTR.dat” 疑似读取文件的地址
我们进入正确提示字符串地址处00402DF7向上查看来到最近的一处跳转处00402DE9处下断点
00402DE3 | 8D55 | lea edx,dword ptr ss:[ebp-0x7C] | edx:EntryPoint
00402DE6 | 8D4D C4 | lea ecx,dword ptr ss:[ebp-0x3C] |
00402DE9 | 0F84 5A010000 | je carlitoz..402F49 | 判断跳转处
00402DEF | FFD7 | call edi |
00402DF1 | 8D55 | lea edx,dword ptr ss:[ebp-0x6C] | edx:EntryPoint
00402DF4 | 8D4D D4 | lea ecx,dword ptr ss:[ebp-0x2C] |
00402DF7 | C745 9C D4224000 | mov dword ptr ss:[ebp-0x64],carlitoz..4022D4 | 4022D4:L"Registration Successful"
00402DFE | C745 | mov dword ptr ss:[ebp-0x6C],0x8 |
00402E05 | FFD7 | call edi |
F9运行,在输入框内输入任意数据,点击REGISTER按钮
此时停在了我们的断点处

我们将00402DE9处JE修改为NOP

bingo ~ 破解成功
ON.2
追码方式
我们使用VB Decompiler Pro打开022号程序
在下图中我们看到了注册码的生成方式

现在我们要知道abt.Lable1.Caption是什么
我们打开Project->Forms->abt下我们看到窗体的Caption为“About”

我们点击程序的About

看到了我们的提示信息,但是此时看到所有的字符才90多个,哪来的一百多个呢
我们在VB Decompiler Pro中找到提示信息处

看到了中间相隔很多个空格,一共123个空格
register = "bPe CrackMe v1.0" + " " * 123 + "This CrackMe it`s to trainer your VB cracking ability" + " " * 123 + "Developed by CarLitoZ"
print(register[5:6] + register[8:9] + register[142:143] + register[15:16] + register[160:161] + register[170:171] + register[165:166] + register[167:168])
求出结果为“rkh1oyie”
输入到文本框内,点击REGISTER按钮

bingo ~ 破解成功
逆向破解之160个CrackMe —— 022的更多相关文章
- 逆向破解之160个CrackMe —— 001
CrackMe —— 001 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- 逆向破解之160个CrackMe —— 002-003
CrackMe —— 002 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 ...
随机推荐
- PassGuard密码控件配置
运行环境 win服务器 系统server2008R2 C# ASP.NET服务器页面 前端部分 1.引用 //JS部分引用 <script type="text/javasc ...
- ES5.1下的作用域链
作用域链(ES5.1规格视角) javascript作用域类型 javascript采用的是词法作用域(静态作用域) 与之相对的是动态作用域,以下的例子可以很好地说明 let a = 3 functi ...
- MySQL实战45讲学习笔记:第三十讲
一.复习一下加锁规则 在第20和21篇文章中,我和你介绍了 InnoDB 的间隙锁.next-key lock,以及加锁规则.在这两篇文章的评论区,出现了很多高质量的留言.我觉得通过分析这些问题,可以 ...
- Kafka如何保证高吞吐量
1.顺序读写 kafka的消息是不断追加到文件中的,这个特性使kafka可以充分利用磁盘的顺序读写性能 顺序读写不需要硬盘磁头的寻道时间,只需很少的扇区旋转时间,所以速度远快于随机读写 生产者负责写入 ...
- 去掉DataGridView最后一行的空白行,删除空白行
//不显示出dataGridView1的最后一行空白 dataGridView1.AllowUserToAddRows = false; 直接在LODE事件
- python字符串各种颜色输出
\033[1;31;40m # 1是显示方式(可选),31是字体颜色,40m 是字体背景颜色: \033[0m # 恢复终端默认颜色,即取消颜色设置: #!/usr/bi ...
- Linux 安装Mysql1.8【yum安装】
.下载mysql的yum源 wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm2.安装yum源yum lo ...
- scala中的Option
Scala中Option是用来表示一个可选类型 什么是可选? --> 主要是指 有值(Some) 和 无值(None)-->Some和None是Option的子类 val myMap:Ma ...
- HTML--元素居中各种处理方法2
紧接上一篇. 如果要居中的是一个块元素呢. 1)如果你知道这个块元素的高度: <main> <div> I'm a block-level element with a fix ...
- python3.7环境安装
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/libffi-devel-3.0.5-3.2.el6.x86_64.rpm rpm ...