玩玩破解,写给新人看(练习1)作业以及思路

大家好我是这几天才注册的新手小白 看了大佬十几集的教学,根据教学学到了很多,发现我以前学到的易语言编程的毛皮技术用上了,我很清楚的看到了OD里面的汇编语言的流程,我破解的可能很慢,但是我了解了OD的程序运行方法和路线 今天对我的启发犹如晴天霹雳般开脑,打通了我任督二脉的其中一脉,啥也不说了感谢大佬。

下面开始讲述我破解的思路。

打开OD,丢进课件。

Ctrl+G

然后右键搜索字符串,我看到了登陆失败4个字 然后双击下断点,很可气的是竟然没断下。

然后利用到前几集学的GetWindowTextA断点  然后在下方Command:输入框内 输入BP GetWindowTextA 回车 点击课件登录 断下了

断下后因为小白看不懂Ctrl+F9到底执行到哪里才是自己想找的地方所以我是一直F8进行摸索

按了好久一点一点来到了这个地方我发现这个JE会跳过下面的(请输入账号和密码)这个应该是检测易语言编辑框内是否有文字的一个跳转 如果编辑框内有文字即跳转 没有文字即不会跳转反而继续往下走会提示(请输入账号和密码) 然后我在JE处下了一个断点把之前的BP GetWindowTextA 删除掉了

经过上面的分析我可以根据这个断点继续往下一步一步F8然后来到下面图片位置一个很长的大跳转 我发现这个跳转已实现 然后我心生邪念,我不让他跳转,反而让他执行下面这一段汇编码会不会就是成功呢!因为我知道验证完输入框内的文字 接下来肯定就是来判断输入框的文字是否有效 所以我把这个JE跳转nop掉了 然后F9让课件运行起来 结果很让我伤心这个JE不是关键的验证跳转

然后我撤销此处的修改继续F8往下走 跳转后来到了0040238B  发现这下面还有一个JE跳转(显示跳转已实现那么我们就NOP如果显示未跳转那么我们就修改成JMP这是我自己领略的经验)

当我往下翻阅查看时 看到了一个很不好的消息 我看到了RETN 大佬讲过这是一个返回命令 也就是一个子程序到此结束的消息,如果这个JE不是我想找的关键跳转,那之前我按了那么久的F8一点点的查阅,就到此结束了。 也就是我之前上面的分析有的地方就错了。

当代码运行到下面这个CALL的时候F8无效了 OD变成了运行状态 ,我点击课件查看成果,确实成功了。
我是一个纯小白,我不知道我的思路是否正确,如果有说错了哪些,还请大神不要喷我,如果有好的建议可以帮助同学们也请下方留言吧!

THE END
喜欢就支持以下吧
点赞0
分享
评论 抢沙发
  • 管埋员的头像-小北的自留地

    昵称

  • 取消
    昵称