OD使用教程 - 调试篇01
让编程改变世界
Change the world by program
调试逆向
在软件开发的过程中,程序员会使用一些调试工具,以便高效地找出软件中存在的错误。
而在逆向分析领域,分析者也会利用相关的调试工具来分析软件的行为并验证分析结果。
由于操作系统都会提供完善的调试接口,所以利用各类调试工具可以非常方便灵活地观察和控制目标软件。
在使用调试工具分析程序的过程中,程序会按调试者的意愿以指令为单位执行。
调试逆向分为动态分析技术和静态分析技术。
动态分析技术指的是使用调试工具加载程序并运行。
随着程序运行,调试者可以随时中断目标的指令流程,以便观察相关计算的结果和当前的设备情况。
静态分析技术是相对于动态分析而言的。
由于在实际分析中,很多场合不方便运行目标(例如病毒程序,设备不兼容,软件的单独某一模块)。
那么这个时候静态分析技术就该上场了!
OD使用教程
OD(OllyDbg)和IDA Pro这两款工具分别是调试逆向的倚天剑和屠龙刀。
虽然两者都兼容动态和静态的调试方式,但就动态调试而言,OD更为灵活和强大,而静态调试工具的王者理所应当是功能极为强大的IDA Pro。
两款工具可以在鱼C官网下载:www.fishc.com
另外两款工具都有十分丰富的插件扩展,这在我们的视频讲座中随着需要会逐步提供给大家的,嗯,不用担心,我们就学好眼前的,一步步来!
No Picture you say a J8
OD默认功能
1. 汇编代码对应的地址窗口
2. 汇编代码对应的十六进制机器码窗口
3. 反汇编窗口
4. 反汇编代码对应的注释信息窗口
5. 寄存器信息窗口
6. 当前执行到的反汇编代码的信息窗口
7~9. 数据所在的内存地址,十六进制,ASCII码
10~12.栈地址,存放的数据,对应说明信息
OD基本快捷键及功能
[caption id="attachment_651" align="aligncenter" width="780"]
OD基本快捷键及功能[/caption]
OD使用实践
古语有云,趁热要打铁,趁火要打劫,趁着我们还有点印象,赶紧实践一下吧亲╭(╯3╰)╮!
要求:通过OD将程序的标题“Hello world”改为“I love FishC.com”
[caption id="attachment_649" align="aligncenter" width="133"]
OD使用演示[/caption]
[kml_flashembed publishmethod="static" fversion="8.0.0" movie="http://player.youku.com/player.php/sid/XNTIwOTUxNzY0/v.swf" width="630" height="480" targetclass="flashmovie" wmode="transparent"]
[/kml_flashembed]
[buy]
获得所有教学视频、课件、源代码等资源打包 [/buy]
[Downlink href='http://kuai.xunlei.com/d/LDMJQLCCYMDP']视频下载[/Downlink]
[Downlink href='http://urlxf.qq.com/?IJjYN37']备胎下载[/Downlink]