一种应用程序安全评估的方法及装置制造方法
【专利摘要】本发明适用于智能终端【技术领域】,提供了一种应用程序安全评估的方法,所述方法包括:将待评估的应用程序放入沙箱系统中;将所述应用程序在安装时向所述沙箱系统请求的权限与预设权限列表进行匹配,得到第一评分;将所述应用程序在运行时向所述沙箱系统请求的权限与所述预设权限列表进行匹配,得到第二评分;综合所述第一评分和所述第二评分,得到所述应用程序的安全评估结果。本发明在沙箱系统中安装和运行待评估的应用程序,综合应用程序在安装阶段和运行阶段向沙箱系统请求的权限的安全评分,得到该应用程序的安全评估结果,提高了基于沙箱系统对应用程序进行安全评估的准确性。
【专利说明】一种应用程序安全评估的方法及装置
【技术领域】
[0001]本发明属于智能終端【技术领域】,尤其涉及一种应用程序安全评估的方法及装置。【背景技术】
[0002]Android系统因其开放性,允许任何设备厂商成为其开发者而得到迅速的发展,目前已成为主流的操作系统之一,被广泛应用于手机、平板电脑、电视和相机等设备上。对用户而言,最大的收益则是拥有丰富的基于Android系统的应用程序可供选择,但是Android应用程序的安全问题也日益暴露出来。
[0003]用户希望能够全面检测应用程序在安装阶段和运行阶段的安全性,但是检测的过程不能对操作系统产生破坏,沙箱系统通过虚拟化技术提供了这样的隔离环境。沙箱系统通过重定位技术把在其中安装和运行的应用程序生成和修改的文件定向到一个临时文件夹中,不会对原操作系统的文件和注册表等产生影响,关闭沙箱系统后,产生的临时文件也会随之消失,不会留在操作系统中。用户可以在沙箱系统中对应用程序进行安全评估后,认为该应用程序安全再在操作系统上做实际的安装和使用。
[0004]现有的基于沙箱系统对应用程序进行安全评估的方法是:在沙箱系统中大量地随机地模拟用户的操作,记录应用程序在运行阶段的行为或者行为的组合,并与由经验统计得到的恶意行为或者其组合进行对比,从而得到该应用程序的安全评估結果。由于应用程序的行为或者其组合产生的结果具有较大的不确定性,并且恶意程序可以通过改变其行为或者其组合来避开检测,容易造成评估结果不准确。
【发明内容】
[0005]本发明的目的在于提供一种应用程序安全评估的方法,g在提高基于沙箱系统对应用程序进行安全评估的准确性。
[0006]本发明是这样实现的,一种应用程序安全评估的方法,包括:
[0007]将待评估的应用程序放入沙箱系统中;
[0008]将所述应用程序在安装时向所述沙箱系统请求的权限与预设权限列表进行匹配,得到第一评分;
[0009]将所述应用程序在运行时向所述沙箱系统请求的权限与所述预设权限列表进行匹配,得到第二评分;
[0010]综合所述第一评分和所述第二评分,得到所述应用程序的安全评估結果。
[0011]本发明的另一目的在于提供一种应用程序安全评估的装置,包括:
[0012]放置単元,用于将待评估的应用程序放入沙箱系统中;
[0013]第一评分单元,用于将所述应用程序在安装时向所述沙箱系统请求的权限与预设权限列表进行匹配,得到第一评分;
[0014]第二评分单元,用于将所述应用程序在运行时向所述沙箱系统请求的权限与所述预设权限列表进行匹配,得到第二评分;[0015]综合单元,用于综合所述第一评分和所述第二评分,得到所述应用程序的安全评估結果。
[0016]在本发明中,在沙箱系统中安装和运行待评估的应用程序,综合应用程序在安装阶段和运行阶段向沙箱系统请求的权限的安全评分,得到该应用程序的安全评估结果,提高了基于沙箱系统对应用程序进行安全评估的准确性。
【专利附图】
【附图说明】
[0017]图1是本发明实施例提供的一种应用程序安全评估的方法的实现流程图;
[0018]图2是本发明实施例提供的一种应用程序安全评估的方法步骤S102的具体实现流程图;
[0019]图3是本发明实施例提供的一种应用程序安全评估的方法步骤S103的具体实现流程图;
[0020]图4是本发明实施例提供的一种应用程序安全评估的方法步骤S104的具体实现流程图;
[0021]图5是本发明实施例提供的一种应用程序安全评估的装置的结构框图。
【具体实施方式】
[0022]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进ー步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0023]在本发明实施例中,在沙箱系统中安装和运行待评估的应用程序,综合应用程序在安装阶段和运行阶段向沙箱系统请求的权限的安全评分,得到该应用程序的安全评估结果,提高了基于沙箱系统对应用程序进行安全评估的准确性。
[0024]需要说明的是,本发明实施例提供的一种应用程序安全评估的方法可以运行于Android系统、Linux系统、Windows系统等操作系统中,本发明实施例以Android系统进行说明,并不用于限定本发明。
[0025]图1示出了本发明实施例提供的一种应用程序安全评估的方法的实现流程,详述如下:
[0026]在步骤SlOl中,将待评估的应用程序放入沙箱系统中。
[0027]沙箱系统利用重定位技术为检测病毒或者评估应用程序安全性提供ー个环境,将其中的应用程序与原操作系统分隔开。在本发明实施例中,将待评估的Android应用程序放入沙箱系统中,将该Android应用程序与外界的Android系统分隔开,以使后续的安装和运行该应用程序的步骤不会对Android系统产生影响。
[0028]在步骤S102中,将所述应用程序在安装时向所述沙箱系统请求的权限与预设权限列表进行匹配,得到第一评分。
[0029]对于Android系统,应用程序无论是执行访问资源或者连接网络等操作,都需要声明其权限,否则将无法正常工作。例如,安装应用程序时,需要先声明该应用程序将会使用到的权限,如果声明的权限均被允许,该应用程序才可以安装到Android系统中。
[0030]Android系统的软件开发工具包(Software Development Kit, SDK)为开发者提供一套辅助开发的工具,其中定义了应用程序所有可能会使用到的权限,例如,android,permission.BLUETOOTH表示允许应用程序连接配对过的蓝牙设备。在本发明实施例中,统计已知的恶意程序使用的权限,根据统计结果从SDK中提取出26个权限形成预设权限列表,其中,每个权限还可以有其对应的标识号、类型、描述、在Android系统中的具体内容和分值等,表I示出了预设权限列表的部分内容:
[0031]表1
[0032]
【权利要求】
1.一种应用程序安全评估的方法,其特征在于,包括: 将待评估的应用程序放入沙箱系统中; 将所述应用程序在安装时向所述沙箱系统请求的权限与预设权限列表进行匹配,得到第一评分; 将所述应用程序在运行时向所述沙箱系统请求的权限与所述预设权限列表进行匹配,得到第二评分; 综合所述第一评分和所述第二评分,得到所述应用程序的安全评估結果。
2.如权利要求1所述的方法,其特征在于,所述将所述应用程序在安装时向所述沙箱系统请求的权限与预设权限列表进行匹配,得到第一评分包括: 在所述沙箱系统中安装所述应用程序,并从所述应用程序中提取配置文件,所述配置文件中包含所述应用程序在安装时向所述沙箱系统请求的权限的第一列表; 将所述第一列表中的权限逐个与所述预设权限列表中的权限进行匹配,并读取同时被包含于所述第一列表和所述预设权限列表中的权限对应的分值; 累加读取到的所述分值得到所述第一评分。
3.如权利要求1所述的方法,其特征在于,所述将所述应用程序在运行时向所述沙箱系统请求的权限与所述预设权限列表进行匹配,得到第二评分包括: 在所述沙箱系统中运 行所述应用程序,模拟用户的操作对所述应用程序进行多次随机测试; 统计在模拟过程中所述应用程序向所述沙箱系统请求的权限,形成多个第二列表;将每个所述第二列表中的权限分别逐个与所述预设权限列表中的权限进行匹配,并读取同时被包含于所述第二列表和所述预设权限列表中的权限对应的分值; 累加读取到的所述分值,并将累加结果对所述随机测试的次数求平均得到所述第二评分。
4.如权利要求2或者3任一项所述的方法,其特征在干, 所述预设权限列表中的权限对应的分值是根据所述权限在恶意应用程序中出现的频率和在安全应用程序中出现的频率计算得到。
5.如权利要求1所述的方法,其特征在于,所述综合所述第一评分和所述第二评分,得到所述应用程序的安全评估结果包括: 对所述第一评分和所述第二评分进行加权求和运算; 如果所述运算的结果大于预设分值,所述应用程序为不安全的应用程序。
6.如权利要求5所述的方法,其特征在干, 如果所述第一评分小于所述第二评分,所述第一评分的权值小于所述第二评分的权值; 如果所述第一评分大于所述第二评分,所述第一评分的权值大于所述第二评分的权值。
7.一种应用程序安全评估的装置,其特征在于,包括: 放置単元,用于将待评估的应用程序放入沙箱系统中; 第一评分单元,用于将所述应用程序在安装时向所述沙箱系统请求的权限与预设权限列表进行匹配,得到第一评分;第二评分单元,用于将所述应用程序在运行时向所述沙箱系统请求的权限与所述预设权限列表进行匹配,得到第二评分; 综合单元,用于综合所述第一评分和所述第二评分,得到所述应用程序的安全评估结果。
8.如权利要求7所述的装置,其特征在于,所述第一评分单元包括: 提取子単元,用于在所述沙箱系统中安装所述应用程序,并从所述应用程序中提取配置文件,所述配置文件中包含所述应用程序在安装时向所述沙箱系统请求的权限的第一列表; 第一匹配子単元,用于将所述第一列表中的权限逐个与所述预设权限列表中的权限进行匹配,并读取同时被包含于所述第一列表和所述预设权限列表中的权限对应的分值;第一累加子単元,用于累加读取到的所述分值得到所述第一评分。
9.如权利要求7所述的装置,其特征在于,所述第二评分单元包括: 测试子単元,用于在所述沙箱系统中运行所述应用程序,模拟用户的操作对所述应用程序进行多次随机测试; 统计子単元,用于统计在模拟过程中所述应用程序向所述沙箱系统请求的权限,形成多个第二列表; 第二匹配子単元,用于将每个所述第二列表中的权限分别逐个与所述预设权限列表中的权限进行匹配,并读取同时被包含于所述第二列表和所述预设权限列表中的权限对应的分值; 第二累加子単元,用于累加`读取到的所述分值,并将累加结果对所述随机测试的次数求平均得到所述第二评分。
10.如权利要求8或者9任一项所述的装置,其特征在干, 所述预设权限列表中的权限对应的分值是根据所述权限在恶意应用程序中出现的频率和在安全应用程序中出现的频率计算得到。
11.如权利要求7所述的装置,其特征在于,所述综合単元包括: 加权求和子単元,用于对所述第一评分和所述第二评分进行加权求和运算; 判断子単元,用于判断如果所述运算的结果大于预设分值,所述应用程序为不安全的应用程序。
12.如权利要求11所述的装置,其特征在干, 如果所述第一评分小于所述第二评分,所述第一评分的权值小于所述第二评分的权值; 如果所述第一评分大于所述第二评分,所述第一评分的权值大于所述第二评分的权值。
【文档编号】G06F21/56GK103440456SQ201310404757
【公开日】2013年12月11日 申请日期:2013年9月6日 优先权日:2013年9月6日
【发明者】刘亘轶 申请人:Tcl集团股份有限公司