网易易盾移动安全专家谈APP运营安全上的六大潜在风险

只要是和计算机网络技术有关的领域,基本都会受到来自「外挂」程序带来的诸多困扰。在游戏行业中「外挂」是从业者们挥之不去的噩梦,而在软件行业中「外挂」同样给企业的软件生态和运营秩序带来破坏,造成企业的巨额损失。

哪怕是微信,也无法避免「外挂」带来的负面影响。


在去年这篇由微信安全中心发布的公告中,不难看到微信对外挂程序的严厉态度。公告中被点名的“Xposed”、“substrate”框架,是黑客破解者制作外挂的利器。破解者依靠这些框架可以方便地编写插件,比如风靡一时的微信抢红包插件。

前两天,微信又一次进行了一次大型反外挂封号行动,大批个人微信号被封。惨遭封禁的微信号,收到的通知几乎都是“因使用了微信外挂、非官方客户端或模拟器,被临时限制登录,请尽快卸载对应的非法软件。”


外挂软件不仅破坏了微信平台的生态平衡和正常运营,还为恶意营销行为提供了便利条件,对正常用户造成骚扰。这些层不出穷的外挂,给微信的生态平衡和运营安全造成很大的负面影响,因此微信会痛下杀手展开“严打”

在一款APP上线运营期间,随着用户量的增长和应用场景的扩展,会遇到各种各样的挑战,微信所遭遇的恶意插件只是其中一种,其他厂商也可能会遇到类似的困扰,那么一般来说APP可能会遇到哪些运营安全问题呢?

网易易盾移动安全专家Bin为大家总结了以下六大潜在风险:

1.破解、二次打包类风险

在Android安全中,APK包被分析破解并二次打包的情况较为常见。破解者通过逆向分析APP中的逻辑,篡改Smali代码,实现去除应用使用上限制等外挂功能:

(1)破解VIP\会员\付费逻辑判断,达到使用VIP\会员\付费效果;

(2)UI优化,去广告等;

(3)组件优化,比如去掉自动更新服务组件;

(4)AMS HOOK绕过签名校验;

一般来说,有付费资源或者VIP、会员权限限制的APP都可能面临上述风险。

2.xposed插件、Cydia substrate注入类风险

这种就是令微信等APP最头痛的恶意插件风险,破解者通过插件框架的辅助,实现功能修改、UI篡改、去会员限制、免广告、付费资源免费使用等外挂插件。一般插件使用者有以下几种组合的情况:

(1)Root机型+xposed插件框架;

(2)虚拟多开软件+xposed插件;

(3)太极+xposed插件;

(4)magisk+xposed插件;

其中多开、太极、magisk都可以免Root实现使用xposed框架,进一步降低了插件使用门槛,而且在一定程度上提高了检测的难度。

3.模拟点击类外挂风险

模拟点击类外挂主要用于实现一些自动化抢单、刷单、薅羊毛等套利操作,有以下几种形式的外挂:

(1)按键精灵、叉叉助手等自动点击脚本软件;

(2)依赖类似UIAutomator测试框架的自动点击脚本;

(3)AccessibilityService辅助类;

(4)物理外设;

比如某些出行类司机端APP,持续的面临抢单外挂的问题,有些司机为了提高抢单效率,会购买使用模拟点击外挂进行抢单。据说某外设抢单类外挂的黑产开发者,一个月收入可达数十万元,巨大的利润空间使一些不法破解者盯上这块黑灰产领域,破解利用APP端的业务漏洞。由于这些外挂的影响,导致其他司机抢不到单,影响了平台的公平竞争坏境。

4.群控类外挂风险

群控类外挂一般为通过模拟器、群控、云手机等形式,控制多台真机(或虚机),用于批量刷单、刷量、抢优惠券等套利操作。比如拼多多、星巴克APP的薅羊毛事件,这些所谓的羊毛党其实已经形成了有组织有分工的地下产业链。上游卡商+中游接码平台+下游套利团伙。APP为了拉新推出的一些优惠营销活动,经常被黑灰产从业者利用,给企业造成营销费用的损失。

5.分身多开类外挂风险

分身多开类外挂可以使应用在同一台手机上有多个“副本”,应用被克隆运行于多开类软件的空间中。由于多开软件接管了目标应用的启动流程,所以具有不弱于Root的权限,可方便有效介入应用运行流程。多开类外挂结合一些破解工具可被用于比如虚拟定位、免ROOT HOOK、模拟点击等场景下。

(1)虚拟多开+虚拟定位,主要用于黑灰产营销,常用于社交类软件;

(2)虚拟多开+xposed插件,免ROOT HOOK;

(3)虚拟多开+自动点击工具;

6.改机类外挂风险

改机类外挂能够修改包括手机型号、串码、IMEI、GPS定位、MAC地址、无线名称、手机号等在内的设备信息,通过不断刷新伪造设备指纹,可以达成欺骗厂商设备检测的目的,使一部手机可以虚拟裂变为多部手机,极大地降低了黑灰产在移动端设备上的成本。进而可以实现批量注册账号、地理位置欺骗、刷赞、刷分享、刷评分和刷榜等操作,影响APP的正常运营秩序。

众所周知,市面上有很多移动安全厂商推出了应用加固方案,在APP上线阶段做应用加固,避免原版APP被静态逆向破解,那么使用传统的应用加固方案是否可以解决上述列举的这些运营安全问题呢? 

传统的应用加固方案可以解决APK文件的破解类风险,但是不能感知外部环境的安全威胁并做到及时响应。目前市面上的加固方案大多是单独的APK壳,而破解者一旦脱壳,或者带壳跟踪分析程序的业务逻辑,即可绕过壳做出外挂,这样就可以在不改动APK包体的情况下,影响APP的执行流程。比如抢单刷单类外挂,不需要了解APP的代码逻辑,只需要找到关键控件写自动点击脚本即可。传统的应用加固方案,在端上不能随着手机使用坏境的变化有效地应对风险,所以感知和应对外部环境威胁上的能力是远远不足的。

面对App运营期间的各种外挂的威胁,开发者亟需一套完整的反外挂体系来应对。针对这一现状,网易易盾在业界率先推出了应用加固+坏境风险感知+主动防御的第六代App保护方案,以客户端高强度加固为基础架构,配合坏境风险感知埋点,将运营期间的威胁违规数据取证上传到后台,制定规则策略主动防御,持续地对抗黑灰产,有效降低运营阶段的安全风险。该保护方案利用了网易易盾在游戏反外挂领域多年的经验,基于第五代壳的基础进一步迭代研发,能有效地解决应用运营期间的安全威胁,包括并不限于以下功能:Xposed插件外挂反制、虚拟多开\分身识别、自动点击外挂检测、HOOK\注入检测、模拟器\群控外挂检测、APK文件防篡改、防二次打包、电子取证、盗版识别等功能。

相关阅读:

手游安全真正应该关注什么?

如何提升Unity手游安全性?

如何提升手游APK加固强度? 

iOS游戏的破解及防护