破解之关键CALL与关键跳查找方法
找关键CALL和关键跳
方法一:
输入假码注册程序,记录下错误提示信息。
OD载入程序-->
右键-->查找-->所有参考文本字串-->(右键-->查找文本,注:不要区分大小写,选择整个范围)找到上面记录的错误提示文本
或:右键-->超级字符串参考-->查找ASCII码/UNICODE->(右键-->查找文本,注:不要区分大小写,选择整个范围)找到上面记录的错误提示文本
-->双击进去,关键CALL和关键跳就在其上面附近。一般在其上有提示注册成功的文本信息,在成功和失败提示文本的上面有一个比较,比较下面有一个跳转。在比较的上面的第一个CALL就是关键CALL了。
方法二:
OD载入程序-->F9运行程序-->输入假码注册程序,确认,弹出错误提示框-->F12暂停程序运行--->ALT+K查看调用堆栈-->找到来自主程序的调用-->双击进去-->,关键CALL和关键跳就在其上面附近。一般在其上有提示注册成功的文本信息,在成功和失败提示文本的上面有一个比较,比较下面有一个跳转。在比较的上面的第一个CALL就是关键CALL了。
简单爆破方法:
方法一:修改关键CALL(通过修改寄存器的值达到控制关键跳实现与否)
找到关键CALL之后先在关键CALL上下个断点(其上附近亦可)-->重载程序-->F9运行程序-->输入假码,确认-->回到OD,则停留在我们上面下段的地方-->单步跟踪到关键CALL上F7步入-->在段首(跟进去所在的位置)写入mov eax,1(注:其中之所以要修改eax的值是由于影响关键跳的比较的寄存器为eax,通常都是eax。之所以修该为1,是为了转换关键跳的实现与否,如:默认eax为0,关键跳没实现,那么我没就把eax改为非零值即可),在下一行写retn X(X为该段尾返回的值,如果他没有返回我们也不返回任何值)-->保存修改-->OK
方法二:修改关键跳(直接不理会判断条件,强制改变其跳转状态)
该关键跳为相反状态(如:je-->jz, jnz-->jmp 等等)

为什么要修改EAX的值:

修改关键CALL:

破解之关键CALL与关键跳查找方法的更多相关文章
- 用Kotlin破解Android版微信小游戏-跳一跳
前言 微信又更新了,从更新日志上来看,似乎只是一次不痛不痒的小更新.不过,很快就有人发现,原来微信这次搞了个大动作——在小程序里加入了小游戏.今天也是朋友圈被刷爆的缘故. 看到网上 有人弄了一个破解版 ...
- jQuery 的选择器常用的元素查找方法
jQuery 的选择器常用的元素查找方法 基本选择器: $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myE ...
- C#中页面之间跳转方法比较
一直以来,各种跳转方法混用,浑浑噩噩没有仔细去了解过每个跳转方法的区别 1.<a herf="default.asp"></a> 超链接跳转 2.< ...
- 浅析jQuery中常用的元素查找方法总结
本篇文章是对jQuery中常用的元素查找方法进行了详细的总结和介绍,需要的朋友参考下 $("#myELement") 选择id值等于myElement的元素,id值不能重复在文 ...
- iframe中的各种跳转方法
iframe中的各种跳转方法(转) 一.背景A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,在D中跳转页面的写法区别如下. 二.JS跳转window.l ...
- sap 三代出口(BADI)的查找方法
sap 三代出口(BADI)的查找方法 对于根据事务代码查找对应的BADI,网上介绍的方法很多,但总结下来无非就两种方法,在此把它记录下来,方便以后自己查阅了.(1)通过SE24,输入CL_EXITH ...
- php开发中的页面跳转方法总结
PHP页面跳转实现的功能就是将网站中一个网页跳转到另一个网页中.对于刚刚学习PHP语言的朋友来说,是必须要掌握的基础方法. 页面跳转可能是由于用户单击链接.按钮等触发的,也可能是系统自动产生的.页面自 ...
- jquery元素查找方法集锦
jQuery常用的元素查找方法总结 $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到 ...
- <1>Linux日志查找方法
Linux日志查找方法 适用于测试,开发,运维人员,用来查找Linux服务器问题的一般方法,比较实用,如果有更好的办法可以一块讨论,欢迎大神们来指导哈!!! 进入正题 第一步.通过Xshell登录服务 ...
随机推荐
- jQuery DOM XSS漏洞
jQuery DOM XSS漏洞http://automationqa.com/forum.php?mod=viewthread&tid=2943&fromuid=21
- web项目设计与开发——DBHelper2
第二次学习的内容是根据DBHelper遍历出数据库中的所有数据. 具体内容为: 一.编写程序 1.创建工程——userMangager 2.在src目录下创建四个包,分别为DAO,DB ...
- APT源
Debian 6.0.7 deb http://mirrors.163.com/debian squeeze main non-free contribdeb http://mirrors.163.c ...
- JVM笔记7:类加载器
虚拟机设计团队把类加载阶段中的"通过一个类的全限定名来获取描述此类的二进制字节流"这个动作放到Java虚拟机外部实现,以便让应用程序自己决定如何去获取所需要的类,实现这个动作的代码 ...
- struts2学生信息管理系统篇章①
最近在看java1234分享的一个Struts2的学生信息管理系统的知识.因为本身java没什么底子.所以就没有什么好的技术去解决问题.一直在百度,不懂就百度.这样子下来其实也能学到一些东西,过阵子等 ...
- NUnit使用详解(二)
转载:http://hi.baidu.com/grayworm/item/39aa11c5d9375d56bdef6990 五:常用断言 在NUnit中,断言是单元测试的核心.NUnit提供了一组丰富 ...
- hdoj1874 (优先队列+Dijkstra)
hdoj1874 分析: 一看题目, 就是求最短路, 这道题用的是Dijkstra+优先队列.先说一下Dijkstra算法:每次扩展一个距离最短的节点, 更新与其相邻点的距离. 当所有边权都为正时, ...
- JS实现rgb与16进制颜色相互转换
1.rgb转16进制 function to16 (a) {//RGB(204,204,024) //十六进制颜色值的正则表达式 var reg = /^#([0-9a-fA-f]{3}|[0-9a- ...
- 节点插入--对比jQuery和JavaScript方法(一)
二.插入元素: 1 <div> 2 <p>面朝大海,春暖花开</p> 3 </div> (一).jQuery方法 1.在节点内部插入: 方法 说明 ap ...
- java PropertyChangeSupport委托帧听类的使用
要委托的Bean类写法. import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import ...