首页
论坛
课程
招聘
[原创]在x64dbg中设置条件断点
2019-5-17 10:04 14882

[原创]在x64dbg中设置条件断点

2019-5-17 10:04
14882

x64dbg是逆向分析win64程序的利器,它的地位类似于OllyDbg。最近遇上了怎样在x64dbg设置条件断点的问题,网上搜索了一遍仅看到x64dbg的使用手册,没有图文并茂的说明文档,琢磨了一番搞明白了,现写出来分享给大家。

1、  条件断点

在想要设置断点的指令处按F2设置断点,然后在断点窗口选中该断点,右键选择“Edit”


在Break Condition写入中断条件,如下图中写的:(esi == 73) && (eax==64)

注:此处的73,64都为16进制数。


设置后运行将在满足条件的指令处停下来。


2、  条件记录断点

条件记录断点就是没有中断条件,仅将关注的数据记录下来。

如下图所示,设置break condition为0,Log text设置需要记录的数据,同时将silent项选上。


设置完运行后,在Log窗口就可以看到记录的数据。



第五届安全开发者峰会(SDC 2021)议题征集正式开启!

收藏
点赞2
打赏
分享
打赏 + 1.00
打赏次数 1 金额 + 1.00
 
赞赏  kanxue   +1.00 2019/05/17 感谢分享~
最新回复 (15)
雪    币: 725
活跃值: 活跃值 (5482)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
kanxue 活跃值 8 2019-5-17 15:52
2
0
感谢分享~
雪    币: 358
活跃值: 活跃值 (193)
能力值: ( LV12,RANK:223 )
在线值:
发帖
回帖
粉丝
scpczc 活跃值 1 2019-5-17 16:21
3
0
期待RunTrace功能及使用文档。
雪    币: 1014
活跃值: 活跃值 (135)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
cmputer 活跃值 2019-5-17 16:57
4
0
不错,不错
雪    币: 1646
活跃值: 活跃值 (1039)
能力值: ( LV9,RANK:220 )
在线值:
发帖
回帖
粉丝
黑手鱼 活跃值 3 2019-5-17 17:28
5
0
期待后续更新
雪    币: 1
活跃值: 活跃值 (711)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
咖啡_741298 活跃值 2019-5-17 17:38
6
0
没有OD那样方便,希望大神出手修改一下
雪    币: 7171
活跃值: 活跃值 (6124)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
pureGavin 活跃值 2 2019-5-17 19:27
7
0
mark
雪    币: 5420
活跃值: 活跃值 (665)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jgs 活跃值 2019-5-17 19:44
8
0
学习了,收藏,谢谢楼主分享
雪    币: 19
活跃值: 活跃值 (67)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
haojunzhao 活跃值 2019-5-19 10:34
9
0
好文,受教了!
雪    币: 207
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
小小白wp 活跃值 2019-7-25 14:20
10
0
x64dbg下api断点该怎么弄,
雪    币: 11411
活跃值: 活跃值 (2599)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
ninebell 活跃值 2020-2-27 12:09
11
0
小小白wp x64dbg下api断点该怎么弄,
Ctrl+N,F2
雪    币: 3212
活跃值: 活跃值 (817)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
sunsjw 活跃值 1 2020-2-27 14:00
12
0
楼主摸索下,条件断点如何进行字符串比较
比如:下面的断点,只有在第一个参数是"xxx.txt"的时候才会断下来。
bpcnd CreateFileW,{s:arg.get(0)}=="xxx.txt"

但是它并不工作。

最后于 2020-2-27 14:03 被sunsjw编辑 ,原因:
雪    币: 71
活跃值: 活跃值 (350)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
killpy 活跃值 2 2020-2-27 14:47
13
0
更复杂的条件表达式呢 比如要判断某个内存里的数据是否等于某个固定值
雪    币: 159
活跃值: 活跃值 (68)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
真实的我 活跃值 2020-3-7 10:27
14
0
另外的一种方法,是你以后都会使用的方法,现在给出:
输入可能的注册码后,别点确定按钮。
在x64dbg的工作步骤上填写500步,就可以了,然后点确定。x64dbg就会在你点击确定按钮后,进行500步,停在那里。然后,你就该明白怎样调试了。
这个方法,很容易地找到注册码的运算,对比等,反正你已经入道了。
雪    币: 8680
活跃值: 活跃值 (1301)
能力值: ( LV6,RANK:87 )
在线值:
发帖
回帖
粉丝
Lixinist 活跃值 1 2020-3-7 10:47
15
0
killpy 更复杂的条件表达式呢 比如要判断某个内存里的数据是否等于某个固定值
4:[Address]==XXXX
4是读4个字节的意思,要读1个字节就写1
雪    币: 11411
活跃值: 活跃值 (2599)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
ninebell 活跃值 2020-6-27 12:24
16
0
研究透了x32dbg/x64dbg的帮助
真的好可怕。太强力了。
游客
登录 | 注册 方可回帖
返回