OllyDbg 设置断点的操做方法

Ollydbg是一个新的32位的汇编层调试软件。适应于windows9八、me、2000、xp和2003操做系统。因为他具备图形窗口界面,因此操做方便、直观,是cracker的好工具。 
因为Ollydbg没有了TRW2000的万能断点,因此许多的新手感受到用Ollydbg断点很差找。如今我来的说说Ollydbg下中断的几种方法。本人是个菜鸟,水平有限,可能不能完整的写出来,也可能存在错误。请你们指正。 
我所表述的是Ollydbg v1.10中文版,其余版本和英文版下本身参考。 

第一 寻常断点 
Ollydbg中通常下中断的方法,就是在程序的地址处用鼠标选择这一行。而后按F2键,这时被选择的那一行的地址会变成别的颜色,就表示这个地址处下了中断。而后运行程序时只有到这个地址处就会被Ollydbg中断。 
这个方法用的比较多,因此把他称做寻常断点。 
若是有命令行插件,就能够在命令窗口中输入BPX xxxxxxxx 下断点。 
优势:只要本身怀疑是重要的代码处均可如下这种下断点,不受条件的限制,因此方便实用。 
缺点:若是不知道代码功能下断点具备盲目性。 

第二 API断点 
Ollydbg中通常下API中断的方法,有二种。 
1. 在代码窗口中点鼠标右键,出现功能菜单。在[搜索]选择项下有〔当前模块的名称〕和〔所有模块的名称〕俩项,选择其中的一项就打开了程序调用API的窗 口,在这个窗口中选择你要跟踪的API函数名。双击这个函数就能到程序的调用地址处。而后用F2下中断。也能够在API窗口中选择须要跟踪的函数点鼠标右 键出现功能菜单,选择〔在每一个参考设置断点〕。一样下了断点。 
快捷方式:Ctrl+N 

2. 在命令行窗口中输入BPX API函数名或者BP API函数名 后回车。这时出现了全部调用这个函数的地址的窗口,在这个窗口中能够看到调用这个API函数的地址已改变了颜色。说明下好了断点。 
说明一下:BPX通常中断在程序调用API的地址处。BP会中断在API的写入地址处。二这有所不一样,根据须要选择。 
优势:这种方法下的断点是针对每个API函数的,因此具备明确的目的。 
缺点:关键的API函数不容易找到。因此有时下的断点没有做用。 

第三 内存断点(跟踪关键数据的断点) 
Ollydbg中的内存断点至关于TRW中的bpm 断点。 
下断点的方法是:在程序运行中断时选择界面中的转存窗口,用光标选择内存中的一段关键数据(颜色会改变),而后右击鼠标出现功能菜单。选择〔断点〕项,其中有二个选择〔内存访问〕和〔内存写入〕。 
〔内 存访问〕断点是程序运行时要调用被选择的内存数据时就会被Ollydbg中断,根据这个特色在破解跟踪时只要在关键数据内存中下中断就能够知道程序在什么 地方和何时用到了跟踪的数据。对于一些复杂算法和流程变态的算法跟踪有很大的帮助。从破解上讲,一个注册码的生成必定是由一些关键数据或者原始数据计 算来的。因此在内存中必定要用到这些关键数据。那么〔内存访问〕断点就是最好的中断方法。 
〔内存写入〕断点是程序运行时向被选择的内存地址写入数据时就会被Ollydbg中断。根据这个特色在破解时能够跟踪一个关键数据是何时生成的,生成的代码段在那个地方。因此一个关键的数据若是不知道他的由来就能够用〔内存访问〕断点查找计算的核心。 
内 存中断的下断点还有另外的一种方法:程序运行时若是知道关键的数据,好比咱们输入的试验码、程序生成的序列号等。这时在内存中必定存在这些数据。用Alt +M打开内存窗口,在这个窗口中搜索知道的关键数据。用光标选择这些数据一样下内存中断,这种方法更容易找的关键的数据。 
优势:断点是直接面向关键数据的,因此比较容易到核心部分。 
缺点:内存断点从新运行后会消失,干扰比较多。 

第四 硬件断点(跟踪关键标志的断点) 
硬件断点是Olldbg所特有的断点,他不会由于从新运行就销毁,只要不删除。跟踪这个程序时就有效。但他在98系统下会不起做用。 
硬 件断点是根据关键标志回逆到关键代码的好方法。下中断的方法和内存断点的方法相同,有三个方式〔硬件访问〕、〔硬件写入〕、〔硬件执行〕。通常用前2个。 他也一样有内存断点的特性,因此能够用内存断点的地方也能够用硬件断点。这里介绍利用他来跟踪注册标志的使用方法,通常软件的注册都用到了标志比较。即在 内存地址中有一个标志,在判断是否是注册时比较标志的值。不一样的值表示不一样的注册状态。这个标志的地址通常比较固定。根据这个特色能够下硬件断点来跟踪标 志位是什么地方被标志的。 
方法:在转存窗口中选择到标志存放的内存地址处,而后选择标志值。下〔硬件写入〕中断(根据标志的字节下不一样的长 度)。从新运行程序你会发现Ollydbg会不断的中断在这个标志的内存地址处。在功能菜单的〔调试〕选项下选择〔硬件断点〕就打开了硬件断点的窗口,在 这个窗口中选择〔跟踪〕,这时转存窗口就会来到被下中断的内存地址处。运行程序跟踪内存地址中的值就会知道被赋标志的代码,跟踪到计算的核心。〔硬件访 问〕的使用能够知道程序在运行时多少地方用到了这个注册标志。对于破解复杂效验的程序十分的有效。 
直接在命令栏里下bh ****硬件断点
相关文章
相关标签/搜索