解读内存转储

2024-01-02 23:18:35

解读内存转储

这里我们运行binarybook-master\chap02\shooting\shooting.exe
另外还需要使用万能进程内存编辑器:兔耳旋风
运行shooting.exe,先玩一会攒点积分,空格是发射,上下箭头是增减能量
在这里插入图片描述

兔耳旋风查看shooting.exe

在这里插入图片描述
在这里插入图片描述
主线程的ESP寄存器的值为0019FBF4,也就是栈地址。

ESP的值在每个环境上都不一样,0019FBF4就是这个栈地址的起点

当前得分为87,我们在栈数据中搜索"87"这个值

Alt+F打开检索窗口

在这里插入图片描述
双击该地址,主窗口就跳转到该地址

修改一下光标处的值,随便改
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/bcfcf0de031a4b10a1317e00c21ea1ef.png
然后返回shooting.exe,可以发现得分发生了变化[嘻嘻]
在这里插入图片描述
在这种情况下,很难达到的高分也就容易被修改出来了

同样的也可以修改能量ENERGY
在这里插入图片描述

在这里插入图片描述
成功将ENERGY的值从14变成了30

获取内存转储

随着程序的运行,内存中的数据会不断实时变化,如果要保存某个时刻的状态(快照),我们就需要内存转储,将数据保存为文件


操作系统会按照可执行文件中的内容将程序加载到内存中,但内存中的数据与可执行文件中的数据并不完全相同。

文章来源:https://blog.csdn.net/weixin_46025603/article/details/135327585
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。