一种android应用程序恶意性的静态检测方法
【技术领域】
[0001 ] 本发明属于Android平台下应用程序安全性检测技术领域,涉及一种android应用 程序恶意性的静态检测方法。
【背景技术】
[0002] 现代快速的生活工作节奏,使得人们对能够从网络上获取实时的信息和服务有了 更高的要求,移动互联网应运而生。移动互联网的安全问题直接影响到用户使用和对移动 互联网的信任,更关系到移动互联网产能的释放以及正面价值的正常发挥,更涉及到我们 国家以及整个民族信息的安全产业。所以在这个信息化时代我们要时刻关注着移动互联网 安全的新特性,了解最详细的移动互联网安全动态,时刻掌握和及时处理因移动互联网安 全问题引发的一系列矛盾。要不断的改进和完善移动互联网安全的整体架构以及为防止安 全问题出现所做的部署,分析和监控移动互联网时刻出现的流量恶意攻击,散播的不健康 不科学的信息。经过不断的技术革新、安全设计改进、移动互联网安全部署等措施来确保移 动互联网的安全,并委派专人实时监控,以及采用内容信息过滤等技术手段,来保证移动互 联网的安全,确保给移动互联网带来一个干净健康的发展环境。借助于移动互联网的发展, 现在用手机就可以做到以前必须使用电脑才可做到的事情,使得人们对智能手机需求有了 极大的提升。移动互联网安全中Android的安全通信问题也越来越受关注,2007年11月, Google发布了基于Linux内核的开源智能移动操作系统Android。该系统拥有庞大的用户数 量和应用市场:来自Gartner统计数据显示,2013年第3季度全球智能手机的销售量为2.5亿 多台,其中Android系统占据了81.9% ;而截止2014年1月8日仅Android官方应用市场 GooglePlay上的应用数量就达到了103万。
[0003] 有数据显示,在2011年人们使用智能手机的比例还比较低,到2012年使用智能手 机的比例就达到了46%。根据HIS统计的信息显示,预计在2013年智能手机在市场中所占的 份额将达到55%,这些数据表明智能手机在正在改变着人们日常生活方式,成为很多人生 活和工作的得力助手。
[0004]智能手机功能不断的完善和发展,为人们日常生活带来很多的便利,但同时也成 为各种手机病毒及恶意软件攻击的主要目标。智能手机的快速发展,针对智能手机的病毒 也以大比例的数量增长。第一个智能手机病毒Cabir诞生于NOKIA大本营,经过短短几年的 发展,针对智能终端的病毒便出现了上千种。当前主流的智能手机操作系统有:Symbian 0S,苹果的iOS,微软的Windowsphone,Google的Android。每个系统都有一套自身的安全防 范措施,由于人们对手机隐私信息安全的重视,分析已有的智能手机操作系统安全规范,提 高智能手机系统防范病毒行为成为了研究的重点。
【发明内容】
[0005]有鉴于此,本发明的目的在于提供一种android应用程序恶意性的静态检测方法, 该方法首先通过计算偏相关系数对Android应用程序权限特征属性进行相关性分析,达到 对权限特征集进行降维预处理的目的;其次利用互信息和笛卡尔积方法,对降维后的权限 特征集进行相关性聚类去冗余,并设定阈值,避免过拟合的现象,以此得到新的分类权限特 征集的集合Xnew,达到权限聚类后的权限特征集之间几乎是相互独立关系的目的;最后,在 权限聚类后的基础上,构建朴素贝叶斯分类器,并对其进行改进,达到能使应用程序分类决 策相关性尚,进而提尚Android应用程序恶意性检测的可罪性。
[0006]为达到上述目的,本发明提供如下技术方案:
[0007] -种android应用程序恶意性的静态检测方法,在该方法中,对选定的样本程序进 行反编译得到4]1(11'〇1(11^1111€6 81:.11]11文件,提取该文件的权限特征,并对其进行降维预处 理,然后对降维后的权限特征集用互信息和笛卡尔积方法进行权限聚类去冗余,最后在此 基础上构建朴素贝叶斯分类模型,以及对所检测到的恶意性应用程序进行恶意性等级的划 分。
[0008] 进一步,该方法具体包括以下步骤:
[0009] 步骤一:收取并创建恶意性应用程序和非恶意性应用程序的样本库,分别对其APK 样本进行反编译处理得到AndroidManifest.xml文件,然后提取该文件的权限特征,获得权 限特征集;
[0010]步骤二:利用Android权限特征属性变量之间的相关性关系,其中任意两个变量之 间的相关性可能是由于第三个变量的存在所表现出来的,对此采用基于偏相关系数对权限 特征属性进行相关性分析的方法,对权限特征集进行降维预处理;
[0011]步骤三:利用基于互信息理论和笛卡尔积方法,采用基于互信息和笛卡尔积的改 进的朴素贝叶斯分类模型方法,对权限特征集降维预处理后获取的权限特征集进行聚类去 冗余;
[0012] 步骤四:基于分类属性集的集合Xnew构建朴素贝叶斯分类器,通过样本训练获得先 验概率,然后用测试集样本通过计算后验概率判断所检测的Android应用程序是否具有恶 意性,对具有恶意性的Android应用程序按概率方法进行等级划分。
[0013] 进一步,在步骤二中,所述基于偏相关系数对权限特征属性进行相关性分析的方 法具体包括:
[0014 ]该方法首先通过计算两个权限特征属性变量之间的简单相关系数
中Cov(Xi,Xj)是Xi与Xj之间的协方差
EXi与Xj之间的标准 差,将计算所得的简单相关系数做成相关系数矩阵R,计算|R|行列式中3,阳,印的代数余 子忒Aii,Aij ,Ajj,然后带入特征叔限属性变量之间的偏相关系数
r式进行计算,根据得到的偏相关系数IP 的值判断权限特征属性之间的相关性大小,去除相关性低的权限特征属性,得到降维预处 理后的权限特征集。
[0015]进一步,在步骤三中,利用基于互信息理论和笛卡尔积方法,采用基于互信息和笛 卡尔积的改进的朴素贝叶斯分类模型方法,对权限特征集降维预处理后获取的权限特征集 进行聚类去冗余,聚类去冗余模型如下:
[0016]
[0017]
[0018]其中Cor(Xi,C)表示权限特征属性变量Xi和类别属性变量C之间的相关度,Cor(Xi, Xj)表示权限特征属性变量XdPh之间的相关度,计算方式如下:
[0019] 1)计算预处理后权限特征属性变量Xi与类别变量C的相关度Cor(Xi,C),按从大到 小的顺序排列构成原始属性集Χ-ori;
[0020] 2)计算X-ori中的第一个属性变量X-ori(l)与其它属性变量的相关度Cor(X_ori (l),Xj);
[0021] 3)对X-ori中除X-ori(1)之外的其它变量Xj,若Cor(X-ori(1),Xj) >Cor(Xj,C),则 认为该变量与X-〇ri(1)高度相关,将其加入X-ori(1)的相关集中;
[0022] 4)X_ori(l)及其相关集中的前m个变量的笛卡尔积Xnewl作为新属性集加入Xnew,同 时从X-ori中删除X-ori(1)及其相关集中的所有变量;
[0023] 5)重复2)至4),直到龙-〇ri=0为止。
[0024]进一步,在步骤四中,基于分类属性集的集合Xnew构建朴素贝叶斯分类器,通过样 本训练获得先验概率,然后用测试集样本通过计算后验概率判断所检测的Android应用程 序是否具有恶意性,基于权限分类属性集的集合Xne3W和类别C构建朴素贝叶斯的模型如下:
[0025]
[0026]其中,
unt(Xk|Ci)表示在类别Ci样本中权限特征属性Xk出 现的次数,count(Xk)表示样本中权限