最近比较火爆的微信小游戏 跳一跳 据说存在漏洞可以通过接口直接发送成绩 本次就使用 Charles 抓取微信的数据
下载安装
- 下载地址
- 根据对应的平台下载安装
配置代理
- 打开
Charles - 依次打开
Proxy => Proxy Setting - 修改
HTTP Proxy的端口为本地未占用的 例如9999 - 打开手机的
WIFI确保和电脑处于同一网段 - 配置代理 以
iPhone6P IOS11为例- 设置 => 无线局域网
- 选择已连接的网络
- 滑到底
HTTP 代理 => 配置代理 - 选择
手动 - 服务器填入电脑的IP地址
- 端口填入
Charles配置的端口
配置 HTTPS 代理
- 默认情况下
HTTPS的请求是加密的 也就是显示红色的<UNKNOWN> - 依次打开
Help => SSL Proxying => Install Charles Root Certificate on a Mobile Device or Remote Browser - 这个时候
Charles会有一个提示 手机根据提示的网址打开Charles 4.2.1提示的网址为 chls.pro/ssl - 用
Safari打开网址后会提示安装描述文件 点击允许 - 进入安装描述文件的界面 点击
安装然后输入密码 部分系统还会弹出一个警告 继续点安装- 如果过你的系统版本大于
IOS9则需要进行下列操作 - 依次打开
设置 => 通用 => 关于本机(滑到底) => 证书信任设置 - 找到
Charles Proxy CA xxxxxx的一行 打开后面的按钮 弹出警告 点击继续
- 如果过你的系统版本大于
- 依次打开
Proxy => SSL Proxying Setting- 勾上
Enable SSL Proxying - 点击
ADD - HOST 填写
* - PORT 填写
443 - 点击
OK
- 勾上
获取微信 SessionID
- 按下
Ctrl + 退格删除历史记录 - 打开微信小游戏
跳一跳 - 可以找到
https://mp.weixin.qq.com/wxagame/wxagame_init的请求- 打开请求
- 右侧选择
Contents下面选择JSON Text - 可以看到类似如下内容
1
2
3
4
5
6
7{
"base_req": {
"session_id": "xxxxxxxxxxxxxx",
"fast": 1
},
"version": 9
} - 复制
session_id和version并且保存
执行刷分脚本 方法1
- 安装 Node 环境 (自己百度安装)
- 从 微信刷分脚本 下载代码 保存为
t1t.js - 在 脚本目录执行
npm install crypto-js request-promise request - 替换脚本内的
session_id和version(约65-70行左右) - 修改
score为你要的分数 高于100000之后排行榜也会显示100000 - 执行脚本
npm t1t.js - 再次打开跳一跳 可以看到 分数已经刷上去了
简易执行刷分 方法2
- 打开网址 https://track.yumc.pw/t1t
- 填写抓到的
session_id和version并且写上自己需要的分数 点击执行即可 - 本人承诺系统不会保留任何相关数据 如果你不放心 可以退出微信重新登陆 SessionID 会刷新的