Root权限,即超级用户权限,在Android系统中,获取Root权限意味着用户可以修改系统文件、移除预装应用、安装特殊应用等。
在Root环境下,游戏面临着相当大的安全隐患,用户获取了最高权限,意味着可以通过各类工具读取、篡改游戏的内存,为游戏外挂、破解等操作提供环境。
Root环境下使用修改器篡改游戏内存
虽然Android 6.0 后的系统带Root权限的已经比较少了,但依旧存在许多方式可以获取Root权限,主要为刷机、虚拟环境与PC模拟器。
通过刷机获取Root权限通常涉及到解锁bootloader、刷入含有Root权限的定制ROM,网上关于不同型号手机刷机的教程十分详细,大大降低了刷机门槛。
目前,常见方式是给设备刷入Magisk工具,它通过“systemless”方式运行,允许用户在不修改系统分区的情况下获得Root权限,并且支持在系统更新后继续维持Root状态。
Magisk工具操作界面
但由于刷机存在保修失效、系统不稳定等安全风险,相比之下,使用虚拟机、虚拟框架、模拟器等获取Root权限则更为安全与便捷。
虚拟机、虚拟框架可以在一台手机上模拟出多个安卓系统,模拟出的系统独立运行且可以按需灵活配置,可同时运行多个应用程序,并且自带Root权限,只需在界面开启即可。
Vmos虚拟机自带Root权限
此外,还有运行在PC端的安卓模拟器,可以在PC端模拟出多个安卓系统,并且也自带了Root权限开关,为外挂、破解提供了便利。
据观察,某些模拟器的特性也被利用,如MuMu模拟器,在开启/关闭Root权限时不需要重启,玩家可以先开启Root权限打开外挂,再关闭Root权限运行游戏,这样外挂得到了Root权限,而游戏方却检测不到Root环境。
MuMu模拟器开启/关闭Root权限不需要重启
在Root环境下,用户可以使用修改器搜索游戏的内存,并进行
篡改,如游戏内的货币数量、角色数据、关键道具等,或者使用逆向工具对游戏进行分析、篡改,制作游戏破解版、无广告版。
上述问题会破坏游戏公平性,导致正常玩家流失、厂商收益受损,甚至游戏生命周期缩短等严重后果。
而在安全对抗中,作弊者也想尽办法隐藏Root权限,来躲避游戏的安全检测。常见的手段为使用Magisk随机化包名且编辑新的应用名称并重新安装。
在多次重复隐藏Magisk应用操作后,我们发现不同次安装的随机包名的 Magisk Manager apk 包都是不一样的,不仅包名做了随机,连签名都做了变化。
包名随机化及重命名安装
Magisk还可以通过Shamiko模块实现全局隐藏Root权限。只需要安装模块、重启设备,即可将Root权限隐藏起来。
Shamiko模块开启状态如图
作弊者还可通过Magisk内的LSP框架,将游戏外挂、游戏修改器等应用添加到模板中设置为不可见,再将模板应用于游戏,实现了游戏运行过程中,隐藏外挂及修改器,来躲避安全检测。
Magisk将外挂设置为对游戏不可见
这样操作下来,设备的Root权限、Magisk应用、外挂等可能被检测的线索都被隐藏起来了,可以绕过大多数传统的检测手段。
针对游戏面临的Root权限作弊问题,FairGuard定制了一套独家解决方案,该方案已接入多款热门游戏并验证了出色的检测能力。
安全风险环境检测
不同于市面上其他产品,FairGuard加固采用更底层的检测手段,精准区分游戏运行环境,可识别Root、虚拟机、虚拟框架、云手机、越狱等各类风险环境,并提供个性化闪退策略。
Magisk专项检测
FairGuard独家检测方案,在 Magisk 所有隐藏选项全开的情况下,依旧可以精准识别并进行闪退等操作。
反内存修改
针对游戏面临的内存修改风险,FairGuard研发了行为检测方案,可对内存修改行为进行精准识别,通杀各类修改器外挂及其变种,做到有效防护。