160个crakeme之006aLoNg3x.1题目分析

0x01:

先运行一下看看有什么提示特点

发现OK是灰色的 点击Cancella是用来清空***框 点击About-Help连着出现四个弹窗

160个crakeme之006aLoNg3x.1题目分析

这个"CrackMe"的目的是为了让用户隐藏"OK"和"Cancella"按钮,以便于看到Ringzero标志。所以你必须输入正确的***。

 

160个crakeme之006aLoNg3x.1题目分析

(人名)诺塔:如果这些按钮没有被看不见,那么你就没有**这个Crackme:)

 

160个crakeme之006aLoNg3x.1题目分析

如果你需要一些帮助 给我发电子邮件,或者你解决了这个问题,请把你的解决方案写下来。多谢。

 

160个crakeme之006aLoNg3x.1题目分析

由"aLoNg3x"电子邮件所写的"CrackMe v.1":[email protected]。"RingzerO"成员网址:http://ringzer0.cjb.net

 

0x02:

PEiD查下壳 发现无壳 并且是Delphi的程序

160个crakeme之006aLoNg3x.1题目分析

 

OD载入不好找关键字符串(我尝试了 只找到那几个弹窗提示) 既然是Delphi的程序 那么就用DeDe

0x03:

    载入DeDe

点击窗体 查看一下窗体的各个组件

 

160个crakeme之006aLoNg3x.1题目分析

点击过程 看到OkClick

160个crakeme之006aLoNg3x.1题目分析

 

找到地址是00442D64

 

将程序载入OD

Ctrl+G

接着输入地址 点击ok 来到段首 F2下个断点

F9运行程序 输入假码 发现程序无法中断下来 那就换一个

160个crakeme之006aLoNg3x.1题目分析

Ctrl+G

接着输入地址00442C78 点击ok 来到段首 F2下个断点

F9运行程序 输入假码 发现程序断了下来(找到关键了)

 

 

160个crakeme之006aLoNg3x.1题目分析

F8单步慢慢向下走

 

取到假码

160个crakeme之006aLoNg3x.1题目分析

 

取到用户名

160个crakeme之006aLoNg3x.1题目分析

 

经过几次调试 发现

160个crakeme之006aLoNg3x.1题目分析

 

只要将jnz nop掉 让它顺利走到下边那个jmp Ok键就可以用

 

160个crakeme之006aLoNg3x.1题目分析

 

其他的我们先不去管 先点击Ok 让程序运行 发现断在了第一次下的断点处

160个crakeme之006aLoNg3x.1题目分析

 

经过分析发现需要将第一个jnz改为jmp

下边这个je nop掉 即可将ok这个按钮隐藏

 

 

160个crakeme之006aLoNg3x.1题目分析

 

160个crakeme之006aLoNg3x.1题目分析

 

隐藏效果如图

 

160个crakeme之006aLoNg3x.1题目分析

 

 

接着就是用DeDe找到Cancella这个按钮的位置

 

160个crakeme之006aLoNg3x.1题目分析

 

 

Ctrl + G

输入00442EA8

点击ok 来到段首 F2下个断点

F9运行程序 输入假码 发现程序断了下来

 

160个crakeme之006aLoNg3x.1题目分析

 

 

F8单步进行分析(就是各个跳转分析下 实验实验)

分析可知只需要将第一个je跳转nop掉即可 接着F9运行程序就可以隐藏Cancella这个按钮

160个crakeme之006aLoNg3x.1题目分析

 

160个crakeme之006aLoNg3x.1题目分析

 

好了 任务完成 嘻嘻

 

算法分析还是看这两位大神的:

    https://www.cnblogs.com/bbdxf/p/3788289.html

    https://www.52pojie.cn/thread-610580-1-1.html

(还有关于怎样汉化这个crakeme的讲解)