逆向破解crackme简要分析

前言:本文为小白的一个简单crackme逆向破解过程。

1爆破过程

1.1运行程序,观察分析结构

1.2peid分析PE文件结构

分析发现该PE文件并未加壳

1.3载入od分析其运行过程

采用字符串搜索法,找到爆破入口点,查找->所有文本参考字符串,找到跳转的位置,从而实现爆破。

 

将jnz short 004015AD即可实现爆破,直接nop使得其无法跳转。

1.4保存修改的文件

将修改好的指令,复制到可执行文件,保存即可实现爆破。即任何密码都可成功

2分析crackme的密码验证过程

2.1密码的长度比较

通过跳转位置,确定函数的入口点,单步执行,发现调用了我们输入的密码,以及lstrlen函数

该函数适用于比较字符串长度的。(如果密码长度不正确将跳转并重新输入数字)

2.2密码的比较

本题较为简单,原密码已经存储于程序中,在验证过程中将其调用,并与输入的密码作比较。分析lstrcmpA函数可知,该函数为字符串比较函数,截图中已经将原密码压入堆栈,如右下方所示。至此分析完毕。

总结:此文为小白第一次写逆向破解的文章,如有不当之处,请大佬们指出,感谢大家的支持和鼓励。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值