先了解一下软件的运行:

打开后是这样的,要注册

随便输入假注册码,看他怎么响应:

会弹出一个信息窗(massageBox)提示注册失败。到这里就行了,关掉,然后用OD打开,按F9跑起来:

这里输入假码,如果点register,那么就会弹出信息窗。所以在这里要下个信息窗的api断点:

和messagebox有关的全选上,没关系。

然后再点程序的register,就被成功断下来了。

这时运行在系统领空,因为这是程序在调用windows里的messagebox功能。所以一直往下F8单步,一步步的return出来,直到来到程序领空:

这就来到程序领空啦。

注意:(从系统领空往下F8单步时,走到半路信息窗会完全弹出来,把它点个确定后继续单步,这不是程序脱离控制)

这个信息窗只是说一下注册失败,是已经判断完了。所以真正的判断代码是在这函数上面。往上翻就能看到上面的关键代码了。

这时候messagebox断点就没用了,点一下【B】把他们都删了吧。

上面有个请输入用户名、注册码的提示,应该是当没输入,点注册时会出来。在上面的call下断,为了让程序停在这里,再一步步分析下面的代码。不然截到下面也没用。。。

再点注册,程序果然停在了这call,按F8一步步向下分析:

看到这里就很眼熟了,je跳过“注册成功”,这call应该就是判断注册码的函数。按F7进去

这call里咱们的假注册码频繁出现(注意右下角的堆栈窗),应该找对了:

一直往下运行,来到末尾的return位置:

接下来要把eax置1,暴力一点直接把retn 8这行改成mov eax,1

下面一行改成retn 8

(想修改,双击代码即可)

下面的代码破坏掉了,没关系,反正咱们注册成功了不关心其他的事情。

点F9继续运行,破解成功:

最后一步,保存破解程序,

把破解的程序放到安装目录,以后点这个就可以了,重新发送一个桌面快捷方式。原程序删了也可以,留着的话记得不要点它,删除原本的进入方式(比如桌面图标)

总结:本程序关键就在于那个massagebox,看到这个特征直接下对应的断点即可,快速接近关键代码。

后记:

写这个很纠结,说的详细了就很繁琐,说的简单了小白也看不懂,所以尽量把OD的过程说的详细,其他的电脑基本操作就没讲。如果你任何不懂,就去百度一下,那些我省略掉的东西是每个电脑使用者必须掌握的。

URL helper 逆向破解思路+详细过程 利用messagebox破解的更多相关文章

  1. SecureCRT的安装与破解,详细过程

    使用SecureCRT可以方便用户在windows环境下对linux主机进行管理,这里为大家讲一下SecureCRT的破解方法,仅供大家参考学习: 1.首先在本站下载SecureCRT 7.3.6最新 ...

  2. 在浏览器中简单输入一个网址,解密其后发生的一切(http请求的详细过程)

    在浏览器中简单输入一个网址,解密其后发生的一切(http请求的详细过程) 原文链接:http://www.360doc.com/content/14/1117/10/16948208_42571794 ...

  3. 部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0)

    部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0) 部署Bookinfo示例程序   在下载的Istio安装包的samples目录中包含了示例应用程序. ...

  4. 利用PMKID破解PSK的实际测试与影响评估

    在2018年8月4日,一位研究员在hashcat论坛中发布了一篇帖子,表示他研究WPA3协议密码破解方法的过程中,发现了一个针对WPA/WPA2协议密码破解的新方法,使用PMKID(the Pairw ...

  5. Asp.net页面生命周期详解任我行(3)-服务器处理请求详细过程

    前言 百度了一下才知道,传智的邹老师桃李满天下呀,我也是邹老师的粉丝,最开始学习页面生命周期的时候也是看了邹老师的视频. 本人是参考了以下前辈的作品,本文中也参合了本人心得,绝非有意盗版,旨在传播,最 ...

  6. 一个http请求的详细过程

    一个http请求的详细过程 我们来看当我们在浏览器输入http://www.mycompany.com:8080/mydir/index.html,幕后所发生的一切. 首先http是一个应用层的协议, ...

  7. 第一部分:使用iReport制作报表的详细过程(Windows环境下)

    提示:在有些板块,文中的图片看不到,建议到我的blog浏览文章:http://blog.csdn.net/jemlee2002/文章将会涉及3个方面的内容: 第一部分:使用iReport制作报表的详细 ...

  8. WPA-PSK无线网络破解原理及过程(转)

    本文将主要讲讲WPA-PSK类型的无线网络安全问题,首先我们看下802.11协议相关的基础知识. 802.11常见的几种认证方式: 1.不启用安全‍‍ ‍‍2.WEP‍‍ ‍‍3.WPA/WPA2-P ...

  9. STM32F0xx_FLASH编程(片内)配置详细过程

    Ⅰ.概述 关于数据的储存,我觉得编程的人基本上都会使用到,只是看你储存在哪里.STM32的芯片内部FLASH都是可以进行编程的,也就是说可以拿来储存数据.但是,很多做一些小应用程序开发的人都没有利用好 ...

随机推荐

  1. Django后端项目---- rest framework(4)

    一.分页 试问如果当数据量特别大的时候,你是怎么解决分页的? 方式a.记录当前访问页数的数据id 方式b.最多显示120页等 方式c.只显示上一页,下一页,不让选择页码,对页码进行加密 1.基于lim ...

  2. 细数那些不懂Spring底层原理带来的伤与痛

    1. 什么是spring? Spring 是个Java企业级应用的开源开发框架.Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用.Spring 框架目标是简化Jav ...

  3. eclipse的svn插件添加代理访问svn

    1.首先找到插件配置文件 C:\Users\Administrator\AppData\Roaming\Subversion这个目录下的servers文件 打开找到 # http-proxy-host ...

  4. PYQT5 + PYCHARM

    PYQT5 C:\Users\xxx\AppData\Local\Programs\Python\Python37\Lib\site-packages\pyqt5_tools\designer.exe ...

  5. 被fancybox坑的心路历程

    今天项目中需要使用fancybox来展示图片,但是使用中发现fancybox没起作用,点击图片直接刷新了页面! fancybox的原理是通过给a标签绑定事件,使得a标签不在是直接跳转链接,而是把链接中 ...

  6. Codeforces Round #427 (Div. 2) Problem C Star sky (Codeforces 835C) - 前缀和

    The Cartesian coordinate system is set in the sky. There you can see n stars, the i-th has coordinat ...

  7. ThreadPoolExecutor线程池

    为什么使用线程池: 1.创建/销毁线程伴随着系统开销,过于频繁的创建/销毁线程,会很大程度上影响处理效率. 2.线程并发数量过多,抢占系统资源从而导致阻塞. 3.对线程进行一些简单的管理. 在java ...

  8. git初学

    git在团队合作开发时是很有用的,SVN是集中式的代表,而git是分布式的代表,它分为代码区.暂存区.和本地库.在同一个团队中开发时,在代码存储中心(例如,码云.github)上创建一个库,用于储存和 ...

  9. openwrt中在软件包中定义PKG_INSTALL将会发生什么?

    答: 将会使用默认软件包安装方式,相关代码如下 . 在include/package.mk中: Build/Install=$(if $(PKG_INSTALL),$(call Build/Insta ...

  10. SSM项目 单元测试中 注入bean 空指针异常

    ##特别 由于准备春招,所以希望各位看客方便的话,能去github上面帮我Star一下项目https://github.com/Draymonders/Campus-Shop java.lang.Nu ...