Crackme4笔记

链接:https://www.52pojie.cn/thread-613337-1-1.html
https://www.52pojie.cn/thread-604635-1-1.html

**Delphi程序
一、爆破**
1、首先载入OD,利用字符串查找法,找到注册成功处
这里写图片描述
2、从上方找出关键跳转,nop掉即可爆破
这里写图片描述

二、找出算法
1、在那个关键跳转所处程序段的开头下断,分析代码。发现2个循环,但不知道啥意思,但是打开图片的代码肯定不在这里
这里写图片描述
2、继续上拉程序,发现这个,貌似很像注册码哎
这里写图片描述
继续上拉
这里写图片描述
这些是Delphi程序编程时使用的控件和事件名称,常用的标签Label1至6,文本编辑框Edit1和Edit2,图片等。

3、用专门的Delphi反汇编工具Dede打开程序
这里写图片描述
4、首先利用Dede给出的chkcode给的地址,下断,重新载入程序,运行,作以下输入,则程序自动断了
这里写图片描述
5、分析代码
这里写图片描述
这里写图片描述
则得到了注册码“黑头Sun Bird10dseloffc-012-OK12345”,
来验证一下
这里写图片描述
果然如教程所说成功了!
后经测验中间那个10,是用户名长度+5得到的。
但是发现单击图像依然不出现,先双击再单击才出现图像,这是咋回事?

6、在Dede中有单击和双击两个事件,我们对单击下断,重新载入运行,输入,单击图像,程序断住,分析代码
这里写图片描述
发现这段程序就是我们nop关键跳转的地方哎~

7、同理,对双击事件下断
这里写图片描述
发现关键地方,如果[esi+0x30c] = 0x3E,则将0x85赋值给[esi+0x30c],则关键跳转的上已经cmp dword ptr ds:[esi+0x30c],0x85就为0,关键跳转就不实现,则注册成功。

所以可以将此jnz nop掉,则先双击,再单击即可显出图片
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_15727809/article/details/79806611