A. Ollydbg的左下角,有一个命令编辑框,在哪
公式破解方法
1:不是使用
Win
hex,而是使用Ollydbg来破解.
2:只是用户公式修改密码有效。对于导入密码无效。对于系统公式密码无效,默认的系统公式密码可能是OK_TDX(测试了两个版本,其他的不知道)
不过好像有的不能编辑,不过VOL_TDX等系统的公式好像可以查看和修改。
方法:
1:使用Ollydbg,点文件,打开,选择通达信的可执行文件(或者把通达信的执行文件直接拖进Ollydbg的窗口),按F9运行程序。
2:正常使用通达信,进入到K线图后,在k线图(主图或者副图上)点右键,选择指标,然后选择一个加密的公式,点确定。
此时公式应该能正确使用并且在图上显示出来。
3:点右键,选当前指标,选修改指标公式,此时需要输入密码,随便输入几个数,但不要点确定。
4:在Ollydbg的左下角,有一个命令编辑框,输入命令bp _mbscmp,回车,这时断点下好了。
5:点修改密码公式框中的确定按钮,此时中断在_mbscmp中,在右上角的EAX的值就是密码,ECX值是你随便输入的数。
6:找到密码后,点在左上角的红黑色的一行代码,点F2取消断点,再点F9来继续程序执行。可以循环2-6步来得到其他的密码。
7:完成,哈哈。
对系统公式无效,是指使用系统默认密码OK_TDX,能打开但是不能查看和编辑。
不过对于有的系统公式如VOL_TDX需要密码的,可以使用默认密码来查看它。
B. OllyDbg是什么
OllyDbg是什么?
OllyDbg是一个32位汇编级的直观的分析调试器。
它在源代码不可得或者你用编译器遇到问题的时候特别有用。
运行需要。工作在Windows 95,98,Me,NT或者2000,可能XP上(没有测试)。
运行于任何奔腾级别的电脑上,但是如果想要流畅的调试,你可能需要一个至少300MHz的处理器。
Ollydbg是很耗内存的。如果你想要使用某些扩展特性比如追踪,我推荐128或更多内存。
支持的处理器。OllyDbg支持所有80x86,奔腾,MMX,3Dnow!,包括Athlon扩展,和SSE指令以及相应数据格式。
但不支持SSE2. 可配置性。大约有100个选项控制OllyDbg的行为和外观。
数据格式。
Dump窗口显示所有常规数据格式:
hex,ASCII,UNICODE,16和32位正/负/16进制整数,32/64/80位浮点数,地址,反汇编(MASM或IDEAL),或作为注释的
PE部首或者线程数据块。
帮助。
这个文件包含理解和使用OllyDbg所需的重要信息。
如果你有Windows API帮助文件(因为考虑到版权的原因没有附带),你可以把它附加到OllyDbg一起,以便在系统调
用的时候获得立即帮助。
启动。
你可以以命令行,文件菜单,拖放的方式指定可执行文件,重启最后调试过的程序或者把它附加到正在运行的程序上
。OllyDbg支持实时调试。安装是不必要的,你可以从软盘上启动OllyDbg。
线程。
OllyDbg可以调试多线程应用程序。你可以从一个线程切换到另一个,挂起,恢复和中止线程或者改变他们的优先级。
线程窗口显示每一个线程的错误信息(通过调用GetLastError来返回)
分析。
分析器是OllyDbg重要的一部分。它识别过程,简单和级联转换器,表,嵌入代码中的常数和字符串,复杂的结构,
API函数调用,函数参数号,输入段等等。分析可以使二进制代码可读性增强,使调试变得容易以及减少错误中断和崩
溃的可能性。它不是面向编译器的,可以于任何的PE程序工作得一样好。
对象扫描器。
OllyDbg扫描对象文件或库(都是按OMF和COFF格式的),释放代码段并在被调试的程序中定位它们。
IMPLIB扫描器。
一些DLLS只按照序数输出它们的Symbols,这对于人的眼睛来说是没什么意义的。如果你有相应的输入库,OllyDBg能
把序数翻译回symbolic名称。
全UNICODE支持。
几乎所有对ASCII串可用的操作对于UNICODE串都是可用的,反之亦然。
名称。
OllyDbg显示所有输入和输出的symbols.它按照Borland格式把名称从调试信息中提取出来。对象扫描器允许识别库函
数。你可以增添你自己的名字和注释。如果某些DLL中的函数是通过序数输出的,你可以附加一个输入库到OllyDbg中
,以恢复原始名称。Ollydbg也可识别许多常数的symbolic名称,像窗口消息,错误代码或位段,然后在call中把他们
解码为已知的函数。
已知函数。
OllyDbg能通过名称识别大约2100个被C和Windows API频繁使用的函数,并能解码他们的参数。你可以添加你自己的描
述,或者分配预先定义的译码。你可以在已知函数上设置logging breakpoint(记录断点)并把参数记录到日志中。
堆栈。使用简单的试探,OllyDbg尝试识别返回地址和堆栈帧。
但注意,他们有可能是上一个call所留下的残余(译者:破解的时候有时反而需要!)。如果程序在已知的函数上暂
停,堆栈窗口解码实参。 搜索。大量的可能性!搜索命令(确切的或近似的),命令号,常数,二进制或者文本串(
不必是连续的),搜索参考地址的所有命令,常数或者地址范围,搜索名称,在整个分配的内存中搜索2进制序列。如
果发现多个地址,你可以在他们中间来回的切换。
资源。
如果Windows API函数参考资源串,OllyDbg可以释放并显示它(译者:w32dsam)。对其它类型的只是限制在列出附属
资源,转储和2进制编辑。 断点。OllyDbg支持所有种类的常规断点:简单断点,条件断点,中断并把信心写到日志文
件(例如,函数的参数),写或访问的内存断点,硬件断点(只能ME/NT/2000)。在hit trace(命中追踪)的极端例
子下,INT3中断可以设置在模块的每个命令下。在有500MHz处理器的Windows NT环境中,OllyDbg可以每秒钟处理
5000个以上的中断。 监视和查看工具。Watch是一个每次程序暂停时候都被计算的表达式。你可以使用寄存器,常数
,地址表达式,布尔和任何复杂的代数操作符。你可以比较ASCII和UNICODE串。Inspector是包含2个索引并能以一个
2维表格的形式表示的watch,它可以解码数组和结构。
执行。
你可以一步步的执行程序,或者进入子过程,或者立刻执行它。你可以运行程序知道返回或者运行到指定的地方,或
者连续执行。当程序运行时,你仍然对其具有完全的控制,而且你还可以查看内存,设置断点,甚至在运行时实时调
整代码。而且,在任何时候你都能暂停和重启被调试的程序。 命中追踪。Hit trace显示到目前为止,那些命令或进
程被执行了,它允许你检测你代码的所有分支。Hit trace在每个指定的命令上下断点,并在命令被执行后(被命中
Hit)移去它。
运行追踪。
Run trace一步一步执行程序,并把执行结果摘要到一个大的缓冲中。这个摘要包括所有的寄存器(除了SSE),旗标
和线程错误,消息和已知函数的解码后的参数。你可以保存原始命令,这样可以使调试自改变程序变的容易。你可以
指定条件以停止追踪。或者按地址范围,表达式或者一个命令。你可以把run trace的结果保存到一个文件中并比较两
个独立的Run。Run trace允许回朔追综,并详细分析大量命令执行的经过。
摘要。
摘要计算某条指令在run trace缓冲区中被列出了多少次。用摘要,你可以知道哪部分代码消耗了最多的处理时间。
补丁。
内建的汇编器自动选择最短可能的代码。二进制编辑器同时以ASCII,UNICODE和16进制的形式同步显示数据。固有的拷
贝粘贴功能仍然是可用的。自动备份允许撤销改变。你可以直接修改后拷贝到可执行文件中去,OllyDbg甚至还能适当
调整你做的改变。
自解压文件。
当调试自解压文件时,你常常想要跳过自解压然后停在原始程序的入口点。OllDbg完成SFX(自解压)追踪,它尝试这
定位真实的入口。SFX追踪常常对于加了保护的自解压程序是无能为力的。发现入口(或者指定)后,OllyDbg可以更
快速和可靠的跳过解压程序。 插件。通过编写你自己的插件,你可以给OllyDbg添加功能。插件存取所有重要的数据
结构,添加菜单和快捷方式到存在的OllyDbg窗口并使用超过100个插件API函数,这些插件API有详细的文档说明。
UDD。
OllyDbg存储所有程序或模块相关信息到单个文件并在模块装载的时候读入。这些信息包括标签,注释,断点,监视,
分析数据,条件等等。 定制。你可以定制字体和颜色方案。
C. 怎么在ollydbg中找到我要调试的代码
使用Goto命令
使用Goto命令(快捷键Ctrl+G),打开Enter expression to follow对话框,在对话框中输入想要设置调试点的地址即可。
输入地址后,回车,光标将定位在输入的地址处。然后,执行Execute till cursor,可将调试流程执行到该地址处。是不是很方便呢~~
D. 谁会用ollydbg调试天正。正确答案给300分
OllyDbg教程2007-10-16 12:57(以下内容全部来自网络)
预备知识
大多数壳都有一个共同的特点。在壳准备开始解压时都要执行PUSHAD,当壳解压
完时都要调用POPAD。到底PUSHAD和POPAD是什么干什么用的呢?其实PUSHAD是用来将
所有普通寄存器顺序进栈的指令,POPAD是所有普通寄存器顺序出栈指令。POPAD的出
栈顺序和PUSHAD相反。壳为了保护寄存器,便在解压前将所有寄存器进栈保护起来,
当解压完成后又将寄存器出栈,恢复其原貌,并将IP设置为原程序的OEP。这样我们就
可以通过这个特点快速脱掉多种软件的壳。
32位程序级的调试器--ollyDbg,这个东东操作简便,提示信息量大,介绍一些简单的操作
快捷键:
F3,装入程序
F8,单步执行,不进入call
F9 (运行)
F7,单步执行,进入call
CTRL+F9,相当于trw2000的F12
ALT+F9,相关于trw2000的pmole
F2,设置断点(相当于trw2000的F9)
CTRL+N(当前模块中的名称)
F12(暂定)
CTRL+F12(重新运行)
CTRL+F11(跟踪进入)
CTRL+T(设置条件)
CTRL+F7(自动步入)
CTRL+F8(自动步过)
CTRL+F9(执行到返回)
另转的快捷键使用方法如下
OllyDbg 常用快捷热键
聆风听雨整理
===============================================================
打开一个新的可执行程序 (F3)
重新运行当前调试的程序 (Ctrl+F2)
当前调试的程序 (Alt+F2)
运行选定的程序进行调试 (F9)
暂时停止被调试程序的执行 (F12)
单步进入被调试程序的 Call 中 (F7)
步过被调试程序的 Call (F8)
跟入被调试程序的 Call 中 (Ctrl+F11)
跟踪时跳过被调试程序的 Call (Ctrl+F12)
执行直到返回 (Ctrl+F9)
显示记录窗口 (Alt+L)
显示模块窗口 (Alt+E)
显示内存窗口 (Alt+M)
显示 CPU 窗口 (Alt+C)
显示补丁窗口 (Ctrl+P)
显示呼叫堆栈 (Alt+K)
显示断点窗口 (Alt+B)
打开调试选项窗口 (Alt+O)
窗口:
左上:代码区
左下:内存数据
右上:寄存器
右下:stack区
以下命令适用于 OllyDbg 的快捷命令栏插件(显示于程序的状态栏上方)
========================================================
CALC
判断表达式
WATCH
添加监视表达式
AT / FOLLOW
Disassemble at address
在地址进行反汇编
orIG
Disassemble at EIP
反汇编于 EIP
DUMP
Dump at address
在地址转存
DA
Dump as disassembly
转存为反汇编代码
DB
Dump in hex byte format
转存在十六进制字节格式
DC
Dump in ASCII format
转存在 ASCII 格式
DD
Dump in stack format
转存在堆栈格式
DU
Dump in UNICODE format
转存在 UNICODE 格式
DW
Dump in hex word format
转存在十六进制字词格式
STK
Go to address in stack
前往堆栈中的地址
AS + 地址 + 字符串
Assemble at address
在地址进行汇编
L + 地址 + 字符串
Label at address
在地址进行标号
C + 地址 + 字符串
Comment at address
在地址进行注释
BP
Break with condition
使用条件中断
BPX
Break on all calls
中断在全部调用
BPD
Delete break on all calls
清除位于全部调用的断点
BC
Delete breakpoint
清除断点
MR
Memory breakpt on access
内存断点于访问时
MW
Memory breakpt on write
内存断点于写入时
MD
Remove memory breakpoint
清除内存断点
HR
HW break on access
硬件中断在访问
HW
HW break on write
硬件中断在写入
HE
HW break on execution
硬件中断在执行
HD
Remove HW breakpoint
清除硬件断点
STOP
Pause execution
暂停执行
PAUSE
PAUSE
RUN
Run program
运行程序
Run till address
运行到地址
GE
Run and pass exception
运行和通过例外
SI
Step into
步入
SO
Step over
步过
TI
Trace in till address
跟踪进入直到地址
TO
Trace over till address
跟踪步过直到地址
TC
Trace in till condition
跟踪进入直到条件
TOC
Trace over till condition
跟踪步过直到条件
TR
Till return
直到返回
TU
Till user code
直到用户代码
LOG
View Log window
查看记录窗口
MOD
View Moles window
查看模块窗口
MEM
View Memory window
查看内存窗口
CPU
View CPU window
查看 CPU 窗口
CS
View Call Stack
查看 Call 堆栈
BRK
View Breakpoints window
查看断点窗口
OPT
Open Options
打开选项
EXIT / QUIT
Quit OllyDbg
退出 OllyDbg
OPEN
Open executable file
打开可执行文件
CLOSE
Close executable
关闭程序
RST
Restart current program
恢复当前程序
HELP
Help on API function
API 函数的帮助
ASM
Assemble (if command needs it's own addres, \"ASM COMMAND;ADDRESS\")
汇编 (如果命令需要自身的地址 \"ASM COMMAND;ADDRESS\")
DASM
Disassemble immediate opcode
反汇编直接的机器码
FR
Find reference to selected command/address
查找参考到选定的命令/地址
AC
Analyse code
分析代码
SN
Search for Name(label) in current mole
在当前模块中搜索名称(标号)
SOB
Scan object files
扫描项目文件
Name: ollydbg 命令行帮助文件.rar Size: 6071 B
此文件的引用地址为:up/1141912360.rar
Name: OllyDbg-script v1.081命令中文解说.rar Size: 219473 B
此文件的引用地址为:up/1141912390.rar
Ollydbg 中断方法
Quote:
originally posted by dong at 2004-6-1 10:29 PM:
我问个问题
在od中怎么下断点呢??
现在有的程序一点注册就没反映了
这样的怎么下断点呢??
能介绍下什么情况下什么断点吗?
在转存中下硬件访问->Word"断点,下断之后,怎么取消!
9398944(老菜鸟) 11:09:59
alt+D 按H 然后删除
这个没有万能的方法,只能视具体情况而定,就我的经验而言:
第一步,反汇编找有用信息,有时候虽然点击注册按钮后,没有任何反映,但软件也许包含了可用的信息,比如“未注册”,“已注册”等等之类的,都可用做断点的。
第二步,如果反汇编也找不到有用信息,如果用OD可以下HMEMECPY断点,在每个调用的函数上下断,虽然这个法子太笨,但我试过,几乎有70%以上的机会可找到断点,找到断点后再慢慢跟吧!这只是个人的看法,关键只要找到断点,有什么办法都无所谓。
在命令行下bpx hmemcpy断点,然后回车,在每个调用的函数上下断。
有的程序甚至无法用API中断,可以在OD载入程序后上下翻动反汇编窗口查看字符串参考下断,在反汇编窗口里直接找到的,右键查找那里找不到
转发Ollydbg 中断方法浅探-各种断点常识知识
Ollydbg 中断方法浅探
――国庆节小礼
Ollydbg是一个新的32位的汇编层调试软件。适应于windows98、me、2000、xp和2003操作系统。由于他具有图形窗口界面,所以操作方便、直观,是cracker的好工具。
由于Ollydbg没有了TRW2000的万能断点,所以许多的新手感觉到用Ollydbg断点不好找。现在我来的说说Ollydbg下中断的几种方法。本人是个菜鸟,水平有限,可能不能完整的写出来,也可能存在错误。请大家指正。
我所表述的是Ollydbg v1.09d中文版,其他版本和英文版下自己参考。
第一 寻常断点
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 ****硬件断点
--------------------------------------------------------------------------------
OllyDbg
记住:工具栏的所有功能都能在菜单栏里找到,工具栏是菜单栏的快捷按钮(废话!)
各项详细功能我们在下面说!
再往下看有四个窗口他们是代码窗(左上),寄存器窗口(右上),内存窗口(左下)和堆栈窗口(右下)
2*菜单栏各项命令功能
*文件(F)----这些命令用说吗?
&line;____注意**该菜单的下部有你上次打开的纪录,该纪录保存有你上次未清除的断点**注意**
*查看(V)------这个菜单我只介绍一下我常用的,别的我不会!:-)
&line;____执行模块(快捷键ALT+E):查看该程序使用的动态连接库(我的理解)
&line;
&line;____断点(快捷键ALT+B):这个是查看你所有的断点,(有时自己设到哪里都忘了,可以看一下)起到一个辅助功能.
我就会这么多!:-(
*调试(D)-------这个菜单是关键,不明白你就别调试软件了!也只说常用的!
&line;_______运行(F9)加载程序后,运行!
&line;
&line;_______暂停(F12)
&line;
&line;_______单步进入(F7)遇见CALL就进!进入该子程!行话:"跟进去"
&line;
&line;______单步跳过(F8)遇见CALL不进去!不去管子程的内部!第一次粗跟的时候常用!
&line;
&line;______执行到返回(ALT+F9)就是执行到该子程的返回语句!
--------------------------------------------------------------------------------
Ctrl+F2---OllyDbg重置,重新开始调试。如果没有活动程序,OllyDbg装入历史列表中的第一个程序。OllyDbg重置会释放内存移除硬断点。
Alt+F2--关闭被调试的程序。如果程序还在活动状态,你会被询问是否执行该操作。
F3--显示“Open 32-bit .exe file”对话框,这里可以选择可执行文件和指定参数
Alt+F5--使OllyDbg显示在屏幕最前方。如果被调试程序中断时显示窗口遮住OllyDbg的一些区域,不继续运行又不能移动或最小化它。激活OllyDbg按Alt+F5可以解决。如果你再次按Alt+F5,OllyDbg会恢复为普通窗口。OllyDbg的当前状态显示在状态栏。
F7--step into,执行下一条简单命令。如果该命令是一个函数调用,进入调用函数内部。如果命令有REP前缀,执行该命令的一步操作。
Shift+F7--与F7相同,除了当被调试程序遇到某些异常时,首先尝试调用程序自己的异常处理过程。
Ctrl+F7--animate into,一步一步执行程序,也进入函数调用(就象你一直按着F7,不过更快)。当你执行一些单步或继续命令,程序到达有效断点,一些异常发生时,Animation终止。每步执行,OllyDbg重画所有窗口。要加速animation,关闭所有窗口而不要只改变现有窗口的大小。终止animation,也可按Esc。
F8-step over,执行下一条简单命令。如果该命令是一个函数调用,立刻执行完该函数(除非函数内部有断点或产生异常)如果命令有REP前缀,执行所有重复操作,并停于下一条命令。
Shift+F8--与F8相同,除了当被调试程序遇到某些异常时,首先尝试调用程序自己的异常处理过程。
Ctrl+F8--animate over,一步一步执行程序,但不进入函数调用(就象你一直按着F8,不过更快)。当你执行一些单步或继续命令,程序Animation到达有效断点或异常发生时,Animation终止。每步执行,OllyDbg重画所有窗口。要加速animation,关闭所有窗口而不要只改变现有窗口的大小。终止animation也可按Esc。
F9--继续执行程序。
Shift+F9--与F9相同。除了当被调试程序遇到某些异常时,首先尝试调用程序自己的异常处理过程。
Ctrl+F11--run trace into,一步一步执行程序,要进入函数调用,记录寄存器内容。Run trace 不重绘CPU窗口.
F12-悬挂所有线程以停止程序执行。最好用继续键和菜单命令(像F9)恢复执行线程,而不要用其它手动方法恢复。
Ctrl+F12--run trace over,一步一步执行程序,不进入函数调用,记录寄存器内容。Run trace不重绘CPU窗口。
ESC--如果animation或跟踪正在进行,将被终止。如果CPU窗口显示跟踪时的数据,此时转为显示实际数据。
Alt+B--打开或恢复Breakpoint窗口。这里可以编辑,删除和观察断点。
Alt+C--打开或恢复CPU窗口。
Alt+E--打开或恢复模块列表
Alt+E--打开或恢复Call stack窗口。
Alt+L--打开或恢复Log窗口。
Alt+M--打开或恢复Memory窗口。
Alt+O--打开Option对话框
Ctrl+P--打开Patch窗口。
Ctrl+T--打开Pause run trace对话框
Alt+X-中断OllyDbg。
多数窗口可以使用下列快捷键:
Alt+F3--关闭活动窗口。
Ctrl+F4--关闭活动窗口。
F5--最大化或恢复活动窗口。
F6--激活下一个窗口。
Shift+F6--激活前一个窗口。
F10--打开激活窗口或面板的右键菜单。
LeftArrow--左移一个字符。
Ctrl+LeftArrow--左移一行。
RightArrow--右移一个字符。
Ctrl+RightArrow--右移一行。
--------------------------------------------------------------------------------
软件破解常用汇编指令
cmp a,b // 比较a与b
mov a,b // 把b值送给a值,使a=b
ret // 返回主程序
nop // 无作用,英文(no operation)简写,意思“do nothing”(机器码90)
(ultraedit打开编辑exe文件看到90相当汇编语句的nop)
call // 调用子程序,子程序以ret结尾
je或jz // 相等则跳(机器码是74或84)
jne或jnz // 不相等则跳(机器码是75或85)
jmp // 无条件跳(机器码是EB)
jb // 若小于则跳
ja // 若大于则跳
jg // 若大于则跳
jge // 若大于等于则跳
jl // 若小于则跳
pop xxx // xxx出栈
push xxx // xxx压栈
爆破无敌口诀
一条(跳)就死,九筒(90)就胡
(对应上面的2--修改为nop)
一条(跳)就胡,一饼(EB)伺候
(对应上面的1--修改为jmp)
(74) 变(75)
(84) 变 (85)
大家不懂不要紧,一定要先牢记,以后慢慢的理解。
--------------------------------------------------------------------------------
我在刚开始用OD的过程中也遇到了许多麻烦,可刚来论坛时对各个版块也不了解.又看到论坛的首页提示新手从这里开始,所以也没敢去其他版块(主要知道自己很菜).在遇到OD的问题时很是头痛,因为在这里没有关于OD的太多入门使用说明.今天在晕转时偶得下面文章,甚是欣喜,因为早有大哥指点,只是没找到而已.现在与和我一样的菜鸟分享.
OllyDBG 入门系列(一)-认识OllyDBG
http://bbs1.pediy.com:8081/showthre...;threadid=21284(网通)
http://bbs.pediy.com/showthread.php...;threadid=21284(电信)
OllyDBG 入门系列(二)-字串参考
http://bbs1.pediy.com:8081/showthre...;threadid=21308(网通)
http://bbs.pediy.com/showthread.php...;threadid=21308(电信)
OllyDBG 入门系列(三)-函数参考
http://bbs1.pediy.com:8081/showthre...?threadid=21330(网通)
http://bbs.pediy.com/showthread.php?threadid=21330(电信)
OllyDBG 入门系列(四)-内存断点
http://bbs1.pediy.com:8081/showthre...?threadid=21378(网通)
http://bbs.pediy.com/showthread.php?threadid=21378(电信)
OllyDBG 入门系列(五)-消息断点及 RUN 跟踪
http://bbs1.pediy.com:8081/showthre...?threadid=21532(网通)
http://bbs.pediy.com/showthread.php?threadid=21532(电信)
OllyDBG 入门系列(七)-汇编功能
http://bbs1.pediy.com:8081/showthre...?threadid=23873(网通)
http://bbs.pediy.com/showthread.php?threadid=23873(电信)
大哥编的:OllyDBG 入门系列教程.CHM
http://bbs1.pediy.com:8081/showthre...mp;pagenumber=1(网通)
http://bbs.pediy.com/showthread.php...mp;pagenumber=1(电信)
E. 有关ollydbg ,高手请进
直接CTRL+F,输入JNZ 617A09就找到了,下面也一样
F. Ollydbg里的Follow in mp命令是什么意思怎么使用
Ollydbg是调试器吗?
Follow in mp好像是 遵循转储的意思
G. 关于ollydbg命令行
在ollydbg的左下角,前提是你要有命令行的插件。
H. 如何右键open witeh ollydbg
最简单的方法是启动OllyDbg,点击File|Open,然后选择你想调试的程序。程序需要命令行参数输入对话框下方的文本栏。
重新开始调试最后一个程序的快捷键是Ctrl+F2,并且OllyDbg使用相同的参数。
你也可以点选历史记录。把程序拖入OllyDbg也可以开始调试。
当然,当启动OllyDbg时,你在命令行中也能指定被调试的程序名和参数。比如:
你可以创建桌面快捷方式指向OllyDbg,选择属性,到快捷方式,把程序名加入目
标栏。每次你双击这个快捷图标,OllyDbg自动装载被调试程序。
你可以attach OllyDbg到某个正在运行的进程。点击File|Attach,从列表中选择
该进程。注意:当你关闭OllyDbg,这个进程也会终止。不要试图attach系统进程
,这很可能使系统完全SI机。