解密微信小程序漏洞:可下载任意小游戏源代码,“跳一跳”可改分
东方联盟网消息,据 IT 之家 1 月 2 日消息称,“跳一跳”居然可以利用漏洞自己改分数,甚至连微信小程序、小游戏的源代码都可以直接下载,只需要知道appid和版本号,就可以直接构造URL下载后缀为wxapkg的源码包,不需要任何验证。目前,该漏洞已被微信修复。
到底怎么回事?东方联盟网
该投稿作者为独立开发者朱鹏飞,他称“我看完文章之后立马根据他的思路方法测试了一下,然后下载了十几个微信官方的小游戏源码单纯研究学习,截止我目前推送文章的时候( 2018年1月1日23:50分 ),微信官方已经修复了这个漏洞,但是我感觉文章还是可以分享出来给诸位开发者,安全问题真的不容忽视呢。”
东方联盟网(公众号:东方联盟网)还注意到,朱表示,有些老版本的微信还是可以抓包,获取包地址。
以下信息摘选自朱鹏飞文章:
一、发现
一大早起来刷 V2EX,看到一个帖子《微信跳一跳 可以直接更改分数, POST 请求没有校验…》 https://www.v2ex.com/t/419056 好奇点进去看了。
发现不但跳一跳小游戏可以直接改分数,甚至连微信小程序、小游戏的源代码都可以直接下载,只需要知道 appid 和 版本号,就可以直接构造 URL 下载后缀为 wxapkg 的源码包,不需要任何验证。
虽然下载来的源码包是加密的,但是解密方法已经被 V2EXer 发现,并且写了一个解密的 Python 脚本,运行即可把源码包解开为文件夹。
二、重现
第一步,我先试着用帖子作者拼接好的跳一跳源码包地址测试,发现能够下载,不需要任何验证,只需要知道这个地址,直接任意浏览器或者下载工具打开都可以下载。
第二步,再用帖子中的解包 Python 脚本把源码包解压成源代码。
第三步,在本地微信开发者工具中新建一个空白的小程序或小游戏的项目,不要选择快速启动模板。
第四步、把刚才解压出来的源代码复制到刚刚创建的项目目录中,开发者工具会提示编译出错,这个只需要新建一个game.json文件即可。
文件内容不能为空,写一对大括号进去,或者加上deviceOrientation的配置,这句话的意思是游戏竖屏玩。
保存后你发现游戏还是编译不通过,还需要修改最后一项,点击开发者工具右上角详情按钮,把调试基础库改成game。
好了,运行起来了:
东方联盟网版权文章,未经授权禁止转载。详情见转载须知。
- 07-30移动互联网下半场开始,HTML5是较量着力点
- 07-30不必高估微信小程序,也不必低看百度卖91
- 07-30谁会挣到微信小程序千亿市场的第一桶金?
- 07-30小程序不一定是你的灵丹妙药
- 07-30别瞎忙活了,小程序不适合你
- 07-30写在微信小程序上线的第一天
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 12-05亚马逊推出新一代基础模型 任意模态生成大模
- 12-05OpenAI拓展欧洲业务 将在苏黎世设立办公室
- 12-05微软质疑美国联邦贸易委员会泄露信息 督促其
- 12-05联交所取消宝宝树上市地位 宝宝树:不会对公
- 12-04企业微信致歉:文档打开异常已完成修复