随着智能手机的全面普及,如今无论iOS还Android,都在很早之前就已经开始为残障人士提供无障碍支持,例如iOS有VoiceOver(旁白)功能、Android有TalkBack功能,也就是大家所俗称的辅助功能。借助这些功能,残障人士也得以与普通用户一样感受到智能手机的魅力。然而在过去的这些年里,辅助功能逐渐偏离了初衷,甚至有被滥用的趋势。

谷歌对安卓贡献度(谷歌将严控安卓的辅助功能)(1)

日前有消息显示,基于安全考虑,谷歌方面将在Android 13上严格限制辅助功能(Accessibility)的使用,将不允许从未经验证的外部来源APP使用Accessibility API。对此,谷歌在声明中表示,Android 13的新限制将不允许用户在这类应用受到限制时,手动启用特定应用的访问权限,如果用户仍选择授予这一权限,系统则将会显示一条错误消息,并提示 “为了您的安全,此设置当前不可用”。

谷歌对安卓贡献度(谷歌将严控安卓的辅助功能)(2)

事实上,这并非谷歌方面首次针对辅助功能进行治理。早在2017年时,谷歌就曾向Android开发者发送邮件称,如果APP需要使用辅助功能,就必须对权限进行严格的控制,除非开发者能够明确描述使用辅助功能服务或Accessibility API的目的,否则将拒绝其使用该接口的请求,并将开发者的APP从Google Play中移除。但最终由于大量开发者的反对,2017年年末谷歌宣布暂停清理Google Play中滥用辅助功能的APP。

为什么辅助功能成为谷歌在Android 13上要重点整治的功能呢?因为这一功能实在太重要,以至于滥用该功能及相关API会对Android生态的安全稳定,造成极其严重的影响。由于部分用户由于自身原因致使他们不能看完整的屏幕或使用触屏,辅助功能主要是为了这些残障人士服务,其核心的AccessibilityService(无障碍服务)就是为了实现APP读取屏幕内容,并代替用户执行输入而存在,其可以实现包括模拟用户点击某个选项、模拟长按某个选项、模拟滑屏以及语音控制等等。

谷歌对安卓贡献度(谷歌将严控安卓的辅助功能)(3)

无障碍服务之所以可以实现这些功能,原因就是它是一个系统级服务、并完全由系统管理,其运行在后台并、且能收到由系统发出的绝大多数事件,比如通知状态、按钮被点击等等,整个系统界面中产生的任何变化都会由系统通知给AccessibilityService。

简单来说,无障碍服务就像一个监视器,可以监控并捕捉用户的行为,然后执行相关的指令。例如TalkBack功能就是通过感知用户点击屏幕后,通过TTS(文本到语音)读出用户手指触摸位置的内容。

因为辅助功能如此强大,所以就有脑洞大开的开发者发现,借助这一功能可以实现除了帮助残障人士之外的其他功能。例如专门用来过滤APP开屏广告的“李跳跳”,这款APP就是利用无障碍服务来检索手机的活动窗口,模拟用户点击屏幕上的“跳过”按钮来实现自动跳过广告。

同理,还有近年来被腾讯告上法庭的自动抢红包软件,同样也都是通过上在Android 4.3中引入的通知监听服务,监听通知的新增和删除以及通知的内容,然后模拟用户打开微信再抢红包的操作。

谷歌对安卓贡献度(谷歌将严控安卓的辅助功能)(4)

而在更久远之前,无障碍服务被绿色守护的开发者用来实现批量强停功能,也就是这款应用通过后台运行的辅助功能,帮助用户模拟点击打开应用详情页,然后再一个个点击强行停止,但在前台的使用则完全不受影响。又或者说,早期豌豆荚更是推出过开启“服务”后,就能实现“免ROOT自动装”的功能,即所谓的静默安装,这其实同样也需要用辅助功能来实现模拟点击操作,在后台模拟点击“下一步”的行为。抑或知名密码管理器Lastpass,就需要利用辅助功能来帮助用户自动填充表单,以免去用户手动填写密码的繁琐。

谷歌对安卓贡献度(谷歌将严控安卓的辅助功能)(5)

没错,由于辅助功能在开启后能够模拟用户点击和滑动操作的特点,就被许多开发者利用起来,去做超过谷歌原先规划的功能。不止如此,由于开启无障碍服务后,将能够监听整个系统的运行,会赋予APP完全控制手机的权限,几乎可以实现为所欲为,以至于几乎所有Android机型在开启这一权限时,都需要用户输入账号密码,以进行额外的身份认证。

谷歌对安卓贡献度(谷歌将严控安卓的辅助功能)(6)

谷歌与手机厂商对于辅助功能的权限如此看中,是因为用户可以用眼睛能看到的文字、获得辅助功能授权的APP都能看到,用户能看到通知栏的微信聊天、银行转账信息,这些APP其实也可以。

在去年11月时就有相关网络安全人士曝光了一个名为“SharkBot”的Android木马,就是利用Android设备上辅助功能的缺陷,来窃取银行和加密货币应用中的资金。通过这个木马,攻击者可以通过滥用无障碍服务获取诸多敏感信息,还可以在受感染的设备上自动填充网银APP中的字段,来绕过了这些APP设置的双因素身份验证机制。

谷歌对安卓贡献度(谷歌将严控安卓的辅助功能)(7)

现在的情况就是,辅助功能因为需要满足残障人士无障碍使用手机的需求,导致谷歌必须给予该功能极高的权限,来让应用帮助这些用户,但这种极为敏感的权限被滥用的后果极其严重却又无法取消。所以最终谷歌方面就只能用严格规范的方式,来限制开发者使用这一权限的能力。

而对于普通用户来说,如果你并不是“玩机党”或是对手机有所了解,我们建议最好还是不要打开无障碍服务为妙。

,