浅谈逆向——动态分析OD简介(OD的使用1)

浅谈逆向-动态分析之OD

界面介绍

在这里插入图片描述
A区域:view菜单功能项的快捷按钮

B+C+D+E+F: CPU窗口 (OD打开一个可执行文件后,会立刻加载,自动分析后并列出汇编代码,默认打开CPU窗口)

B区域:反汇编面板窗口
(分为4列从左至右依次是Address,Hex dump,Disassembly,Comment)

  • Address(地址):显示被双击行的相对地址,再次双击返回便准地址模式;
  • Hex dump(十六进制机器码):设置或取消无条件断点,对应的快捷键是F2;
  • Disassembly(反汇编代码):调用汇编器,可直接修改汇编代码,对应快捷键是空格。
  • Comment(注释):允许增加或编辑注释,对应的快捷键是";";
  • 从键盘上选取多行,可按Shift和上下光标键(PgUp/PgDn),可以使用右键快捷菜单,可以按Ctrl键并按上下光标,可逐行滚动汇编窗口。(数据与代码混合时异常有用)

C区域:信息面板窗口

  • 在进行动态追踪时,信息面板窗口将显示与指令相关的各寄存器的值,API函数调用提示和跳转提示等信息。

D区域:数据面板窗口

  • 以十六进制和字符方式显示文件在内存中的数据,要显示制定内存地址的数据,可单击右键快捷菜单中的“Go to expression”命令或者按Ctrl+G快捷键,打开地址窗口输入地址。

E区域:寄存器面板窗口

  • 显示CPU各寄存器的值,支持浮点,MMX,3DNow!寄存器。可以右键或窗口标题切换显示寄存器的方式。

F区域:栈面板窗口

  • 显示栈的内容,即ESP指向地址的内容。将数据放入栈的称为入栈(push),从栈中取出数据的操作称为出栈(pop)。API函数和子程序都利用它传递参数和变量。

OD的配置

OD的设置项在Options(选项)菜单里,包括(Appearance)界面选项和(Debugging options)调试选项

1.界面设置
在这里插入图片描述

  • Options->Appearance->Directories(目录)设置Udd和插件文件的路径(为了避免不必要的麻烦,请使用绝对路径)。
  • Udd:OD的工程文件,用于保存当前调试的一些状态(断点,注释),方便下次调试时继续使用。
  • 插件:用于扩展功能,路径设置正确后,将插件复制到plugin目录里。相应的选项就会出现在OD的主菜单plugin里显示出来。

2.调试设置

  • 一般保持默认即可。其中Exceptions(异常)选项用于设置让OD忽略或不忽略某些异常。

3.加载符号文件
在这里插入图片描述

  • 使用符号库(Lib)可以让OD以函数名的形式显示DLL中的函数。MFC42.DLL是用序号形式输出函数的,OD中只能以序号形式显示,如果让其加载MFC42.dll调试符号,将以函数名的形式显示相关的输出函数。Debug->Select import libraries,打开导入库窗口进行加载。

4.关联到右键快捷菜单

  • 可以将OD关联到Windows资源管理器的右键菜单里面。关联后调试时只需要在EXE或者DLL文件上单击右键,就会出现用OD打开的菜单项。实现关联步骤:Options->Add to explorer->Add OD to menu in Windows Explorer。在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_38684512/article/details/86540627