游戏安全实验室 首页 游戏漏洞 查看内容

【游戏漏洞】FPS游戏玩家对象数据分析

发布于:2018-11-5 10:53   |    101694次阅读 作者: 外部投稿    |   原作者: zusheng

目标(Objective)

Ÿ  Health

Ÿ  Rifle Ammo

Ÿ  Pistol Ammo

Ÿ  Player Pointer

0x01 玩家健康

查找玩家健康值,玩家健康值是100,但是我们并不知道数值类型,我们可以使用精确搜索方式搜索100-所有类型

CE搜索

结果很多,我们可以使用手雷来减少血量

我们会得到两个结果

我们可以去尝试改变数值,最终发现一个是我们的客户端健康值,一个是服务器健康值,我们分析关注的重点在客户端这边,这是单机模式下修改服务端的可以达到无敌的效果但并不是分析的重点。

右键改地址选择寻找是什么改写了该地址,进入游戏继续让手雷改变健康值。

让我们记住这个地址,OD附加游戏然后转到该地址(很不幸游戏中途奔溃了,我们从头来了一遍,所以后面地址肯定不同了)

0x03 基地址与周边数据分析

现在我们开始寻找基地址,这样在下次打开游戏就不怕存放玩家健康值的地址改变啦。

[edx+0xF8]就是玩家健康值地址,edx来源于eax

eax来源于上面的call

call内运行逻辑还是比较多的,我们F2断点调试一下运行逻辑

根据调试分析,eax来源于[0x50F4F4]

最终表达式如下

[0x50F4F4+0xF8]

打开CE数据结构分析,我们填入0x50F4F4,第一个就很像我们玩家对象了

我们添加几个BOT

刚刚好七个对象指针

初步分析可能是地图玩家坐标

偏移150步枪弹药

偏移13C手枪弹药

偏移128步枪备用弹药

偏移114手枪备用弹药

到此整个数据分析差不多了,基本上都在附近。




来源:zusheng—投稿

GSLAB网站投稿文章仅代表作者本人的观点,与本网站立场无关。

*转载请注明来自游戏安全实验室(GSLAB.QQ.COM)

分享到:
踩0 赞0

收藏

上一篇:【游戏分析】常用反调试技术集合

下一篇:【游戏漏洞】《QQ仙侠传》背包遍历及二叉树节点分析

最新评论
B Color Image Link Quote Code Smilies

发表评论

top 问题反馈

返回顶部