首页
社区
课程
招聘
[原创]x64dbg入门系列(三)- 函数参考
发表于: 2020-6-9 10:48 8918

[原创]x64dbg入门系列(三)- 函数参考

2020-6-9 10:48
8918

1.运行程序观察程序特征(按钮文字、标题、弹窗信息等)
2.使用查壳工具进行查壳。(如果加壳就先脱壳脱壳后进入第三步,如果没加壳直接进入第三步)
3.使用IDA进行静态分析(找到程序关键点)
4.使用x64dbg进行动态调试(验证猜想)。

运行程序观察程序特征,我们可以发现程序存在两个文本框(这个时候我们应该考虑到GetDlgItemTextA这个API),接着我们点击按钮后出现一个弹窗(应该想到MessageBoxA)。

图片描述

将程序拖入到x64dbg中,进入程序主模块后,
1.进入符号标签页
2.选择主进程模块
3.x64dbg会在右侧显示出函数API。
使用快捷键“Ctrl+N”也可以到达下图界面。
图片描述

在上图中我们可以看到程序中确实存在”GetDlgItemTextA“和”MessageBoxA“这两个API,这里我们以MessageBoxA为例,双击MessageBoxA后即可到达下图界面,之后我们在该处下个断点,然后运行程序。
图片描述

接着在我们按下Try按钮以后,我们会在上图的断点处断下,由于这个是系统API,所以我们不看这个函数”Ctrl+F9“直接运行到返回处,然后单步一次,即可到达下图界面。
在这里我们可以看到成功函数。
图片描述

上图”0x004013A6“是成功函数开始的地方,所以我们继续往上看,及即可发现关键跳转。所以我们着重分析下图的汇编代码。
图片描述

最后验证flag是否正确。
图片描述

WX公众号:一谷米粒
知乎:https://www.zhihu.com/people/yi-gu-mi-li-47


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

上传的附件:
收藏
免费 5
支持
分享
最新回复 (8)
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
此演示程序需要x32dbg环境,请博主写文章时候注意基本的正确性,一点点建议,没有恶意。
2020-6-9 16:53
0
雪    币: 4313
活跃值: (1534)
能力值: ( LV5,RANK:75 )
在线值:
发帖
回帖
粉丝
3
mb_zdoqjxkq 此演示程序需要x32dbg环境,请博主写文章时候注意基本的正确性,一点点建议,没有恶意。
是在文章开头加上环境信息嘛?
最后于 2020-6-9 18:17 被一谷米粒编辑 ,原因:
2020-6-9 17:44
0
雪    币: 8764
活跃值: (5240)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
期待楼主的更多文章
2020-6-9 18:45
0
雪    币: 7121
活跃值: (125793)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
非常感谢楼主分享
2020-6-9 23:52
0
雪    币: 88
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
期待下一期
2020-6-10 03:52
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
一谷米粒 mb_zdoqjxkq 此演示程序需要x32dbg环境,请博主写文章时候注意基本的正确性,一点点建议,没有恶意。是在文章开头加上环境信息嘛?
靶子程序需要在x32dbg中调试。 
2020-6-10 09:55
0
雪    币: 1144
活跃值: (4222)
能力值: ( LV5,RANK:69 )
在线值:
发帖
回帖
粉丝
8
明明是x32dbg啊,怎么是x64dbg
2020-6-12 12:41
0
雪    币: 9934
活跃值: (2554)
能力值: ( LV6,RANK:87 )
在线值:
发帖
回帖
粉丝
9
楼主不用管这么多。你写x32dbg,怕是以后别人搜x64dbg教程都搜不到你这贴
2020-6-13 11:49
2
游客
登录 | 注册 方可回帖
返回
//