x64dbg安装与配置
x64dbg官网地址:https://x64dbg.com/#start
x64dbg界面介绍
1.反汇编窗口
这个位置显示的是需要分析的程序的反汇编代码。在第一个区域的最左侧例如“7712EAA3”这一列就是内存地址区域,接着“E8 07”就是汇编指令的opcode,“jmp xxxxxxxxx”这个区域就是汇编代码区,最后有一个空白的地方,我们可以在这个位置输入一些注释。
2.寄存器窗口
这里显示的是当前所调试程序的寄存器信息。
3.数据窗口
这里一般查看的是内存地址的内容。最左边是地址,接着是对应地址的十六进制数据,最右侧是十六进制对应的ASCII码。
4.堆栈窗口
显示一些堆栈的信息。
调试方法
F2:设置断点。
F4:运行到光标处。
F7:单步步入。
F8:单步步过。
F9:运行程序。
Ctrl+F9: 执行到函数返回处,用于跳出函数实现。
Alt+F9:执行到用户代码,用于快速跳出系统函数。
Ctrl+G:输入十六进制地址,快速定位到该地址处。
字符串搜索
内存读取
[addr] 读取DWORD / QWORD
n:[addr] 从addr开始读取n个字节
seg:[addr] 段寄存器加偏移读取DWORD / QWORD seg可以gs,es,cs,fs,ds,ss
byte:[addr] 读取BYTE
word:[addr] 读取word
dword:[addr] 读取dword
qword:[addr] 读取qword
字节/字/双字/四字/指针(ptr)
流程图
在反汇编窗口按下 G 键切换到流程图,再按 G 回来。建议配合图形缩放模式设置,可以用 Ctrl+ 滚轮进行缩放。
右键点击脱离后,可以与反汇编窗口同时使用,而且热键 G 在流程中也是在反汇编窗口中转到,所以可以关联着来看。
Ctrl+G
可以直接输入 API,会自动补全。默认是输入 VA,如果要输入 RVA 需要这样: :$RVA(注意这个冒号要带上)
输入 :$0 跳到基址处
按热键 H 进入高亮模式,高亮显示所有相同的内容:
此时单击需要高亮显示的内容即可高亮显示,再次按下 H,点击空白处可以取消。