首页
社区
课程
招聘
x64dbg入门系列(二)-搜索字符串
发表于: 2020-6-8 11:15 14596

x64dbg入门系列(二)-搜索字符串

2020-6-8 11:15
14596

在开始学习搜索字符串功能之前,先来了解一下逆向的步骤。

1.运行程序观察程序特征(按钮文字、标题、弹窗信息等)
2.使用查壳工具进行查壳。(如果加壳就先脱壳脱壳后进入第三步,如果没加壳直接进入第三步)
3.使用IDA进行静态分析(找到程序关键点)
4.使用x64dbg进行动态调试。
下图是100个Cracker me中的题目,但是分析步骤与上面还是有所差别的,主要是因为本着学习x64dbg搜索字符串的角度来做一下这个题目。

程序有三个按钮:1.序列号/名字 2.退出 3.序列号。我们先从简单做起,点击第三个按钮。
图片描述

到达下图的界面后我们随便输入“123456789”这个时候有个弹框显示“Try Again!!”。所以这里的Try Again!!”就是我们需要搜索的关键字符串。
图片描述

首先我们F9运行到主模块,之后我们右键——>搜索——>所有模块——>字符串
图片描述

之后在下图的界面会显示很多字符串,这个时候我们使用“Ctrl+F”搜索字符串,x64dbg会为我们自动筛选出所有类似的字符串。但是我们可以看到这里有三个字符串供我们选择,如果我们不知道是哪个怎么办?
图片描述

在我们不知道具体是哪个字符串的时候我们只需要给满足条件的字符串下断点就可以了,右键——>在所有命令上设置断点
图片描述

之后在我们没输入注册码的时候程序断下来,我们不用理会直接F9继续运行就可以了,接着在程序的文本框中输入“123456789”,点击“check it baby”按钮。程序会在下图的位置断下来。这个时候通过分析汇编代码,我们可以知道在“0x0042F4D0”这个函数为关键函数。
图片描述

重新运行程序以后我们可以看到一个是我们输入的字符串,另一个是未知字符串而这个未知的字符串很有可能是我们的“注册码”。

图片描述

我们重新输入“Hello Dude!”这个时候程序判断成功,执行“God Job dude!!”

图片描述
图片描述

之后我们重新运行程序点击“注册码/名字”按钮,之后我们在名字部分输入“hello”,注册码部分输入“123456789”。之后运行程序,会在下图的位置断下。
通过分析我们可以知道“0x0042FAFE”是比较函数。
图片描述

最后我们尝试输入“CW-8528-CRACKED”这个时候程序执行成功。
图片描述


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2020-6-22 09:34 被一谷米粒编辑 ,原因:
上传的附件:
收藏
免费 4
支持
分享
最新回复 (6)
雪    币: 97697
活跃值: (200829)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
2
support!
2020-6-8 22:43
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
我们不用理会直接F9继续运行就可以了,接着在程序的文本框中输入“123456789”,点击“check it baby”按钮。在这一步程序会卡死。
环境: OS:win10,使用的x32dbg调试。
2020-6-9 16:25
0
雪    币: 20
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
4
跟帖学习中!
可以提供crankme的下载链接吗?
2020-6-21 21:06
0
雪    币: 259
活跃值: (283)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
666
2020-6-22 17:42
0
雪    币: 6021
活跃值: (3128)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
学习中...
2020-6-22 21:40
0
雪    币: 175
活跃值: (2531)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
学习中,对x64dbg还不很熟悉。
2020-7-24 10:40
0
游客
登录 | 注册 方可回帖
返回
//