OD破解Crackme1.exe密码

本文详细介绍了使用OD破解Crackme1.exe的过程,通过单步调试发现密码长度为14位,经过一系列异或操作后,计算得出正确口令为'Cr4ckIsSoE4sy!'。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以前做的一个小练习,单步运行了好多遍才捋清楚

OD打开crackme,在跳转地址00401060设置断点输入口令单步运行(每次输入不同长度的口令)
这里写图片描述
这里写图片描述
经过多次尝试发现EDX中存放的数据为输入口令的长度,而ECX始终为14,应该是正确口令的长度。所以输入长度为14的字符串12345678901234继续单步运行,情况如下:
这里写图片描述
这里写图片描述
这里写图片描述
输入口令存入ESI中,将ESI+EDX的值存入AL,ESI存入EDI,从第一位“1”开始,AL与0x20异或存放ascii码,循环14次。代码段如下:
这里写图片描述
BL中存EDX+ESP+0xC,CL存EAX+ESI,比较BL与CL,有字符不相等就跳转结束。代码段如下:
这里写图片描述
输入口令A与0x20异或为M则为正确口令,系统值D+0xFB为M’正确,
因此将M’与0x20异或可得出正确口令A。即CL=BL异或0x20。因此做如下计算:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值