Android系统新漏洞:允许恶意软件绕过应用程序签名

Google的2017年12月份Android系统安全公告显示,Android系统现有一个漏洞,该漏洞允许恶意攻击者绕过应用程序的签名,并将恶意代码植入Android应用程序。

移动安全公司GuardSquare的研究团队发现,该漏洞驻留在Android系统用于读取应用程序签名的机制中。

GuardSquare的研究人员表示,Android系统会在APK或DEX文件的各个位置少量检查字节,以验证文件的完整性,对于APK和DEX文件来讲,这些字节的位置是不同的。研究人员发现,他们可以在APK中注入一个DEX文件,而Android系统仍会认为它正在读取的是原始的APK文件。

之所以会发生这种情况,是因为DEX的插入过程不过改变Android系统将要检查的用于验证文件完整性的字节,而且文件的签名也不会改变。

在现实中,这个漏洞(GuardSquare将其命名为Janus)将允许攻击者在有效的Android应用程序更新(APK文件)中注入恶意的DEX文件。

此外,由于更新后的应用程序继承了原始的应用程序的权限,因此,通过这种方法侵入你的Android手机的恶意程序可以冒充合法的应用程序轻松地获得非常敏感的访问权限。

Janus攻击的唯一不足之处在于,它不能通过由Google Play商店分发的更新感染到你的Android设备,要让用户中招,恶意攻击者只能诱骗用户访问第三方应用商店,并诱使用户安装遭受过感染的应用程序的更新以代替合法的应用程序。

GuardSquare表示,Janus漏洞只影响采用V1签名方案的应用程序,采用V2签名方案的应用程序不受影响。另外,Janus漏洞仅影响运行Android 5.0及更高版本Android系统的设备。

受支持的Nexus和Pixel设备的用户将很快收到用于修复此漏洞的安全更新,由OEM制造的Android设备何时修复此漏洞,则要看OEM的安排和计划。