The invention provides a method for inferring Android application Activity in operation. The utility model mainly solves the problems that the prior art needs to apply the dangerous authority and the inference rate is low on the mobile terminal. The method comprises the following steps: 1) extracting all the Activity application name; 2) by sharing the changes in the size of the memory process, the application of inference Activity conversion events; 3) to determine the Activity characteristics of information marker; 4) according to the characteristics of Activity channel application runtime markers used information to establish the Activity signature database application; 5) according to the signature database inference applications running Activity interface. The invention does not need to apply any dangerous authority, avoids the existing security check mechanism, improves the accuracy of the Activity inference of the mobile terminal, and can be used for the security analysis of the Android application.
【技术实现步骤摘要】
安卓应用运行时的Activity推断方法
本专利技术属于移动终端安全领域,更进一步涉及一种前台应用运行时Activity推断方法,可用于对安卓应用的安全分析。
技术介绍
推断前台应用运行时Activity的研究源于移动终端应用的边信道攻击研究工作,其特点是利用应用运行时所暴露的进程信息,分析进程信息的变化和Activity转换时的关系,收集Activity转换时进程信息并建立应用Activity转换的签名,在应用运行时收集前台进程信息并与所建立的数据库进行对比推断前台应用Activity。目前,前台应用Activity的推断基本都需要向系统申请各种危险权限,而这种方式是很容易被安全程序所检测的,并且Activity推断可以作为Activity劫持攻击、用户隐私窃取方面的基础。阿里巴巴集团控股有限公司在其申请的专利“一种Android系统Activity劫持风险检测方法及装置”(专利申请号201310195684.0,公开号CN104182686A)中公开了一种Android系统Activity劫持风险检测方法及装置。该方法包括在目标Activity进入激活状态之前,获取当前处于激活状态的Activity的特征信息;根据所获取的特征信息,判断所述当前处于激活状态的Activity是否符合预设的安全特征;如果否,则确定系统存在Activity劫持风险。上述方案可以在不改变Android系统运行机制的前提下,直接通过扩展系统函数的方式实现,不仅实现简单,而且通用性强。SumanJanaandVitalyShmatikov在其发表的论文“Memento:Learn ...
【技术保护点】
安卓应用运行时的Activity推断方法,包括:(1)提取应用的所有Activity名称:对所选取的安卓应用使用ApkTools进行反编译得到AndroidManifest.xml文件,然后通过定制脚本从该文件中提取应用的所有Activity名称;(2)推断Android应用运行时的Activity转换活动:通过监测应用进程的/proc/<pid>/statm文件计算共享内存的大小变化,即应用进程所占虚拟内存空间减去私有虚拟内存空间,推断应用的Activity转换事件;(3)确定标记应用的Activity特征信息:(3a)根据内存大小变化标记Activity转换的ContentProvider查询和释放事件;(3b)通过监测CPU的使用时间,区分Activity转换的不同类型;(3c)将应用接收数据包的大小作为标记Activity转换的网络活动;(4)根据应用运行时标记应用的Activity特征信息,建立应用的Activity签名数据库:(5)推断应用运行的Activity界面:(5a)从正在运行的应用中提取特征数据Sm、Sn、Sc,其中Sm表示内存特征数据集合Sn表示网络 ...
【技术特征摘要】
1.安卓应用运行时的Activity推断方法,包括:(1)提取应用的所有Activity名称:对所选取的安卓应用使用ApkTools进行反编译得到AndroidManifest.xml文件,然后通过定制脚本从该文件中提取应用的所有Activity名称;(2)推断Android应用运行时的Activity转换活动:通过监测应用进程的/proc/<pid>/statm文件计算共享内存的大小变化,即应用进程所占虚拟内存空间减去私有虚拟内存空间,推断应用的Activity转换事件;(3)确定标记应用的Activity特征信息:(3a)根据内存大小变化标记Activity转换的ContentProvider查询和释放事件;(3b)通过监测CPU的使用时间,区分Activity转换的不同类型;(3c)将应用接收数据包的大小作为标记Activity转换的网络活动;(4)根据应用运行时标记应用的Activity特征信息,建立应用的Activity签名数据库:(5)推断应用运行的Activity界面:(5a)从正在运行的应用中提取特征数据Sm、Sn、Sc,其中Sm表示内存特征数据集合Sn表示网络特征数据集合,Sc表示CPU使用时间特征数据集合;(5b)对建立的Activity数据库中每个文件分别计算每个特征的相似性系数,然后,以各特征的相似性系数的乘积作为运行中应用Activity数据库中Activity相似性度量值,并将该值以(Sign,Sigc)集合的格式添加到数据集R中,其中Sign表示数据库中Activity的名称,Sigc表示Sign与运行中应用Activity的相似性度量值;(5c)对数据集R中的集合,按Sigc的值进行由大到小的排序,选取前5个作为推断的Activity。2.根据权利要求1所述的方法...
【专利技术属性】
技术研发人员:杨力,张冬冬,王利军,田亚平,王小琴,韦腾,
申请(专利权)人:西安电子科技大学,
类型:发明
国别省市:陕西,61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。