“指纹劫持”漏洞可操控Android手机
近日,研究人员探索了指纹劫持,这是一种基于用户界面的攻击,其目标是扫描进入Android应用的指纹。许多现代智能手机都有指纹扫描仪来授权设备访问并启用帐户登录,付款授权和其他操作。扫描仪旨在进行安全身份验证,但研究人员正在寻找操纵其以获取恶意收益的新方法。国际知名白帽黑客、东方联盟创始人郭盛华在一次演讲中,解释了他发现一种启用“指纹劫持”的策略时如何在手机钱包应用程序中寻找错误,“指纹劫持”是一种针对用户界面的基于Android应用程序中指纹的攻击。他说,该术语源于点击劫持,因为这种类型的攻击将恶意应用程序界面隐藏在伪造的掩护下。
东方联盟创始人郭盛华通过演示在运行Android 10的设备上,他打开了Magisk应用程序,该应用程序可以控制具有root用户访问权限的设备上的应用程序。然后,他启动了一个简单的日记应用程序;查看时,出现了锁屏界面。使用指纹来解锁设备,并将用户引导回日记应用程序。但是,重新打开Magisk应用程序时,他显示日记应用程序现在在设备上具有root用户访问权限。郭盛华说:“我们的观察是,我们的动机是,如今人们到处都使用他们的指纹,尤其是在移动设备上,以达到不同的目的。” 例如,指纹用于打开应用程序,授权汇款并启用无数其他敏感的移动过程。他补充说:“该攻击的目标是诱使用户授权某些危险行为,而不会引起注意。” 研究人员发现了五种新的攻击技术,所有这些技术都可以从零许可的恶意Android应用程序启动。有些可以绕过Android 9中引入的对策,一种对所有与指纹API集成的应用程序有效。
在Android的活动生命周期中,在任何给定时间只能有一个活动处于“正在运行”状态。如果某个活动不在前台,则它必须已暂停,但如果仍然可见,则可能尚未停止。通常,当应用执行指纹授权时,它会启动一个包含指纹身份验证功能的新活动。指纹活动会经历创建,启动和恢复的正常活动阶段,然后在后台暂停。对于攻击者来说,重要的问题是,当另一个应用程序处于前台时,指纹活动是否可以继续监听指纹输入。Android可以缓解此类活动。但是,研究小组发现了几种绕过此方法的方法。
攻击的工作方式如下:东方联盟研究人员认为受害设备已安装了恶意应用程序;这会伪装成良性应用程序。攻击设置完成后,此恶意应用程序可以在目标应用程序中启动指纹认证,并使用视觉内容诱使受害者输入其指纹。这些被发送到后台应用程序,并用于授权其他屏幕。哪种攻击设置可以启用此功能?郭盛华说:“为此,我们需要考虑不同的应用程序的实现模式和不同的Android OS版本。理想情况下,攻击者希望恶意应用在安装或运行时均不需要权限。应用程序在后台收听指纹输入的能力取决于Android的版本。他说,如果目标手机运行的是Android 7或Android 8,则应用通常可以监听指纹输入。在Android 9之前,没有系统级保护,因此应用程序需要自己阻止后台指纹输入。” (欢迎转载分享)