避免游戏中心的排行榜黑客攻击

时间:2011-04-13 00:18:33

标签: objective-c itunesconnect game-center

有没有人找到一种方法来避免游戏中心的领导者黑客入侵,或者至少让它变得更复杂?

你可以看到HackCenter的视频,这是一个Cydia应用程序,可让你在这里提交你想要的任何分数:Hack Center

即使该应用程序不应该在Cydia商店上可用,我们都看到在AppStore上的几个游戏中显然是假的分数。与该视频提交的分数不同,假分数通常高得离谱,并且不鼓励其他玩家,因为他们永远无法达到排行榜的顶端。

我无法找到黑客是如何完成的(我认为它们与http调用相交并只是用他们想要的任何内容替换得分参数?)。

感谢任何见解。

5 个答案:

答案 0 :(得分:6)

问题源于允许用户在设备端生成自己的分数数据。如果所有与得分相关的计算都是在服务器端完成然后发布到记分板(我不知道你的应用程序是如何工作的,所以我不能推荐一种特定的技术),这将会困难得多。

我认为你能做的最好的事情是记录他们如何获得真正高分的数据,以供你以后复习。根据你的游戏结构,这可能是不可能的。根据您的游戏结构,它也可能是伪造的。例如,由于关于游戏如何工作的物理特性,一些游戏分数不可能进入游戏中。在我看来,这是你最好的防御它。可悲的是,这需要一直监控它......

此外,即使您可以验证假分数,也可能会有人整天伪造假分数,您永远无法跟上它。有人得分提交机器人最终将获胜。你不是人,你。它可以整天发布假的分数,你不能整天看假的,你不能验证1000s的假提交。尝试验证用户端生成的任何内容(例如设备ID,正在安装的应用程序等等)都是毫无意义的。它可以伪造。 IP地址也没有意义。您的应用程序是一个移动平台,可以从手机公司获得他们想要的全新IP。如果有人想因此隐藏你,那么跟踪单个合法的真实用户是非常困难的。

也许您可以在Apple的帮助下进行某种应用购买验证。这将使您更容易禁止违法者。他们必须付钱给你打造你的排行榜,哈哈。

这只是我的2美分,我希望它有所帮助。

答案 1 :(得分:3)

因为他们正在做http intercept,所以很遗憾你无能为力。我甚至发现在itunes connect中设置排行榜的最高分没有效果。

我参与过的游戏从未将得分归为磁盘 - 因此无法在那里进行更改 - 并将最高分设置为30米。然而,排行榜在发布后数小时内就已经满了IntMax分数。

希望Apple能够在WDC13中获得一些修复,因为就目前而言,全球排行榜都是无用的。

答案 2 :(得分:3)

有两个高分表:有cydia的那些,没有的那些:P

答案 3 :(得分:2)

您可以尝试检查用户是否安装了该内容,然后禁止他们输入高分,如果他们有应用程序的话。

我个人只会检查Cydia:

[[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"cydia://"]]

我不确定Hack Center的网址是什么,但也许你可以尝试猜几次。我猜'cydia:// hack_center'或类似的东西。然后,一旦你找到url,用它替换'cydia://'。

答案 4 :(得分:0)

您还可以设置自己的服务器并使用正确的身份验证和加密渠道上传分数,然后只比较服务器中的内容与GameCenter中的内容......您仍然需要清理排行榜,但至少你会知道要修复什么以及将哪些用户列入黑名单。