第一期 01 NOP 法破解

打开这个程序, 我们要破解的是它的登录系统

先随便输入一个密码, 然后看到左下角提示 密码错误 之类的, 记住这个字符串

首先 PEiD 查壳, 没有壳, 直接 OD 载入

CPU 反汇编右键 智能搜索

在字符串窗口右键 find, 或者用 ctrl+F 快捷键

我们输入刚才程序显示的错误信息 : 密码错误

一下就搜到了

找到字符串

我们双击点进去看汇编代码

跟踪字符串的代码

我们来分析一下, 如果密码正确, 那么程序就登录进去, 不会提示 密码错误

如果密码错误, 就会来到这里的代码, 来向屏幕输出 密码错误

然后我们在这上面正好发现了一个跳转, 这个跳转是跳到这个字符串的地方

这个红线就是跳转

我们向上观察这个跳转

这个红线中间有这么一串代码

这个跳转跳过了一些代码, 那么这些代码极有可能是 密码正确 的提示

不管怎样, 我们先在这个跳转这里 F2 下个断点, 然后我们运行

我们输入随便一个错误密码, 点击 确定, 程序停在了我们的断点那里

正常情况下, 程序会提示 密码错误, 但现在程序停了, 它在等我们的操作, 我们先 F8 单步跟踪看一下程序是怎么运行的

OD 此时显示 跳转已实现, 下一步它就跳转了

我们 F8 跟下去, 它走过了 密码错误 还有多少次机会

然后我们 F9 运行, 程序提示错误信息, 这里如果是让程序暂停的话, 你切换过去程序是会卡住的, 我们看不了程序, 所以这里我们要 F9 让程序运行起来

我们点 确定, 程序依然断在了刚才的断点处, 说明这个跳转是破解登录的一个关键跳转, 我们把它 nop掉~

将其nop掉

这样我们就破解了这个软件的登录系统~

右键保存 : 先选中我们修改的部分, 然后右键 复制到可执行文件, 然后 选择, 如果你修改的地方比较多, 也可以使用 所有修改

这时候又出来一个窗口, 我们右键 保存文件

我们打开破解版, 现在不输入密码也可以登录上去了, 至此所有工作都搞定了~