今日,《绝地求生》的开发者蓝洞公布了史上最为详细的反作弊报告,而推送群体则是全球PUBG的用户,值得关注的是曾经仅次于外挂的鼠标宏软件将被永久列入封禁名单,在之后游戏中,如果玩家使用鼠标宏将直接被判处作弊。
官方原文:
反作弊小组的一封信
2019年2月26日下午1:37发送人Valor
你好,绝地求生玩家,
此举是我们希望让您了解我们的部分反作弊解决方案,我们希望能向您说明我们过去几个月的最新情况。反作弊方面的工作有很多,虽然我们不能详细说明每件事,因为这会影响到我们反作弊工作的实施,我们会对部分内容予以说明,以展示我们目前的工作成果和未来的工作计划。
1.加强技术措施(反作弊团队的措施)
2.反作弊解决方案的改进(BE外部反作弊合作)
3.未经授权的程序检测改进
4.解决steam系统中的漏洞
5.增加法律诉讼
一、加强技术措施(外挂原理说明以及反作弊团队的措施)
自绝地求生诞生,作弊程序进行了各种类型的攻击,虽然我们采取了行动并增加了多种安全措施来提高效率和响应每种类型的攻击,但这将永远是一场永无止境的战斗。首先,我们来看看这些作弊程序是如何运行的,以及我们是如何应对该类作弊程序的。
作弊程序原理示意图
当作弊程序(exe)和游戏(exe)启动时,相关数据会同时加载到系统内存上。
①来自游戏自带或第三方反作弊系统(常见的就是BE)的保护被激活。
这是我们阻止其他进程访问游戏进程的初步保护阶段。
②作弊程序进程试图使该初步保护技术无效,并成功获得对游戏进程内存的访问。
能够访问内存意味着能够更改与游戏相关的信息。
③最臭名昭著的作弊原理是利用DKOM,进程树和SSDT挂钩。
④一旦拥有了权限,访问了游戏进程内存的作弊程序可以收集各种数据并对其进行修改或复制,并借此提供游戏中未提供的非法功能。这里使用的最具代表性的技术是DLL注入和代码
动态链接库注入:将dll文件注入到某个进程。使用Windows中的LoadLibrary()API。
代码注入:在目标进程中注入执行。使用Windows中的CreateRemoteThread()。
动态链接库注入是最古老和最广泛使用的黑客方法。动态链接库注入将某个动态链接库文件强制放入游戏进程中。当此攻击成功完成时,此dll代码将被信任,系统将默认它是原始游戏代码一样。
因此,可以根据黑客的需要修改游戏过程,使用这个DLL来连接和劫持数据。
阻止动态链接库注入攻击一直是反作弊团队的重中之重。在绝地求生的早期开发阶段,还存在兼容性问题,例如steam和discord等程序被错误地识别为试图注入dll或将dll识别为恶意代码。
内核驱动程序攻击是我们经历过的另一种类型的黑客攻击。内核驱动程序是硬件间通信所需的一个文件,它产生一个在特定权限下运行的进程。由于内核驱动程序可以绕过大多数反欺骗解决方案,并以高于一般用户权限的权限执行,因此更难检测。
此外,尽管Windows操作系统在内部阻止未经授权的内核驱动程序,但在许多情况下,通过利用安全漏洞和非法交易的证书来批准未经授权的内核驱动程序,就好像它们是合法的一样。
我们可以使用阻止DLL注入的相同方法来防御这种类型的攻击,但这并不是非常有效,因为Windows操作系统中不断发现新的漏洞,而且大多数反欺诈解决方案都使用与恶意代码类似的方法,这意味着很难区分它们。因此,反作弊团队目前正在保护内存区域,内存区域可能被黑客滥用,使用最高优先级加密来有效地应对针对内核驱动程序的攻击,并正在尽最大努力将此方法应用于更广泛的领域。
我们还通过加密客户端和服务器之间的通信协议或重新验证客户机中文件数值来配合已有的各种检测手段。
二、反作弊解决方案的改进(BE外部反作弊合作深入加强)
除了上述技术保护之外,绝地求生还利用外部反作弊解决方案来保护游戏过程区域。正如之前通过新闻发布等宣布的那样,我们目前使用两种反作弊解决方案:battleye和uncheter。他们保护游戏进程,同时检测各种试图绕过反作弊解决方案的企图。
除了这些保护性的反作弊解决方案,我们还应用了一种机器学习技术,分析玩家的使用模式,并建立了一个系统,可以检测到异常的游戏模式或行为,这些行为会立即中断来自黑客用户的游戏正常操作。在构建这些系统的过程中,我们与众多经验丰富的反作弊解决方案公司和顶级工程师合作,帮助我们增强了游戏的安全性。
我们将继续与更多反欺诈解决方案公司合作,研究新的攻击技术,开发能够抵御这些攻击的技术。
三、未经授权的程序检测改进
即使我们已经设置了各种保护措施,也几乎不可能阻止所有未经授权的程序。对于试图绕过我们解决方案的黑客程序,我们目前正在尝试检测这些程序是否在游戏中使用,并立即阻止它们。
反作弊团队每天分析约3TB的游戏日志、60种左右的作弊日志,平均超过1000万份报告。从大量的数据中,我们挑选出显示异常模式的用户,经过验证过程后,这些帐户将被禁止使用。此外,我们定期更新未授权程序的特征码,以确保我们以前阻止的程序不会被修改以再次工作。
同时,我们也在努力改进与用户共享相关更新的方法。一个例子是在2018年8月23日的更新中引入的举报反馈系统。自实施以来,已经向用户发送了超过1亿份报告。83%的用户在上线上收到了多份报告,他们举报的对象被永久禁止,有人认为他们的举报并没有什么用,但是我们希望你能知道,你的举报为公平的战场出了分力!
以下是8月23日至11月30日的每周报告反馈数据。
关于硬件禁令的话题,我们早在11月19日就开始讨论了。这是一种非常敏感的禁止手段,因此我们采取额外的预防措施,以确保网吧PC或公共PC不会受到不公平的影响。我们非常仔细地挑选哪些机器将被禁止,以防止无辜的个人电脑被击中。执行硬件禁令时,将弹出下面屏幕截图中显示的消息,该硬件将无法再运行绝地求生。除了硬件禁止外,我们还开始禁止宏鼠标。计划是将这一努力扩大到所有设备,以防止使用宏设备的不公平优势。
硬件封禁示意图
鼠标宏封禁示意图
(鼠标宏封禁提示图)
我们目前安排了100多人7X24小时在全球各个服务器监控这些作弊程序销售。各种交流黑客程序信息的社区也受到密切监控,因此任何威胁到绝地求生安全的元素都可以被检测到并尽快处理。(没错,我们派了卧底)
最终目标是永远在他们销售传播前抢先行动,使这些黑客无利可图,不再活跃在游戏中。
我们最近还添加了一个系统消息,如果同一个游戏中的某个人被禁止,系统会向游戏中的玩家发送实时警报。每当实时检测到异常的游戏模式,或者用户被证明是一个挂壁玩家,该帐户将被禁止,因为游戏仍在进行,并在右上角杀戮信息中向所有其他玩家宣布示众。(没错,我们开始挂人了)
四、解决steam系统中的漏洞
除了在游戏中应用的方法外,我们还帮助修复了外部平台中的漏洞。
如你所知,绝地求生使用STEAM平台。在有些情况下,平台中的一些薄弱环节被利用以获取非法收益,我们用STEAM对此进行了改进,并解决了这些漏洞,以便按照正常程序对黑客程序用户进行惩罚。下面是一些实际实例的例子(下列漏洞均已修复)。
漏洞:利用STEAM家庭共享系统中的一个漏洞来规避STEAM的封禁状态。
解决方式:如果购买绝地求生的帐户使用家庭共享与未购买绝地求生的帐户共享游戏,则与该游戏共享的帐户将无法再玩该游戏。
漏洞:改游戏在STEAM的运行时间,以满足Steam的最低退款要求,并在游戏玩了很长一段时间后将游戏退款,从而免费玩游戏。(多为开挂者使用)
解决方式:我们与Valve(Steam)合作,加强了他们的绝地求生运行时间计算方法和STEAM用户软件退款要求,以防止这种情况再次发生。
漏洞:利用STEAM漏洞,以及绝地求生测试服务器和匹配服务器处于不同的环境,使用测试服务器中被封禁的帐号在匹配服务器进行游戏。
解决方式:我们已经更改了服务器系统,所以现在可以跨所有服务器检查BAN记录。现在的封禁将是所有服务器间的封禁。
我们正通过与STEAM密切合作,不断完善该系统,以防脆弱的STEAM被黑客们利用。
五、增加法律诉讼
阻止妨碍公平游戏环境的黑客程序非常重要,但开发、推广和销售黑客程序的人也应始终是首要目标。为了防止黑客程序的传播,我们正与执法部门和海外办事处合作,在国内外采取强有力的法律行动。以下是2018年采取法律行动的结果,对于中国大陆地区来说,这是与腾讯密切合作的结果。
2018年1月在中国连云港逮捕41人
2018年2月在中国淮安逮捕3人
2018年2月在中国襄阳逮捕11人
2018年4月在中国南京逮捕141人
2018年4月在中国淮安逮捕1人
2018年8月在韩国大田市警察局逮捕6人
2018年9月在中国温州被捕1人
2018年10月在中国唐山逮捕3人
2018年10月在中国温州逮捕34人
2018年10月韩国阳川派出所逮捕11人
除上述结果外,我们目前正在与韩国国家警察局、律师事务所和版权保护机构调差黑客程序销售情况,并跟踪黑客开发者。新的调查结果公布后,我们会随时更新。
六、写在结尾
每场绝地求生游戏都有多达100名用户试图吃鸡,这本身就很难。我们知道,即使一个人玩得不公平,也会严重影响这么多人的乐趣,因此我们需要提供比其他游戏更强大的反作弊措施。
我们将继续致力于这项任务,虽然我们今天所分享的仍然是这场战斗的早期步骤,但我们不会停止研究和开发新的反作弊技术,以尽可能地消除尽可能多的黑客程序及其开发人员。
我们感谢你们所有人的耐心和信任,并将尽我们所能来回报这种信任。感谢您的持续支持和举报。