郑重声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,如果您不同意请关闭该页面!任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担!

0

准备工作

搜索子弹

在正式开始前还是需要一些基本的使用知识,首先我们通过内存搜索子弹,然后基于二分法进行筛选数据

image-20220320173819317

上面是我们搜索出来的数据,暂时把它定义为当前地图当前身份当前人物手持的这一把AK枪的子弹内存

为什么要这样喊呢?因为在游戏里面会有多个数据结构环环嵌套,指针一个指向一个进行套娃

我们通过:右键该内存->找出是什么改写了这个地址

1

然后我们点击手动添加地址把06F03960加上偏移CC,即可显示当前枪械的子弹

image-20220320174237627

所以06F03960就是我们上一级的地址,我们只需要使用新的扫描来搜索

image-20220320174642541

可以看到4个地址,接下来我们回到游戏,把主武器丢弃查看变化

2

可以看到第一个地址的值变为了00000000,那我们可以知道这个地址是当前主武器的名称,而里面的06F03960是这个武器的名称。我们尝试丢弃主武器后重新换一把枪

3

接下来把那个枪械的值06F03AB8进行替换,可以发现完全一样,论证完全没问题

image-20220320194112655

第四个值不变,那么这个值是没用的。

第二个和第三个的值在我们丢弃主武器和副武器都进行了变化,所以这两个值应该才是我们需要的。

首先查看第二个地址是什么修改了它,从图片可以看到ESI的值0A284310偏移是5E8

image-20220320194809159

而第三个地址技术无限刷新,应该是获取当前枪的名称用的

image-20220320202131390

既然知道了这个值,我们就通过手动添加第三个地址的偏移,可以看到完全和我们的子弹一样。

image-20220320202533789

所以这个地址就是当前枪支的子弹数,并且我们切换到副武器也是一样的

4

加下来继续搜索0A284310这个地址,可以看到有多个值

image-20220320204609570

image-20220320210207377

我们需要更换地图来进行筛选哪些值改变了,然后一个一个值的进行判断:

  • 找出是什么改写了这个地址
  • 游戏中按H
  • 更换地图进行查看
  • 最终使用指针表示法来验证

通过排除找到的地址进行验证,最终找到这个值是对的

image-20220320210354866

可以看到地址是0AA49ADC并且偏移是7C,然后我们搜索得到3个绿色的基址

image-20220320210534490

通过断开游戏连接进行筛选只留下了这两个值

image-20220320210712347

还需要继续筛选,我们直接退出游戏然后在重新启动后附加进CE,再进行验证,可以看到哪两个值一个变为空了,我们手动添加进行查看,这个cstrike.exe+D6E63C基址没有错

5

然后我们只需要锁定他切换地图都可以无限子弹了,包括退出游戏后重新进入(重新开机不行)

子弹区分敌我

由于测试了重新开机是否能够继续发现不行,然后这些数据就是重新搜索的。

image-20220322213441976

image-20220322213506690

我们可以看到我们锁定的数值在添加了BOT以后会无限的跳跃,而我们没有使用武器,并且队友都不需要切换弹药了(没录是因为录下来GIF太大了大家自行尝试)那么就可以断定这个值是代表所有人子弹的基址,我们就不能锁定它

1

那我们换下一个基地在进行锁定

image-20220323001430548

image-20220323001445649

可以从图中看到机器人已经有了换弹夹的动作,而我们的子弹是无限的,并且数据没有乱跳,这就说明这个基址才是我们的子弹数

2

后面测试换地图也是没有问题的

CT表下载

https://raw.githubusercontent.com/Ascotbe/Image/master/CSGO/CSGO1.6-1.CT