-
-
[原创]游戏漏洞挖掘之信息泄漏风险
-
发表于: 2018-1-12 16:58 2460
-
信息泄漏风险定义:
现在的网络游戏自身是一个大型的分布式系统,客户端与服务器集群中有着大量的信息交换,而交换的数据包中极有可能包含了黑客们感兴趣的信息。游戏泄漏的本应该隐藏的信息,都可以成为信息泄漏的风险。
信息泄漏风险危害及分类:
有玩家可能疑问,游戏能泄漏什么样的信息呢?这样子的危害又有多大呢?我们先来看几则案列:
在当今FPS游戏中,存在的大量的透视,自瞄的外挂,其实这里面的主要原因便是游戏将其他玩家的坐标直接或间接的协议全局下发了
上述的透视效果,就是因为游戏在同步声音的时候,坐标做了全局下发,如下图:
同样是射击类游戏,游戏在某一模式下,需要确认GPS的位置
实际上,你利用漏洞,就可以迅速识别GPS所在位置,迅速获得胜利
某游戏在游戏中提供休闲内玩法,玩家可在游戏中进行竞猜内玩法,但是竞猜的答案在游戏开始前其实就已经下发,利用漏洞就可以实现游戏的100%竞猜成功
游戏为了保证玩家个人信息的安全,一般都不会在游戏中泄漏玩家的个人信息,但是稍微利用下漏洞就可以获取玩家的QQ号
通过上述案例,可以将信息泄漏的风险,简单的进行归类:
信息泄漏类风险基本分为游戏内信息泄漏和玩家的信息泄漏。游戏信息的泄漏,主要影响到游戏玩法,破坏游戏平衡,影响游戏口碑。而玩家信息的泄漏,则可能进一步会引发大量广告推送,骚扰信息,木马,钓鱼等危害,严重影响游戏口碑。
信息泄漏风险产生原因:
信息泄漏的原因是服务器与客户端在协议交互过程中,为了同步状态或是进行判断,将本应该隐藏的信息明文下发到了客户端,导致了玩家可以感知和利用。
信息泄漏风险验证方法:
因为信息会同步到客户端,故验证方法的核心便是利用协议工具,去分析每一条协议的具体字段内容。具体的可参见一则案例:
某游戏家园玩法中,提供了上门拜访的玩法,可选取任意游戏ID的玩家,进行拜访他的家园。通过协议分析工具,可以拦截到上行协议
[66 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 10 B5 A1 6F 00 00 00 00 00 00 ]
二进制数据被工具切割为:
[66 00] 主协议号
[02 00] 子协议号
[00 00 00 00] 未知
[00 00 00 00] 未知
[00 00 00 00] 未知
[10 B5 A1 6F 00 00 00 00 ]对方QQ号,0x6FA1B510转换为十进制为1872868624
[00 00] 未知
通过解析协议,即可获取对方玩家的QQ号了
*转载请注明来自游戏安全实验室(GSLAB.QQ.COM)
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!