哈尔滨现代公共关系职业学院
 
当前位置: 首页 > 学习交流

“核弹”级Janus漏洞:修改安卓app而不影响签名

时间:2017年12月12日 10:03   浏览:266   来源:哈尔滨现代公共关系职业学院


原标题:“核弹”级Janus漏洞:修改安卓app而不影响签名

前言

自诞生以来,Android就要求开发者对应用进行签名。在应用进行更新时,只有更新包的签名与现有的app的签名一致的情况下,Android运行时才允许更新包安装到系统。若app被恶意的攻击者修改,重新打包签名,由于攻击者无法获得原始开发者的私钥,其重打包的签名与原始签名不一致,系统会拒绝安装此更新。这样可以保证每次的更新一定来自原始的开发者。然而Google在本月4日发布的Android安全公告中提到一个Android的漏洞,利用该漏洞的攻击者可修改app而不影响其原始签名。

该漏洞产生的根源在于:一个文件可以同时是APK文件和DEX文件。由于这种同时为APK文件和DEX文件的二元性,联想到罗马的二元之神Janus,将该漏洞命名为:Janus漏洞。

Janus漏洞原理

如图:

攻击者可以利用这种二元性(Janus漏洞),将一个恶意的DEX文件与原始APK文件进行拼接,从而不影响APK文件的签名。Android运行时就可以将该带有恶意DEX文件的APK文件看作是之前app的合法的升级版,允许这种安装,然后从DEX的头部开始执行!而这里的DEX就可以是任意的符合DEX格式的文件了,可以带有攻击者的恶意代码。如果被“升级”的app是一个具有高权限的app,比如系统应用,那么该恶意应用可继承其高权限,访问系统的敏感信息,甚至完全接管系统!

影响范围

该漏洞仅影响基于 JAR 签名的方案(v1 方案)。不影响自Android 7.0 以来引入的 APK 签名方案 v2(v2 方案)。

参考

http://www.androidpolice.com/2017/12/08/janus-vulnerability-allows-attackers-modify-apks-without-changing-signature-apkmirror-already-protected/

https://source.android.com/security/apksigning/

原文地址:https://www.guardsquare.com/en/blog/new-android-vulnerability-allows-attackers-modify-apps-without-affecting-their-signatures

阿里聚安全

阿里聚安全(http://jaq.alibaba.com)由阿里巴巴安全部出品,面向企业和开发者提供互联网业务安全解决方案,全面覆盖移动安全、数据风控、内容安全、实人认证等维度,并在业界率先提出“以业务为中心的安全”,赋能生态,与行业共享阿里巴巴集团多年沉淀的专业安全能力。

返回搜狐,查看更多

责任编辑:


分享到:

 
相关资讯