东莞公司建站模板,安徽省建设厅网站首页,网络营销策划方案基本思路,怎么给网站做短信这篇文章主要来说一下x96dbg(x64/x86)的基本使用#xff0c;这里还是使用上篇文章中的简单程序用来作为本篇文章的实例#xff0c;因为上篇文章再生成程序时选用的解决方案平台为x86所以生成的程序则需要我们使用x32dbg来进行分析。 这边与IDA一样#xff0c;我们可以将程序…这篇文章主要来说一下x96dbg(x64/x86)的基本使用这里还是使用上篇文章中的简单程序用来作为本篇文章的实例因为上篇文章再生成程序时选用的解决方案平台为x86所以生成的程序则需要我们使用x32dbg来进行分析。 这边与IDA一样我们可以将程序拖到图标上。 此时x32dbg就会自动针对该程序进行加载接下去我们就可以进行调试了。在加载完成后可以看到调试器下方显示已暂停已到达系统断点。 这个系统断点通常指的是调试器在程序启动时自动设置的第一个断点也称为Entry Point断点。系统断点发生在程序的入口点Entry Point之前通常是在加载器loader将程序从磁盘加载到内存之后操作系统会在这里插入一个INT 3指令目的是让调试器能够在程序执行之前有机会设置它自己的断点和初始化调试环境。这个断点可以理解为程序正式开始执行前的一个暂停点允许调试器做一些初始设置。在调试器中看到系统断点时程序还没有真正开始执行它只是在操作系统初始化和程序准备运行的阶段。你可以选择继续执行程序跳过系统断点进入程序的实际入口点从而开始分析程序的实际代码。
功能组件
1.反汇编窗口
x64dbg的反汇编窗口是一个非常重要的工具它用于查看和分析程序的汇编代码且显示了当前调试中的程序的机器代码和对应的汇编指令这些指令是程序运行时CPU执行的低级操作。 在第一个区域的最左侧这一列就是内存地址区域接着中间部分就是汇编指令的opcode右侧这一列就是汇编代码区最后有一个空白的地方我们可以在这个位置输入一些注释x96dbg添加注释的方式与IDA一致选择要添加注释的位置接着敲;对注释文本进行编辑选择OK即可。 2.寄存器窗口
x64dbg 的寄存器窗口是一个用于查看和修改 CPU 寄存器内容的窗口。在调试过程中寄存器窗口对于理解程序的执行状态和控制程序的执行流程至关重要。 寄存器窗口显示当前 CPU 寄存器的内容包括通用寄存器如 RAX, RBX, RCX, RDX 等指令指针寄存器RIP栈指针寄存器RSP以及基址指针寄存器RBP等。在 x64dbg 中调试 64 位程序时会显示 64 位寄存器如果调试 32 位程序则显示 32 位寄存器。
3.内存窗口
x64dbg 的内存窗口用于查看和操作目标程序的内存内容。 内存窗口显示的是程序当前内存的十六进制内容和其对应的 ASCII 文本表示。每一行通常显示一个内存地址的起始位置以及接下来的若干字节数据。
4.堆栈窗口
堆栈窗口用于查看和分析程序在运行过程中使用的堆栈数据。堆栈是程序执行过程中临时存储数据如函数参数、返回地址、局部变量等的区域。 基本调试方法
①F2设置断点 ②F4运行到光标处 ③F7单步步入遇到call指令进入call函数的实现处继续执行汇编指令) 按下F7后则跳入ntdll.773C034函数的实现处继续执行汇编指令 ④F8单步步过遇到call指令执行call函数之后接着执行call指令的下一条指令 按下F8后则接着执行call指令的下一条指令即不进入函数中进行命令执行。
⑤F9运行程序如果没有碰到断点程序会一直执行到结束)
⑥CtrlF9: 执行到函数返回处用于跳出函数实现 ⑦AltF9:执行到用户代码用于快速跳出系统函数
⑧CtrlG:输入十六进制地址快速定位到该地址处 搜索字符串
右击-搜索-所有模块当前区域/当前模块-字符串 【注】关注GZH回复x96获取x64dbg/x86dbg工具以及其他网络安全相关书籍