好友
阅读权限20
听众
最后登录1970-1-1
|
Jione
发表于 2022-9-17 11:57
本帖最后由 Jione 于 2022-9-17 12:01 编辑
前两天看着大家都在玩羊了个羊,我也无聊小玩了一下. 奈何技术太菜玩不过第二关这可把我气到了.
是时候用技术了改变一下了
分析
因为这个游戏有朋友圈排名,那么他肯定在通关后有交互,那么我们拿到加入羊群的时候请求不就可以了.
但是发现我太笨了第二关都通关不了啊,所以我们得想办法过第二关.
那我们就抓开始游戏时候的包,发现他发送了两个请求, 来请求游戏关卡内容
cat-match.easygame2021.com/sheep/v1/game/map_info?map_id=90016
cat-match.easygame2021.com/sheep/v1/game/map_info?map_id=80001
经过测试发现80001就是第一关90016就是第二关,那么简单了我直接把90016的请求改为80001
改了后果然可以,第二关直接变成第一关内容了.那我们直接15秒通关第二关,抓通关的包
抓到请求
cat-match.easygame2021.com/sheep/v1/game/game_over?rank_score=1&rank_state=1&rank_time=1&rank_role=1&skin=1很显然这就是通关的请求了
请求头有一个t参数这个t就是用户的token ,那我们直接用token请求一下,发现结果果然增加了一次
那我就写代码线程去请求
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
Request request = new Request.Builder()
.url("https://cat-match.easygame2021.com/sheep/v1/game/game_over?rank_score=1&rank_state=1&rank_time=1&rank_role=1&skin=1")
.get()
.addHeader("Host", "cat-match.easygame2021.com")
.addHeader("t", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2OTzMjEzODE0LCJqdGkiOWJ1ZyI6IiIsImxhbmciOiIifQ.g6R9xzc9Tl1xcxAFTdfn4e41s0LXg4tQZGwmAOWaxkc")
.addHeader("User-Agent", "Mozilla/5.0 (Linux; Android 7.1.1; GOME 2017M27A Build/N4F26M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/86.0.4240.99 XWEB/4313 MMWEBSDK/20220805 Mobile Safari/537.36 MMWEBID/1205 MicroMessenger/8.0.27.2220(0x28001B37) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64 MiniProgramEnv/android")
.addHeader("charset", "utf-8")
.addHeader("content-type", "application/json")
.addHeader("Referer", "https://servicewechat.com/wx141bfb9b73c970a9/15/page-frame.html")
.build();
Response response = null;
response = client.newCall(request).execute();
最后上结果图
对了还有token生成方式
里面分为三段
第一段是加密方式
第二段是用户信息
第三段是加密内容
前两段用base64解码得到,加密方式是hs256 用户信息里面主要内容是uid,然后把这两段加密就得到第三段 |
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|