找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 1693|回复: 0

[OD/ollydbg]介绍

[复制链接]

该用户从未签到

3

主题

8

回帖

73

积分

注册会员

积分
73
灯火 发表于 2015-6-19 07:08:51 | 显示全部楼层 |阅读模式
    OLLYDBG是一个新的动态追踪工具,将IDA与SoftICE结合起来的思想,Ring 3级调试器,非常容易上手,己代替SoftICE成为当今最为流行的调试解密工具了。同时还支持插件扩展功能,是目前最强大的调试工具。
一、窗口构成
   官方原版32位od打开后界面如下图所示:

    其具有代码窗口、信息窗口、数据窗口、寄存器窗口和堆栈窗口。
二、常用快捷键
    F2 下断点,也就是指定断点的地址    F3 加载一个可执行程序,进行调试分析
    F4 程序执行到光标处
    F5 缩小、还原当前窗口
    F7 单步步入
    F8 单步步过
    F9 直接运行程序,遇到断点处,程序暂停
    Ctrl+F2 重新运行程序到起始处,一般用于重新调试程序
    Ctrl+F9 执行到函数返回处,用于跳出函数实现
    Alt+F9 执行到用户代码处,用于快速跳出系统函数
    Ctrl+G 输入十六进制地址,快速定位到该地址处
    - 返回到上一次操作地址
    CTRL+B  特征码搜索
三、调试技巧总结:
    1.F2下断点,Alt+b打开断点编辑器,可编辑所有下过的断点,空格键可快速切换断点状态。
    2.当位于某个CALL中,这时想返回到调用这个CALL的地方时,可以按“Ctrl+F9”快捷键执行返回功能。这样OD就会停在遇到的第一个返回命令(如RET、RETF或IRET)。
    3.如果跟进系统DLL提供的API函数中,此时想返回到应用程序领空里,可以按快捷键“Alt+F9”执行返回到用户代码命令。
    4.所谓领空,实际上就是指在某一时刻,CPU执行的指令所在的某段代码的所有者。
    5.如004013F7这类地址一般是可执行文件领空,7C8114AB这类大地址一般是系统DLL所在的地址空间。
    6.程序通常读取文本框内容的字符串用的是以下两个函数:
        GetDlgItemTextA(GetDlgItemTextW) GetWindowTextA(GetWindowTextW)
    7.一般我们要结合经验通过猜测的方式多尝试几遍设陷阱,找出相关的函数。
    8.按“Ctrl+G”键打开跟随表达式的窗口。
    9.也可以通过“Ctrl+N”键打开应用程序的导入表(输入表),然后查看应用程序总共导入了哪些函数来以此推断需要在哪里挖坑下陷阱!
    10.关于返回值,汇编代码的返回值约定是存放在eax这个寄存器里边的,如果32位的eax不够存放返回值,系统会将返回值放在内存某个位置并把该位置的地址放在eax返回。
四、写在后面的话
    欢迎广大逆向、破解爱好者入住虫虫联盟OD交流区,能够在这里和大家分享学习中遇到的欢喜和挫折,记录下在破解、逆向这条大道上的点点滴滴。虫虫联盟OD部欢迎您的光临!

评分

参与人数 1游戏币 +2 收起 理由
龙龙 + 2 强烈支持楼主!

查看全部评分

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|虫虫联盟 ( 备案号:蜀ICP备15018121号-1 )

GMT+8, 2024-3-29 22:10 , Processed in 0.588792 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表