随着小程序的小游戏发布,官方发布的第一款小游戏,跳一跳,因为交互性好,操作流畅,易于上手,外加上积分排行榜,官方推广等因素着实火了一把。近期就有小伙伴反应,自己排行榜上个别好友分数特别高。自己奋斗多个通宵都苦追不上。这里博主奉劝大家,适当的玩一下游戏是娱乐但是千万不要过度的依赖和上瘾。就像微信官方推广的那样,用完即走,绝不留恋。
为了解答小伙伴的疑惑,这里博主就个大家讲解一下,排行榜上的高分是怎么通过技术的手段实现的。
-
准备工作
- 笔记本电脑一台
- 安装微信的手机一部(android或IOS的)
- 抓包工具 charles(android手机可以使用Packet Capture手机版抓包APK)
- nodeJs安装包
-
配置抓包环境
安装nodeJs网上教程很多,下载最新安装包一直下一步就ok了,这里不过多介绍。nodeJs官方下载地址
【charlis】
安装charlis工具,charles官方下载地址(或者下载文档末的集合包进行安装)
安装方式和其它的exe文件一样,双击之后一直下一步。安装完之后双击打开,配置charles监控IP,选择Proxy–Access Control Settings
输入0.0.0.0/0,最后点击OK。意思是监控所有IP地址和所有端口号
配置监听SSL,因为微信所有的请求都是HTTPS协议的,选择Proxy–SSL Proxying Settings
点击Add在弹出的窗口中录用mp.weixin.qq.com和443端口微信小程序的访问地址,然后点击Ok。
至此PC端配置完成,点击左上角的像探头一样的图标开始监听。当中间变成红色说明已经启动监听,如下图
下面进行手机端的配置,由于微信的所有请求地址都是HTTPS加密的协议,为了能监听到HTTPS的连接,我们还需要在手机端配置安装一个charles的证书。证书的官方下载地址(或者下载文档末的集合包进行安装)
android手机安装教程,小米手机为例,设置–更多设置–系统安全–从存储设备安装
苹果手机安装教程请前往“设置”>“通用”>“关于本机”>“证书信任设置”
最后一步配置手机代理,让手机走charles进行上网。首先要保证手机和电脑处于同一WIFI上。
点击设置–WLAN–选择你连接的wifi后边的三角–代理选择手动–输入你电脑的IP地址,端口8888(charles默认代理端口,我的电脑IP地址是10.0.10.123)
苹果手机同理 -
改分攻略
开始抓取微信的session_id
此时进入微信,打开微信小程序游戏跳一跳,不要进入游戏。在Charles里面能看到mp.weixin.qq.com连接,点开,找到wxagame_init–request里面就有session_id(一定要复制最后一个请求的session_id)如图:
粘贴到文末安装包里小程序跳一跳\wx_t1t_hack目录下的w.js文件的第68行session_id的值。score是你要改的分数
点击电脑的开始–运行(快捷键windws+R)–输入CMD–进入到w.js文件的目录,输入node w.js 按回车键。(PS:可以使用快捷方式,在w.js目录下按住键盘shift+鼠标右键–在此处打开命令窗口)
看到2018! Happy new year!表示成功。
然后退出微信,杀死后台进程,从新微信,进入排行榜,此时你看到的分数已经是你修改后的了。如果失败了请替换不同的session_id多尝试几次此过程。最后祝你成功,还是那句话请勿上瘾哦。 -
资源链接
教程中使用的所有工具包链接地址
写在文末,此教程利用了微信小程序提交POST请求,未校验的漏洞,具体什么时间会被修复还不确认。本文只用于学习交流使用,对造成的后果不付法律责任,请大家合理使用。
PS:感谢feix
参考网址:https://gist.github.com/feix/6dd1f62a54c5efa10f1e1c24f8efc417#gistcomment-2309478