首先找到羊了個羊源碼分析一下,通過抓包可以知道羊了個羊的域名是easygame2021.com,直接grep搜索一下找到源碼。
解包完可以看到這些文件。
解包工具:點擊進入
打開game.js搜索一下clothes可以找到這些代碼應該是讀取皮膚數據的。
搜索一下SHEEPCLOTHESDATA看看是什麼。
這些應該都是保存在本地的欄位名稱。
那麼接下來只要找到這些欄位被保存在哪里就行了。
用grep搜索一下SHEEPCLOTHESDATA。
可以找到一個AppBrandMMKVStorage開頭的文件。
打開之後發現這是一個二進位文件。
嘗試修改字符不改變文件大小但是失敗了遊戲無法運行。
可以在mmkv目錄發現crc數據校驗文件,難怪直接修改不行了。
研究了一下可以知道這是騰訊的。
MMKV存儲框架:點擊進入
嘗試編譯了一下可以成功打開這個文件,但是並沒有讀取到鍵值,不知道是什麼原因有懂的可以說一下。
直接修改不行但是可以通過間接修改,可以通過hook小程序讀寫mmkv相關的函數來實現。
通過apktool反編譯微信,搜索AppBrandMMKVStorage
分析一下找到m這個構造函數應該就是初始化MMKV的。
所以只要在初始化完後拿到this.thf就可以隨意讀取MMKV了。
用JsHook簡單寫個腳本測試一下。
JsHook:點擊進入
查看日誌可以看到已經成功讀取到皮膚了。
進入遊戲查看一下皮膚已經全部解鎖。
來源:遊民星空