专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »汇编语言 » ollydbg:OllyDBG 入门系列(一)(转) »正文

ollydbg:OllyDBG 入门系列(一)(转)

来源: 发布时间:星期三, 2008年12月10日 浏览:2次 评论:0
标 题: 【原创】OllyDBG 入门系列()-认识OllyDBG
作 者: CCDebuger
时 间: 2006-02-13,17:23
链 接: http://bbs.pediy.com/showthread.php?t=21284

OllyDBG 入门系列()-认识OllyDBG

作者:CCDebuger

、OllyDBG 安装与配置

OllyDBG 1.10 版发布版本是个 ZIP 压缩包只要解压到个目录下运行 OllyDBG.exe 就可以了汉化版发布版本是个 RAR 压缩包同样只需解压到个目录下运行 OllyDBG.exe 即可:
http://bbs.pediy.com/upload/2006/4/i...ow.g_950.g
OllyDBG 中各个窗口功能如上图简单解释下各个窗口功能更详细内容可以参考 TT 小组翻译中文帮助:

反汇编窗口:显示被调试反汇编代码标题栏上地址、HEX 数据、反汇编、注释可以通过在窗口中右击出现菜单 界面选项->隐藏标题 或 显示标题 来进行切换是否显示用鼠标左键点击注释标签可以切换注释显示方式

寄存器窗口:显示当前所选线程 CPU 寄存器内容同样点击标签 寄存器 (FPU) 可以切换显示寄存器方式

信息窗口:显示反汇编窗口中选中个命令参数及些跳转目标地址、字串等

数据窗口:显示内存或文件内容右键菜单可用于切换显示方式

堆栈窗口:显示当前线程堆栈

要调整上面各个窗口大小只需左键按住边框拖动等调整好了重新启动下 OllyDBG 就可以生效了

启动后我们要把插件及 UDD 目录配置为绝对路径点击菜单上 选项->界面将会出来个界面选项对话框我们点击其中目录标签:
http://bbs.pediy.com/upload/2006/4/image/od_dir.g
我这里是把 OllyDBG 解压在 F:\OllyDBG 目录下所以相应 UDD 目录及插件目录按图上配置还有个常用到标签就是上图后面那个字体在这里你可以更改 OllyDBG 中显示字体上图中其它选项可以保留为默认若有需要也可以自己修改修改完以后点击确定弹出个对话框说我们更改了插件路径要重新启动 OllyDBG在这个对话框上点确定重新启动下 OllyDBG我们再到界面选项中看会发现我们原先设置好路径都已保存了有人可能知道插件作用但对那个 UDD 目录不清楚我这简单解释下:这个 UDD 目录作用是保存你调试工作比如你调试个软件设置了断点添加了注释次没做完这时 OllyDBG 就会把你所做工作保存到这个 UDD 目录以便你下次调试时可以继续以前工作如果不设置这个 UDD 目录OllyDBG 默认是在其安装目录下保存这些后缀名为 udd 文件时间长了就会显很乱所以还是建议专门设置个目录来保存这些文件

另外个重要选项就是调试选项可通过菜单 选项->调试设置 来配置:
http://bbs.pediy.com/upload/2006/4/i...d_debug_op.g
新手般不需更改这里选项默认已配置好可以直接使用建议在对 OllyDBG 已比较熟情况下再来进行配置上面那个异常标签中选项经常会在脱壳中用到建议在有定调试基础后学脱壳时再配置这里

除了直接启动 OllyDBG 来调试外我们还可以把 OllyDBG 添加到资源管理器右键菜单这样我们就可以直接在 .exe 及 .dll 文件上点右键选择“用Ollydbg打开”菜单来进行调试要把 OllyDBG 添加到资源管理器右键菜单只需点菜单 选项->添加到浏览器将会出现个对话框先点击“添加 Ollydbg 到系统资源管理器菜单”再点击“完成”按钮即可要从右键菜单中删除也很简单还是这个对话框点击“从系统资源管理器菜单删除 Ollydbg”再点击“完成”就行了

OllyDBG 支持插件功能插件安装也很简单只要把下载插件(般是个 DLL 文件)复制到 OllyDBG 安装目录下 PLUGIN 目录中就可以了OllyDBG 启动时会自动识别要注意是 OllyDBG 1.10 对插件个数有限制最多不能超过 32 个否则会出错建议插件不要添加太多

到这里基本配置就完成了OllyDBG 把所有配置都放在安装目录下 ollydbg.ini 文件中

二、基本调试方法

OllyDBG 有三种方式来载入进行调试种是点击菜单 文件->打开 (快捷键是 F3)来打开个可执行文件进行调试种是点击菜单 文件->附加 来附加到个已运行进程上进行调试注意这里要附加必须已运行第三种就是用右键菜单来载入(不知这种算不算)般情况下我们选第种方式比如我们选择个 test.exe 来调试通过菜单 文件->打开 来载入这个OllyDBG 中显示内容将会是这样:
http://bbs.pediy.com/upload/2006/4/i...st.g_029.g
调试中我们经常要用到快捷键有这些:

F2:设置断点只要在光标定位位置(上图中灰色条)按F2键即可再按次F2键则会删除断点(相当于 SoftICE 中 F9)

F8:单步步过每按次这个键执行条反汇编窗口中条指令遇到 CALL 等子不进入其代码(相当于 SoftICE 中 F10)

F7:单步步入功能同单步步过(F8)类似区别是遇到 CALL 等子时会进入其中进入后首先会停留在子条指令上(相当于 SoftICE 中 F8)

F4:运行到选定位置作用就是直接运行到光标所在位置处暂停(相当于 SoftICE 中 F7)

F9:运行按下这个键如果没有设置相应断点被调试将直接开始运行(相当于 SoftICE 中 F5)

CTR+F9:执行到返回此命令在执行到个 ret (返回指令)指令时暂停常用于从系统领空返回到我们调试领空(相当于 SoftICE 中 F12)

ALT+F9:执行到用户代码可用于从系统领空快速返回到我们调试领空(相当于 SoftICE 中 F11)

上面提到几个快

如果本文没有解决您的问题,请进老妖怪开发者社区提问

标签:ollydbg

相关文章

读者评论

  • 共0条 分0页

发表评论

  • 昵称:
  • 内容: