解读内存转储

本文介绍了如何使用兔耳旋风这样的进程内存编辑器对shooting.exe进行内存操作,如查找和修改得分与能量值,以及解释了内存转储的概念,即在程序运行时保存内存状态以便分析或还原。
摘要由CSDN通过智能技术生成

解读内存转储

这里我们运行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

获取内存转储

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


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

  • 12
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值