prontosil 发表于 2024-3-21 15:54

某unity小程序数据搜索及特征寻找思路

之前写了一篇通杀小程序的数据搜索, https://www.52pojie.cn/thread-1903623-1-1.html , 有人问为什么有时候搜到的数据没有两倍关系呢?这实际上是因为小程序可以分成JS开发的与Unity转换过去的,在unity-wasm的内存模型中,就不存在smi这种结构了,于是可以直接搜索,比如我拿一个小程序来举例:

我的环境是mac,mac上也有CE修改器的,只不过需要关闭一个安全选项才能用,这方面可以自行百度,Windows环境也是一样的

首先最重要的还是定位进程,找到了进程就好办。本来Windows上是可以通过加速的方式来看,但是m1 mac不支持,于是我想到了另一种办法,即搜索字符串 wx.request,因为小程序还是有部分代码还是JS,而JS代码一般都会以字符串的方式存在于内存中,可以通过这种方式来确认:



类似这种就对了,因为是出现在函数调用里

既然定位了进程就都好说,我们这次的目标是修改攻击力:



但是直接搜索攻击力数值,不管是搜124,还是两倍248都没有用,那这时候就用上模糊搜索大法

模糊搜索相信很多人都知道,即先搜一个未知值,然后不断地装备武器,再卸下武器,达到数值的变更,经过多次搜索就能定位到数值了



有个小技巧,即可以通过CE自带的重复功能,来过滤掉那些一直在变化的数值




我这里就不演示了,多试试总是可以定位到的,我这里最后在装备一件武器的情况下,定位到了数值,并且发现内存里实际存放的是武器的攻击力,后面再安装别的武器攻击力恰好就是其数值和

于是就可以修改下攻击力,然后固定这个数值,去游戏里爽了(我就不放截图了😆)


好了,按说到这里就结束了,但是怎么做到每次都能快速定位呢?

那就寻找特征值吧,目前还没找到一个好的工具,就只能肉眼看一下了,多次测试后发现,这个数值前面有一个固定的 D8270000 ,因此我们搜索八字节的十进制数 369367197656(即0x56000027D8)

这就可以作为一个特征值定位了,



AnAn520oving 发表于 2024-3-21 16:12

哇,最近刚好在学习,今天逛吾爱就看见了这个、

slpslp 发表于 2024-3-21 20:29

啥游戏大大

Taibing 发表于 2024-3-21 22:11

CE教程太好了,有无针对ce修改的更多玩法

q1z1y1 发表于 2024-3-22 14:09

这是哪个游戏?想练练手!

gggod 发表于 2024-4-2 10:33

刚好学习这个东西就来拉

molingqing 发表于 2024-4-2 14:32

比如我修改成功了,显示也对的。但是实际没效果,是不是加密过或者地址不对。

prontosil 发表于 2024-4-2 16:12

molingqing 发表于 2024-4-2 14:32
比如我修改成功了,显示也对的。但是实际没效果,是不是加密过或者地址不对。

这种情况可能要分类讨论下,有一种可能是这个数据是存在服务端的你改了本地的也没啥用

molingqing 发表于 2024-4-2 20:16

prontosil 发表于 2024-4-2 16:12
这种情况可能要分类讨论下,有一种可能是这个数据是存在服务端的你改了本地的也没啥用

应该是的 如果存在服务器端的话,是不是全部存的 还是一部分存在服务器。 因为还有一部分数据可以修改

WangWhereGo 发表于 2024-4-22 15:20

正好在玩这个游戏,回头试下
页: [1]
查看完整版本: 某unity小程序数据搜索及特征寻找思路