这次我们的任务是破解这个需要注册码的软件,如下图所示

我们搜索上图相应的提示字符串,看看能找到什么线索,我们搜索  invalid  code  试试看,如下图

然后下断点,如下图所示

我们来到断点处的代码,如下图

观察代码,发现0041749C  JNZ SHORT XoftSpy.004174E3  能跳转到相应的成功注册的提示信息,如下图

我们干脆把代码改为 jmp  SHORT XoftSpy.004174E3,看看效果,如下图

用所欲修改保存,运行程序并且注册,发现提示成功,如下图

但是我们又发现,软件还是没有注册成功,如下图所示

我们干脆换个方式,搜索另外一个标志字符串,下断点,如下图所示

观察 00401499 JE SHORT XoftSpy.004014AD,这行代码能跳转到软件注册成功的代码处,如下图

我们尝试着用NOP来代替这行代码看看效果,如下图

用所有修改保存,运行软件,发现已经破解成功!!

小甲鱼OD学习第13-14讲的更多相关文章

  1. 小甲鱼OD学习第1讲

    这一讲我们的目标是修改Hello.exe对话框的标题和内容,如图所示 把程序放进OD,按F8一步步运行,直到程序弹出对话框为止,然后在弹出对话框位置处下断点 按Ctrl+F2重新载入程序,然后按F9直 ...

  2. 小甲鱼OD学习第6讲

    这次我们的任务是破解这个通讯录的软件,首先,我们在通讯录一个分组添加第5个人,发现弹出对话框,限制每组只能添加4个人 并且发现最多只能添加3个分组 我们把程序载入OD,运行,添加人,这个时候点击暂停, ...

  3. 小甲鱼OD学习第8讲

    这次我们的任务是破解这个有日期限制的软件 我们可以看到,这个一个有日期限制的软件,如图所示 首先,我们把程序载入OD,我们从字符串搜索入手,选择  所有参考文本字串,如图 我们输入相应的字符串尝试搜索 ...

  4. 小甲鱼OD学习第9讲

    这次我们的任务是破解这个要注册的软件,如下图所示 当我们输入账号密码的时候,它会提示输入的账号密码是无效的,如下图 我们把程序载入OD,然后在查找字符串那里输入提示的无效账号密码的字符串,如下图 然后 ...

  5. 小甲鱼OD学习第2讲

    这次我们的任务是让我们输入任意用户名密码判断正确 我们输入fishc和111111,显示错误 我们猜测这是用GetDlgItemTextW来收集账号密码的输入值 我们找到了两个函数,给这两个函数都下断 ...

  6. 小甲鱼OD学习第3讲

    这次我们的任务是破解这个过期的软件,效果如图所示 我们通过阅读代码,知道这个程序的执行流程如图中注释所示 观看下图注释所示 这是失败的提示代码 这是成功的提示代码 最后我们可以得出结论,成功破解软件的 ...

  7. 小甲鱼OD学习第7讲

    这次我们任务是破解这个有日期限制的软件,效果如图所示 我们一边下断点一边调试哪里是NAG窗口的程序,最终我们发现在地址 00489912  处的代码是NAG窗口的代码 通过观察我们把004898E1处 ...

  8. 小甲鱼OD学习第11讲

    这次我们的任务是破解这个需要注册的软件,如下图所示 我们这次从字符串入手,我们查找 unregistered  字符串 然后我们在如下图的字符串下断点 然后我们来到断点处,我们观察到 地址为 0040 ...

  9. 小甲鱼OD学习第12讲

    这次我们的任务是破解这个需要特定的注册码的软件,如下图 我们从字符串入手,输入register,搜索 我们点击    查找下一个,看看有什么有用的字符串,如下图 然后,在下方,我们发现了  Regis ...

随机推荐

  1. Oracle_view视图

    Oracle_view视图 视图view --视图:view --查询班级信息并统计各班的人数 select * from stu; select * from clazz;     select c ...

  2. Linux 安装及配置 Nginx + ftp 服务器

    Nginx 安装及配置 一.Nginx 简介: Nginx("engine x") 是一款是由俄罗斯的程序设计师 Igor Sysoev 所开发高性能的 Web和 反向代理服务器, ...

  3. PHP中file_exists()函数不能检测包含中文的文件名的解决办法

    版权声明:本文为博主原创文章,未经博主允许不得转载.          PHP中一般使用file_exists()判断某个文件或者文件夹是否存在,如果文件或文件夹存在则返回true,不存在则返回fal ...

  4. 关于在vue-cli中使用微信自动登录和分享

    (以下所有接口由后台提供) 一.微信自动登录 //定义事件 methods:{ //判断是否微信登陆 是不是微信浏览器 isWeiXin() { let ua = window.navigator.u ...

  5. 详解python中的__init__与__new__方法

    一.__init__和__new__方法执行的顺序? 在面向对象中介绍了关于对象创建的过程,我们知道__new__方法先于__init__方法执行. 二.__new__方法是什么? 首先,我们先来看下 ...

  6. 辩证看待 iostat

    前言 经常做系统分析会接触到很多有用的工具,比如 iostat,它是用来分析磁盘性能.系统 I/O 的利器. 本文将重点介绍 iostat 命令的使用,并分析容易引起误解的几个指标. iostat i ...

  7. ie、firefox、chrome中关于style="display:block" 引发的页面布局错乱的解决办法

    ie.firefox.chrome中关于style="display:block" 引发的页面布局错乱的解决办法: table中tr 添加style="display:b ...

  8. subList ArrayList LinkedList

    List<E> subList(int fromIndex,int toIndex) 该方法返回原有集合从fromIndex 到 toIndex之间一部分数据,组成一个新的集合,这两个集合 ...

  9. [转]CentOS Apache 性能调试!

    查看Apache的并发请求数及其TCP连接状态: netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 返回结果示例 ...

  10. 解决service层无法注入

    练手时发现个问题,路径404,各种检查发现,多加了一层<context:component-scan base-package="com.yanan.controller"/ ...