CrackMe —— 006

160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序

CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 cracker,想挑战一下其它 cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。 CrackMe简称CM。 程序下载地址: 点击我

来源 <-点击查看

编号 作者 保护方式
006 aLoNg3x Name/Serial(Delphi)

 

 

 

 

工具 

x32dbg

KeyMake

DelphiDecompiler

开始破解之旅

ON.1

首先使用x32dbg打开程序搜索字符串 

在这个程序中我们需要让程序界面显示出 Ringzer0 logo

首先我们使用DelphiDecompiler 打开006号程序

逆向破解之160个CrackMe —— 006 Safe 第1张

Procedures -> Events下我们看到一个CodiceChange的函数从名字中可以得出是注册码改变的意思,我们在00442C78处下断,还有一个NomeChange函数,从名字中可以得出应该是用户名改变的意思,我们在00442E04处下断

ON.2

先在Nome框内敲击任意数据,程序停在了断点处

逆向破解之160个CrackMe —— 006 Safe 第2张

单步向下,我们发现了有两处跳转,来到第一处跳转,我们把ZF PF 变为1

逆向破解之160个CrackMe —— 006 Safe 第3张

F9运行

逆向破解之160个CrackMe —— 006 Safe 第4张

我们发现OK按钮变为了可点击状态,我们将00442E26地址改为NOP,OK按钮变恒为可点击状态

 

在Codice输入框内敲击任意数字,程序停在了断点处

逆向破解之160个CrackMe —— 006 Safe 第5张

单步F8向下

遇到第一个判断跳转处,我们将ZF反转,F9运行,发现OK按钮变为了灰色,说明注册码输入错误按钮会变为灰色

逆向破解之160个CrackMe —— 006 Safe 第6张

重新输入数据,停在了断点处,我们继续单步向下,跳过第一个跳转

来到第二个跳转

逆向破解之160个CrackMe —— 006 Safe 第7张

我们将ZF PF 变为1,F9运行,此时我们发现OK按钮变为了可点击状态

逆向破解之160个CrackMe —— 006 Safe 第8张

 

00442CD6 地址 修改为NOP,OK按钮变恒为可点击状态

接下来我们在00442D64处下断,从函数名我们可以得知该函数为OK按钮点击事件函数

点击OK,停在了断点处,单步向下

遇到两个跳转我们一次修改寄存器ZF查看窗口变化,经过修改两个跳转后发现OK按钮消失,我们将这两个跳转修改为NOP

逆向破解之160个CrackMe —— 006 Safe 第9张

按照提示破解是没有完全成功的,Cancella按钮没有消失

我们在清除按钮地址00442EA8处下断

点击Cancella,停在了断点处,单步向下

遇到一个跳转我们一次修改寄存器ZF PF为零F9运行查看窗口变化发现按钮消失,我们将该处跳转修改为NOP

逆向破解之160个CrackMe —— 006 Safe 第10张

破解成功

ON.3

在x32dbg界面右键->补丁->修补文件->保存 即刻保存成功修改的文件

逆向破解之160个CrackMe —— 006 Safe 第11张

此处是爆破方式,追码部分大家可以研究一下^_^

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄