【逆向】nop 填充爆破 简例 nop空指令替换 无条件执行
本例子用无加壳简单CrackMe程序进行操作。
软件设置正确密码为 admin,希望你能用不输入密码的方法成功进入。
软件下载地址:https://wwb.lanzouj.com/ibgby023r4uh
软件介绍:
该软件需要输入正确密码才能进入我们需要的界面,
若输入错误则提示:
输入正确密码(admin):
会给出正确提示并跳转到功能窗口页面
下面正式开始破解:
1.首先OD载入软件
2.载入软件后
汇编位置随便找个地方,右键 中文搜索引擎--智能搜索
3.开始找到我们提示错误的关键文字
ctrl +f 搜索 ‘破解失败’,双击进入
此时位置↓:
此时来到这个位置,我们要的不是这个位置,因为我们用的是nop填充破解,所以不需要这个,我们要的是成功的提示,
其实刚刚上面就可以看到破解成功的关键文字了,但是我们没有直接点进去是因为我们知道, 在我们这个 if语句中,只有两种结果,要么成功 要么失败
我们直接进入失败提示 然后往上拉一点,就可以找到成功的提示了。
往上拉一点,找到了成功提示的位置↓:
我们这里可以看到 这个语句有一个je条件判断跳转,je是相等时跳转(注意条件判断跳转我们还有另一种方法可以直接破解,这里我们先用nop爆破演示破解)
我们直接右键
使用nop填充这个条件判断
nop就是用空指令替换这个条件判断语句,也就是不管怎么样,都会直接执行后面的命令,不会再跳到其它地方,也就是会继续执行下面破解成功的命令。
这个时候我们再用F9运行软件,我们的正确密码是 admin,但是我们现在可以随便输入一个密码,或者不输入也可以
这样就实现了nop破解了。