首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当微信遇上 10 万战绩的“跳一跳”外挂,程序员还能“逍遥”多久?

关键时刻,第一时间送达!

一款热门游戏,普通用户玩的是乐趣,而对于程序员来说,走的是非常人之路,以各种花样技术方法获取羡煞旁人的高分。

跳一跳表情包

自 2017 年 12 月 28 日,微信上线了小程序的游戏功能之后,一款简单休闲类游戏「跳一跳」风靡好友圈,然而当笔者越玩心跳越快才达到 200 分之时,第一名已经从 888 分直接变成了 100000 分(貌似最高分是 10 万),这究竟是哪家大神如此厉害?

深扒一下,高分攻略往往没有我想的这么简单,除了上周 CSDN 发过的一篇《

微信小游戏「跳一跳」技术手段高分秘籍实现

》之外,更有程序员研发出「跳一跳」物理外挂,该程序员自制了一个小型机械手臂悬挂在手机屏幕上方,然后用尺子量出两个箱子间的距离,将数值输入电脑,机械手臂就会根据距离自动调整按压屏幕的时间,精准无比,达到 6000 分也是很容易的事情。

一山还比一山高,前有物理外挂,后就有 AI 图像识别、卷积技术实现。Cocos 引擎创始人王哲老师利用纯软件解法,用 adb shell screencap 截图后,对图像进行分析,然后用 adb shell input 指令来模拟触摸时间,运行结果如下:

可想而知,程序员为了高分也真是操碎了心,对此,不少网友表示,如今真是一个技术改变战绩的时代。

「跳一跳」的严重 Bug

其实不然,当很多程序员开发外挂的同时,没想到这也是一个 Bug 刷新战绩的游戏。近日,有网友在 V2EX 网站上发布了一篇题为《微信跳一跳 可以直接更改分数,POST 请求没有校验… 》(https://www.v2ex.com/t/419056)的文章,表示微信小程序「跳一跳」游戏可以直接伪造 POST 请求刷分,其中只需要知道 appid 和版本号,就可以直接构造 URL 下载后缀为 wxapkg 的源码包,不需要任何验证,直接下载微信小程序、小游戏的源代码。

为此,独立开发者朱鹏飞对帖子作者所分享的「跳一跳」源码包地址进行了验证测试,具体过程如下(引用部分转载自「小专栏平台」公众号,已获得原作者授权。如果大家想要微信跳一跳小游戏以及其他十几个小游戏源码,可以到「小专栏平台」公众号,回复「微信小游戏」即可获取到):

第一步,我先试着用帖子作者拼接好的跳一跳源码包地址测试,发现能够下载,不需要任何验证,只需要知道这个地址,直接任意浏览器或者下载工具打开都可以下载。

第二步,再用帖子中的解包 Python 脚本把源码包解压成源代码。

第三步,在本地微信开发者工具中新建一个空白的小程序或小游戏的项目,不要选择快速启动模板。

第四步,把刚才解压出来的源代码复制到刚刚创建的项目目录中,开发者工具会提示编译出错,这个只需要新建一个game.json文件即可。

文件内容不能为空,写一对大括号进去,或者加上deviceOrientation的配置,这句话的意思是游戏竖屏玩。

保存后你发现游戏还是编译不通过,还需要修改最后一项,点击开发者工具右上角详情按钮,把调试基础库改成game。

好了,运行起来了:

目前,微信已经修复了该 Bug。

小程序带来的安全问题

曾经的「左右脑年龄测试」、如今的「跳一跳」游戏将渐渐冷却的小程序重新带回大众视野的同时,也不由得引发我们的深思,小程序真的安全吗?我们的用户信息会被窃取吗?会不会再次发生上述“小游戏源代码可直接下载,修改分数”等情况?

事实上,从小程序的机制上分析,小程序是由微信提供接口,服务商只需调用微信的接口就可以实现服务功能,同时任何一家公司上线的小程序都需要通过微信的规范制作及审核。对比以往传统的 App 客户端,两者之间形式的代码不同,这也使得曾经针对 App 客户端的攻击行为失去了对象,如今只有微信后台出现了安全问题,才会波及到小程序的安全。也就是说,小程序开发商并不能拿到用户的微信账号及密码,用户的更多信息还是掌握在微信的手中。

对于微信信息安全方面,其官方账号“微信派”于今天发布声明表示,“请大家放心,尊重用户隐私一直是微信最重要的原则之一,我们没有权限、也没有理由去“看你的微信””。

而针对此次「跳一跳」的 Bug,其开发团队表示,元旦期间一直在加班做反外挂逻辑。因此,想要走捷径获取高分的用户们,还得看哪方的程序员团队更强了。

归根结底,身处「互联网+大数据+人工智能」的时代,信息没有绝对的安全,且仅对于微信小程序本身,随着小程序的不断扩展,作为用户,还是应该提高自身的信息安全意识,对于不知名的小程序尽量减少添加,而作为一名开发者,探索技术的同时希望可以成为一名反 Bug 专家,而不是一名外挂提供者。

更多的观点,欢迎留言分享。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180102A0SK7600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券