游戏观察 游戏产业媒体
手机端下载
当前位置:游戏观察 > 新闻 > 研发资讯 > 正文

代码审计“吃鸡”辅助外挂 揭秘这条黑色产业链

2018-02-01 11:21 来源:FreeBuf

  游戏观察2月1日消息,绝地求生可以说是本年度最火的游戏了。首付99,月付30,也可以说是土豪游戏了。我等屌丝吃了一个月的泡面,好不容易才凑够99上了吃鸡的车。可谓上车容易,“吃鸡”难。作为盒子精和快递员的我,每次都敬职敬业,把自己辛辛苦苦攒其的满配M4送给各种大佬,心中的苦闷,也就只有自己晓得了。

  有热度的地方,就有黑产。虽然游戏官方一次次严打,但也不乏外挂横生。为了吃鸡的我,决定只身探险,为大家揭秘这条黑色产业链(找个牛逼的外挂去“吃鸡”)。

  网上搜索了一下吃鸡辅助,找到个外挂的发卡平台。

  很多朋友第一次听到“发卡平台”这个概念,这里简单说下。发卡平台就是第三方销售平台,就像某宝一样。外挂制作者或者外挂的代理商,在发卡平台注册商户,上架商品(外挂充值卡密),每卖出一单,发卡平台会从中抽成。所以,只要我们搞定了发卡平台,就可以自己充值,愉快吃鸡了。

  外部看了看,没找到什么利用的点。所以,我们就得整一套源码来审计。这时就得上我们的神器了。先提取发卡平台的关键字,然后搜索引擎爬取网站。

  再对采集到的网站扫一遍备份文件(主要还是我牛逼的字典),得到一份源码。本地搭建,审计开始。

  文件结构如下:

  下图是参数处理的方式。

  所有形式进来的参数都要经过makeSafe的“洗礼”,基本就是加了“\”。防护还是挺弱的。我们想几个方法绕过下。

  1. 取参数使用错误

  取参数使用错误这个问题,以_P和$_POST举例来说。

  _P就是$_POST经过makeSafe“洗礼”后的结果。可是有时候犹豫程序员粗心后者习惯的问题,他取参时没有用_P,而是用了$_POST,那不也没有经历“洗礼”么。

  文件admin/adminInfo.php就刚好存在这样的问题。

  这里由于没有回显,时间盲注喽

  这样的注入利用起来一点都不好用,故继续寻找。

  2. 没有引号来保护的点

  虽然可以宽字节绕过注入,但是还是希望中找到通杀位置(主要还是我懒)。

  文件/lin/ajax.php中这个查询$userid,$goodid和$channelid都没有引号的保护。

  但是,在看参数的获取,$userid,$googid都进行了int强制类型转换。可偏偏$channelid没有进行转换。

  构成了注入

  还是好多处可以注入的地方,但是有这一次就够了呀。

  接下来,我们再去找点别的乐子。

  打开admin后台目录看看,发现其主要的认证依靠于common.php进行。

  别的文件包含它来进行认证,这时,发现有个奇怪的文件adminInfo.php。这个文件居然没有包含该文件,那岂不是未授权访问?直接访问发现是空白显示,赶紧打开源码看看其功能。

  我们看到action接受后有两个方法。

  我们试着访问看看第一个方法。

  瞬间惊呆,这莫不是开发者留下来的后门。。。那这可比注入好用多了。

  但md5密文有时候破解不出来,我等穷屌丝也用不起付费破解。

  我们再来看看第二个方法吧。

  这个方法简直无敌了,我们可以以任意管理员登录后台。

  我们先访问

  然后访问/admin,就直接进入后台了。

  这样就简单多了。。

  来看看我们的发卡平台

  可怕的流水账单

  算了,我只是来找我的辅助卡密的

  提取卡密,充值帐号,“吃鸡”去了。

  大吉大利,天天吃鸡。

  文中提及技术细节,仅作交流,请勿用于非法活动。

最新游戏行业资讯,点击进入游戏观察!

本网站所收集的资料来源于互联网公开信息或网友自助投稿,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您知识产权的资料,请与我们取得联系,本站会在3个工作日内删除。

游戏观察

聚焦极有价值的游戏产业资讯。打造有影响力的游戏产业媒体。

赋能游戏跨端开发,Unity于2021 ChinaJoy推出跨端移植服务