《逆向从入门到变态》第二章笔记

《逆向从入门到变态》第二章——笔记

2.1 x64dbg分析Hello World程序

本章代码如下:

#include <Windows.h>
#include <stdio.h>

int main(int aggc, TCHAR *argv[])
{
	MessageBoxW(NULL,
		L"Hello World",
		L"Text",
		MB_OK);

	return 0;
}

2.1.1 x64dbg快捷键(一些代码跳转之类的)

指令 快捷键
步过 F8
跳转 Ctrl+G
运行 F9
转到上一个 "-"
步进 F7

2.2 访问目标地址的常用方法

2.2.1 使用跳转命令(Ctrl+G)

2.2.2 设置断点(F2)

2.2.3 注释(;)

2.2.4 标签(:)

2.3 查找指定代码的地址

2.3.1 代码执行法

用法:使用F7/F8快捷键快速找到相应的函数入口。

限制:具有明显的特征。(目前学到的是确认按钮、以及输入scanf)

2.3.2 字符串检索法

用法:右键->搜索->当前模块/所有模块->字符串

(实例中的API为"Hello World"与"Text")

2.3.3 API查询法

用法:右键->搜索->当前模块/所有模块->跨模块调用

(示例中的API为MessageBoxW)

2.4 修改标题以及内容并打包成补丁

2.4.1 修改文本的方法

2.4.1.1 直接修改法

1、查看该指针所指向的数据:右键->再内存窗口转到->常数(C)

2、在内存区选中所要修改的字符串,右键->二进制编辑->编辑

3、编辑:在字符串界面修改即可

2.4.1.2 修改数据地址的方法

1、寻找空间:在内存区找一处比较空旷的空间

2、获取地址:在左侧首地址处,右键->复制->地址

3、修改数据:与直接修改法编辑方式一样

4、修改指针:找到相应的代码(通过字符串查找法),修改指针为步骤2获取到地址即可。

2.4.2 修改并打补丁

这里直接用2.4.1.2的修改数据地址的方法,按照正常方式打补丁即可。

posted @ 2024-07-25 07:58  MrVirus  阅读(14)  评论(0)    收藏  举报