为OllyDbg增添“内存硬件条件断点”功能(1)

OllyDbg条件断点高级用法:精准捕获异常 深入解析OllyDbg中条件断点的高级应用,利用ollydbg实现对特定寄存器或内存变化的监控,有效捕获程序异常,提升逆向分析效率。 阅读详情

感谢OllyDbg的作者,写出了这么好的调试器,感谢cao_cong老师做的汉化,感谢众多插件作

者,我常用的是OllyDbg v1.1【汉化第二版】(一下简称OD)。API的参数总是通过堆栈

交换,局部变量也是安排在堆栈中,比如说一个数值在堆栈0012DACC位置出现了,追踪这些值的

一般做法是,查找到该位置上下较近的一个“返回到XXXX”,参考这个“xxxx”位置,不难定位

到哪句代码把0012DACC处的值写入的。当堆栈该处上下位置位置很远处找不到“返回到XXXX”

时,不得已,下内存断点吧:在OD的数据区右击鼠标,用菜单"转到-> 0012DACC,将堆

栈映射到数据区,在“0012DACC”处下内存写入断点,跑起OD,运气好的话,n次断下后,目

标出现了(心情激动),运气不好,由于在堆栈区下断,断下太频繁,人累的不行,目标却在10万

8千里之外。。。搞不好被调试代码出个“蓝屏”罢工了,只好放弃。可以设想:在0012DACC处

下断时设置一个条件“该处值为XXXX时断下,不是该值则继续跑”,这是一个好主意。可惜的是,

美中不足,OD没有这项功能。很长一段时间,我一直想也许新版本能增加这项功能,可是2.0版没

有增加。用罗聪的OllyMachine写脚本,几句代码可以搞定,但是效率不能令人满意。在OD上直

接动手吧,一是没有参考资料,二是对OD的敬畏之情,迟迟不能下手。前几天登陆论坛,一下子找

到了好东西,武汉科锐学员: angelqkm的《OllyDBG分析报告系列》,这么好的东西我竟

然没看见。也是因为个人一些状况,我已经5年多没登陆了,感谢看雪论坛保留了我的ID。经过一

周的努力,“为OllyDbg添加内存条件硬件断点功能”有了初步成果,现在准备贴出,请高手指

点。

我为OD增加的功能如下:在数据区下内存硬件断点(访问、写入)时,弹出一个对话框,输入该内

存处的数值作为断下条件,当条件满足时断下,不满足时继续跑。原理如下:由于硬件断点的原理

是通过设置调试寄存器dr0---dr7后,代码运行时触发中断,

代码断下,OD就把中断的一些信息报告出来,等待用户下一步的操作,用户按下F9后,代码再次

跑起来。好了如果OD不是简单的报告信息,而是报告之前先行判断一下这个断下是否是用户需要

的,如果是用户需要的就报告给用户,等待用户处理,不是用户需要的就不再报告信息,继续跑代

码,这就是条件硬件断点最好的实现方法。由于我一时没搞清OD的硬件断点异常处理的细节,就采

取了变通的做法:OD继续以自己的方式报告中断信息,等待用户处理时判断一下这个中断是否是用

户期望的,如果不是,就“替代用户按一下F9”,代码再次跑起来。这个变通做法从效率上讲,是

OD做了一些无用功,既然不是用户期望的中断理当直接处理现场跑代码,不需再做报告信息的工作

了。但是以上变通做法的效率比用OllyMachine写脚本,提高了很多。[/SIZE][/SIZE]

 

ollydbg设置断点总结 下面的这些宝贵知识来自看雪论坛。 第一 寻常断点  Ollydbg中一般下中断的方法,就是在程序的地址处用鼠标选择这一行。然后按F2键,这时被选择的那一行的地址会变成别的颜色,就表示这个地址处下了中断。然后运行程序时只有到这个地址处就会被Ollydbg中断。  这个方法用的比较多,所以把他称作寻常断点。  如果有命令行插件,就可以在命令窗口中输入BPX xxxxxxxx 下断点。 阅读详情

相关推荐

Ollydbg之断点设置

目录预备知识1.断点2.INT3断点3.内存断点4.硬件断点实验目的实验环境实验内容和步骤1.熟练使用OD设置INT3断点2.了解使用OD设置内存断点3.了解使用OD设置硬件断点 预备知识 1.断点 断点,是调试器的核心功能之一,可以让程序中断在需要的地方,从而方便调试器对程序进行跟踪与分析。调试器对断点有记忆功能,可以在一次调试中设置断点,下一次可以让程序自动运行到上一次设置断点的位置中断下来。 调试器的断点功能是为了方便程序员调试程序,以检测程序的逻辑完整性和功能完整性。比如在几百行的程序源代码中,编译

ChuMeng1999的博客 2341

OllyDbg(OD)使用教程

游戏外挂与反外挂,游戏安全类,软件破解,软件暴力破解。。。必不可少的工具之一课程目录:01.OllyDbg的界面和配置02.常用快捷键03.爆破一个软件演示下OllyDbg的基本操作04.常用断点之INT3断点原理解析05.INT3断点的反调试与反反调试06.常用断点之硬件断点原理解析07.常用断点之内存断点原理解析08.常用断点之消息断点原理解析09.常用断点之条件断点原理解析10.内存访问一次性断点和条件记录断点11.Run trace 和 Hit trace12.调试符号13.常见插件介绍14.插件的编写

序列号破解避坑指南:为什么你的OllyDbg总是断不到关键点?

本文深入剖析了使用OllyDbg进行序列号逆向破解时断点失效的常见原因与解决方案。针对API调用淹没、字符串引用定位不准、多段验证断点丢失等核心难题,提供了调用栈分析、条件断点、内存断点与硬件断点组合等精准策略,帮助逆向分析者有效捕获关键验证逻辑,提升破解效率。

fern8的博客 789

OllyDbg断点详解

1.INT3断点 INT3断点也被称为CC断点 直接按F2即可设置,可以放置无数个断点,但是软件内的程序易被校验到从而失效 2.硬件断点 硬件断点和DRx调试器有关,所以只能放置四个断点,右键后选择Breakpoint,再选择Hadware,on execution 即可设置,不容易被检测到 3.内存断点 可以设置内存访问断点或内存写入断点,原理是对所设地址赋予不可访问/不可写属性,这样当访问/写入时就会产生异常,OllyDbg截获异常后,比较异常地址是不是断点地址,如果是就会中断 每次出现异常都需要进

m0_46171781的博客 5669

Ollydbg 调试实战:断点技术在多语言逆向分析中的应用

本文深入探讨了Ollydbg调试工具在多语言逆向分析中的断点技术应用。从基础断点设置到高级条件断点技巧,详细解析了C/C++、Delphi和VB等不同语言程序的调试方法,并通过实战案例展示了如何利用断点技术破解注册验证、网络验证和时间限制等常见保护机制。

weixin_42522320的博客 1053

ollydbg原理分析~硬件断点与int3

今天继续接着上次的分析,来继续分析OD原理,这次先分析OD最基本的功能,断点,单步和运行到指定位置。 类似的文章前辈们已经写了很多了,这里只是将前辈们的思路实践了一下,顺便加入一点自己的理解和认识! 一般载入OD之后,往往大家会先下断点,或者直接单步运行。 一般当我们着手分析一个程序的时候总是会下一个INT 3断点,其实这个就是F2的原理 随便载入一个程序,点一下F2,然后用ollydbg

Night May Say 5093

[转载文档]OllyDbg条件断点-仅转存留自己看和记

·        标题:OD实战逆向修改飞鸽传书 ·        作者:jivi ·        时间:2009-01-22 23:23  ·        链接:http://bbs.pediy.com/showthread.php?t=80865 【破文作者】 JIVI(乔伟) 【使用工具】 Peid 0.94,OllyDbg(OllyIce),exeScope,Spy4Win 

Neo_86的专栏 2935

【汇编】OllyDbg使用方法

1. 主窗口界面 反汇编面板: 被调试程序在反汇编后显示在该面板窗口中,显示的信息分为四列,从左到右依次为:地址、数据、反汇编代码和注释 主要关注的是反汇编代码列,该列将指令以汇编代码的形式显示,从而让用户在汇编层次上对程序进行调试 寄存器面板窗口: 该窗口将程序运行时用到的寄存器的值都列了出来,其中寄存器的值发生变化时颜色会变为红色 堆栈面板窗口: 该窗口显示的是程序执行时的堆栈信息...

AudreyQCb的博客 1715

OllyDbg 设置断点的操作方法

Ollydbg是一个新的32位的汇编层调试软件。适应于windows98、me、2000、xp和2003操作系统。由于他具有图形窗口界面,所以操作方便、直观,是cracker的好工具。 由于Ollydbg没有了TRW2000的万能断点,所以许多的新手感觉到用Ollydbg断点不好找。现在我来的说说Ollydbg下中断的几种方法。本人是个菜鸟,水平有限,可能不能完整的写出来,也可能存在错误。请大家指

Conquer Blog 1万+

【愚公系列】2023年06月 逆向分析之Ollydbg(断点设置)

软件断点:在目标程序中插入的断点,可通过修改程序指令来实现调试控制。硬件断点:在CPU或存储器中设置的断点,可以捕获读取/写入操作,或者是当CPU执行到特定地址时暂停程序执行。内存断点:可以监视指定内存地址的读取、写入或执行操作,从而帮助解决内存访问问题。要设置断点,首先需要在Ollydbg中找到要断点的位置。可以手动在代码窗口中找到,也可以使用搜索功能来找到有特定特征的位置。然后,右键单击要断点的位置,选择断点类型(软件断点、硬件断点或内存断点),并设置断点选项(例如,仅在特定条件下停止执行)

愚公智库 4万+

OLLYDBG汉化版:逆向工程与调试工具

OLLYDBG汉化版是为了解决非英语母语用户在使用这款著名调试工具时遇到的困难而生。它不仅保留了原版的所有功能,而且增加了对中文的支持,使得中文用户能够更直观、高效地进行软件调试和逆向工程。汉化版通过将原版软件的界面和帮助文档翻译成中文,降低了语言障碍。此外,它还对一些用户界面进行了调整,使其更加符合中文用户的操作习惯。在调试过程中,断点是协助开发者定位问题位置和程序行为的重要工具。OLLYDBG汉化版提供了多种断点类型,包括:硬件断点:当程序试图读写某个内存地址时触发。软件断点。

weixin_35886636的博客 1799

OllyDbg快捷键总结

OllyDbg快捷键 快捷键 功能 F7 单步步进,遇到call指令跟进 F8 单步步过,不跟进 F9 运行 ctrl + F9 知道出现ret指令时中断,运行到程序返回 alt + F9 进入内核中后,执行此命令,可以瞬间返回用户态 F2 打断点 F4 直接诶运行到光标所在处 ctrl + F2 重新加载可执行文件,重新运行 ctrl + N 查找...

passiones的博客 2455

Ollydbg1.1

Ollydbg1.1

OllyDBG使用

OllyDBG基本操作 1)        查找调用的API 函数。在 OllyDBG 的反汇编窗口中右击鼠标,在弹出菜单中选择 查找->当前模块中的名称 (标签),或者我们通过按 CTR+N 组合键也可以达到同样的效果,界面输入可搜索。右键菜单可下断点 2)        查找引用字符串。反汇编窗口中右击,出来一个菜单,我们在 查找->所有参考文本字串 上左键点击 3)

tianxiajianling的专栏 6591

ollydbg(官方英文版1.1和2.0)

来自官方www.ollydbg.de,包含ollydbg1.1版2.0版 附带两个chm教程

OllyDbg 1.1 增强版

由于上传大小的限制分成了两部分,第二个分卷就不要分了 以下是主要的修改: 添加了一些API的识别. 添加到290个结构体&枚举类型. 添加到2504个API函数结构. 包含了部分VB常见函数,部分VC函数.包含部分MSVCRT.DLL函数. 该版本看雪的论坛中下载(添加过API后版本) 主要修改: 1、自动配置UDD、PLUGIN为绝对路径 2、解决 OD 格式化 Long Double 错误 3、OD数据窗口复制BUG 4、引入OllyDbg Fix Module v0.9.0.0 插件,并修正在调试时不支持相对路径 5、集成了Loadpe,ImportREC,记事本、计算器等破解常用工具 6、编写了自定义管理工具,并集成到OD到配置菜单中。 ollydbg为英文版,未做修改。 注:OD在调试程序是,无法打开配置程序,本人水平有限,无法修正 发现Bug,请及时通告,e_mail:gjianbo@163.com QQ:30481007 以下是OllyDbg Fix Module的介绍 OllyDbg Fix Module v0.9.0.0 使用 LordPE 等工具在 Ollydbg 导入表中添加以下 dll 和函数即可使用增强功能,完成补丁: dll ==> OllyPath.dll 函数 ==> Set0llyPatch 注意:如果使用 PETools,可能会导致原程序无法运行。 ======================================================================== OllyDbg Fix Module v0.9.0.0 功能 更改 Ollydbg 各窗口的类名称和标题文本,增加隐蔽性; 添加自定义工具菜单; 将载入的插件数由 32 扩展到 50 或更多; 修正格式化字符串的漏洞 [OutPutDebugString]; 在 CPU 数据窗口选择数据时,可以显示地址和选择范围等.... 增强的 LoadDll.exe 文件 ======================================================================== OllyPath.ini 设置 FIX_CLASSANDTEXT=Y 是否更改窗口的类和标题栏文本 [Y=是,N=否] FIX_TOOLSMENU=Y 是否使用工具菜单 FIX_STACKASCIISHOW=Y 是否显示堆栈中的 ASCII FIX_OUTPUTDEBUGSTRING=Y 是否修正修正格式化字符串的漏洞 FIX_DUMPADDRESS=Y 是否显示数据窗口中当前所选的数据地址和范围等(查看状态栏) FIX_PLUGCOUNT=N 是否扩展插件数 CLASS=!OllYDBG 主窗口类名称 WINTEXT=!OllYDBG 主窗口标题栏文本 ACPUASM=!CPUASM ACPUDUMP=!CPUDUMP ACPUSTACK=!CPUSTACK ACPUREG=!CPUREG ACPUINFO=!CPUINFO ACPU=!CPU PLUGCOUNT=50 最多允许载入的插件数目 ;以下是自定义菜单中的设置 TOOL1=记事本|notepad.exe 工具序数=程序名称|程序完整路径和文件名 + 扩展名

逆向工程学习——OllyDbg快捷键及逆向用法

本文详细介绍了OllyDbg调试工具的快捷键分类及应用技巧,主要包括四大核心功能: 调试控制:F9运行、F7单步入、F8单步过等核心操作 断点操作:F2设置断点、条件断点等精准调试技巧 导航定位:地址跳转、指令搜索等快速浏览方法 窗口操作:CPU、内存、堆栈等多窗口切换技巧 文中特别强调了条件断点语法、函数跟踪组合键等实战技巧,帮助逆向工程师快速提升调试效率,适用于分析加密函数、验证流程等常见逆向场景。

2301_80637449的博客 2305

DVDMenuStudio1.1供OD(Ollydbg)学习用(原版)

供OD(Ollydbg)学习用的DVDMenuStudio1.1安装程序,也是小甲鱼OD使用教程第十五讲中用到的程序。(本资源是本人费劲千辛万苦谷歌到的)

上一篇: 【原创】LDR链调试手记
下一篇: 【原创】RING3过主防读物理内存、读写IO端口
OSReact
博客等级 码龄14年 34粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值