逆向知识之CS辅助/外挂专题.1.实现CS主武器副武器无限子弹

PS: 相信大家CS1.6这类的FPS应该玩过.现在我们通过外挂手法.讲解逆向的本质.以及应用.

关于CS1.6的下载.网络百度下载即可.

一丶主武器无限子弹寻找方法.

首先我们知道.在CS中主武器有子弹个数.那么我们可以通过CE寻找子弹的个数增加或者减少来进行寻找我们的数据. 关于CE的使用.可以参考网络教程.很简单.主需要来回扫描即可.

寻找思路:

    1.首次扫描子弹个数

    2.变化子弹继续扫描.

    3.重复2步骤.直到地址很少.

    4.过滤数据. 可以下拉到地址框中.锁定数据.然后更改游戏中子弹个数看看是否更改.如果没有更改则找到数据.(当然要不断过滤)

    5.找到基址.如果是动态地址.找访问地址一层一层寻找动态基址.如果是写入.那么找写入.一层一层访问找到动态基址.

通过扫描我们可以得到动态地址.

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

可以看看谁访问了.

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

通过代码得知. 一级偏移是CC. 继续寻找esi

CE搜索ESI的值.以16进制搜索.则寻找到动态地址,继续查看谁访问.得出下面CE的数值

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

通过上图的值. 得到二级偏移5EC  继续寻找esi的值.

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

通过上图得知 +7c,那么三级偏移是0x7c 我们随便点开一个.例如上图.是eax + 0x7c那么寻找eax

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

继续搜索CE之后发现.有两个绿色的基址. 我们都下来下来看看. 加上我们的偏移. 看看是否是当前的子弹个数.

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

发现添加之后两个地址都是91也就是我们现在子弹的个数.不能确定是哪个.所以过滤一下.

1.锁定查看. 在CE中锁定地址.看看子弹是否减少. PS: 自己锁定过了.发现两种都可以.不排除两个都是地址.

2.大退游戏重新开始.  这种方法试一试.                PS: 发现大退之后两种都可以. 所以基址可能是两个.都可以使用.

至此我们已经找到了主武器无限子弹的基址+ 偏移了.

[[[[基址] + 0x7c] + 0x5ec] + 0xcc] = 主武器子弹无限地址

那么副武器也是类似的找的办法. 可以使用上面寻找.

但是现在我们知道人物基址了.那么可以使用工具遍历一下.

首先填入我们已知的

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

这款工具的使用.

1.选择自己的进程

2.填入基址 + 你想遍历的偏移.

3.跟你你的偏移层级.选择你要遍历的 层级.比如一级遍历. 选中.然后我们选的三级偏移. 当然我们可以二级偏移给0.那么遍历二级偏移.这样的话那么偏移是基址 + 遍历偏移 + 固定偏移的形式来展示.

什么意思:

    比如是我们的基址是0xxxxxxx 一级偏移是 0x1  二级偏移是0x2 三级偏移是0x3 那么我们只想遍历 二级偏移  + 三级偏移.但是我要让二级偏移可变怎么办.那么我们可以这样设置.

      基址 0xxxxx  一级偏移 0x1  二级偏移 0x0  三级偏移0x3  那么遍历出来的数据则是  基址 + 0x + 遍历的值 + 0x3

如果还不会使用没看明白.可以网络百度教程. 可以使用我们的笨方法来查找.

根据上图我们得知. 我们主武器的基址加偏移已经填入了.那么直接遍历得出了72 (当前子弹个数)

那么我们可以这样想.既然0xCC是子弹的地址. 那么 二级偏移 0x5ec有可能就是主武器对象了. 也就是说0x5ec存储的是主武器的属性值. 那么我们使用工具.遍历一下二级偏移 +0xCc看看有没有发现.

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

如上图我们的操作步骤.

1.将二级偏移改为0

2.遍历方式改成2级偏移遍历的方式.每次增长4个字节.遍历1000次.循环累加.

3.点击开始遍历按钮.

4.填入12.也就是我们当前的副武器子弹个数.

5.点击筛选结果.

操作完之后会得到上图所示.我们可以看到二级偏移0x5dc那么我们添加CE进去看看.

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

添加之后我们锁定.发现子弹确实不减少.然后大退游戏重新打开.发现也不改变.所以这就是我们副武器的子弹无限了.

二丶编写代码.

编写代码就简单了.只需要 基址 + 偏移读出然后进行一直写入即可.

主武器无限子弹基址:  [[[[0x25069bc] + 0x7c] + 0x5ec] + 0xcc]

副武器子弹无限基址: [[[[0x25069bc] + 0x7c] + 0x5dc] + 0xcc]

代码实现可以是易语言可以是VC++. 因为属于外挂技术.所以给大家看看成品.但是不会公布写法.

逆向知识之CS1.6辅助/外挂专题.1.实现CS1.6主武器副武器无限子弹-LMLPHP

05-11 14:47