一种Android应用程序的安全检测方法及系统技术方案

技术编号:7975020 阅读:191 留言:0更新日期:2012-11-15 23:23
本申请提供了一种Android应用程序的安全检测方法及系统,以解决现有的Android平台的杀毒方法扫描速度慢、误报率高的问题。所述方法包括:扫描Android安装包,并从所述Android安装包中提取出指定的特征信息;在预置的安全识别库中查找与指定的单个特征信息或其组合相匹配的特征记录;其中,所述安全识别库中包含特征记录及特征记录对应的安全级别,每条特征记录中包含单个特征信息或特征信息的组合;将查找到的特征记录对应的安全级别包含在所述Android安装包的安全检测结果中显示。本申请扫描速度快、查杀准确率高。

【技术实现步骤摘要】

本申请涉及软件安全
,特别是涉及一种Android应用程序的安全检测方法及系统
技术介绍
Android是一种以Linux为基础的开放源码操作系统,主要使用于手机等移动终端,目前尚未有统一中文名称。Android平台由操作系统、中间件、用户界面和应用软件组成,Android应用程序即指Android平台下的应用软件。随着Android智能手机的普及,逐渐形成了一条针对Android系统的恶意软件的产业链。这些恶意软件通常伪装成正常的应用软件或者游戏欺骗用户安装,一旦进入用户手机,就在后台悄悄定制SP服务或拨打付费电话吸取用户话费,或者收集用户的隐私,或 者窃取用户的网银和第三方支付密码以实施进一步的盗窃。据统计,目前已有超过8000种Android恶意软件,超过500万部Android手机遭到了感染。针对这些众多的Android恶意软件,各个致力于软件杀毒的公司相继推出了Android平台的杀毒软件。但是,它们的杀毒引擎主要移植自PC上的杀毒引擎,采用传统PC杀毒的思路,按照文件进行查杀,甚至对在Android手机上根本无法运行的文件都会进行扫描,导致扫描速度慢、扫描效率低的问题;而且,扫描算法采用提取文件片段计算CRC (Cyclic Redundancy Check,循环冗余校验码)和 MD5 (Message Digest Algorithm,消息摘要算法第五版)再在本地数据库中查找的方法,通用性不高,容易导致误报,误报率较闻。
技术实现思路
本申请提供了一种Android应用程序的安全检测方法及系统,以解决现有的Android平台的杀毒方法扫描速度慢、误报率高的问题。为了解决上述问题,本申请公开了一种Android应用程序的安全检测方法,包括扫描Android安装包,并从所述Android安装包中提取出指定的特征信息;在预置的安全识别库中查找与指定的单个特征信息或其组合相匹配的特征记录;其中,所述安全识别库中包含特征记录及特征记录对应的安全级别,每条特征记录中包含单个特征信息或特征信息的组合;将查找到的特征记录对应的安全级别包含在所述Android安装包的安全检测结果中显示。优选地,所述从Android安装包中提取出的指定的特征信息包括以下中的一种或几种组合Android安装包的包名,版本号,数字签名,Android组件receiver的特征,Android组件service的特征,Android组件activity的特征,可执行文件中的指令或字符串,Android安装包目录下各文件的MD5值;其中,所述可执行文件包括Dex文件,和/或,ELF文件;所述Dex文件包括classes, dex文件,扩展名为.jar的文件,以及,Dex格式的文件。优选地,所述安全识别库中的特征信息包括以下中的一种或几种组合各种样本Android安装包的包名,版本号,数字签名,Android组件receiver的特征,Android组件service的特征,Android组件activity的特征,可执行文件中的指令或字符串,Android安装包目录下各文件的MD5值;其中,所述可执行文件包括Dex文件,和/或,ELF文件;所述Dex文件包括classes, dex文件,扩展名为.jar的文件,以及,Dex格式的文件;其中,所述样本Android安装包包括各种安全级别下的Android安装包。优选地,所述在安全识别库中查找与指定的单个特征信息或其组合相匹配的特征记录,包括将所述指定的特征信息进行组合,得到至少包含两个特征的各项特征组合;从包含最多特征的特征组合开始,在所述安全识别库中查找与所述特征组合相匹配的特征记录,如果未查找到,则逐个减少特征组合中的特征个数,针对减少了特征个数的特征组合,继续在所述安全识别库中查找与所述特征组合相匹配的特征记录,如果未查找到,则在所述安全识别库中查找与单个特征信息相匹配的特征记录。优选地,在查找过程中,针对特征个数相同的多项特征组合,按照预先设定的先后 顺序进行查找;针对单个特征信息,按照预先设定的先后顺序进行查找。优选地,所述从Android安装包中提取出指定的特征信息,包括从所述Android安装包的AndroidManifest. xml文件中提取出以下中的一种或几种组合包名,版本号,Android 组件receiver 的特征,Android 组件 service 的特征,Android 组件 activity 的特征;和/或,从所述Android安装包的META-INF\目录下的.RSA文件中提取出所述Android安装包的数字签名;和/或,从所述An droid安装包的classes, dex文件中提取出可执行指令;和/或,从所述Android安装包的lib\目录下提取出ELF文件的指令或字符串。优选地,所述安全级别包括安全、危险、谨慎和木马四个级别。优选地,所述安全检测结果还包括以下至少一项行为描述信息,软件描述信息,时间戳信息。本申请还提供了一种Android应用的安全检测系统,包括特征提取模块,用于扫描Android安装包,并从所述Android安装包中提取出指定的特征信息;检测模块,用于在预置的安全识别库中查找与指定的单个特征信息或其组合相匹配的特征记录;其中,所述安全识别库中包含特征记录及特征记录对应的安全级别,每条特征记录中包含单个特征信息或特征信息的组合;显示模块,用于将查找到的特征记录对应的安全级别包含在所述Android安装包的安全检测结果中显示。优选地,所述从Android安装包中提取出的指定的特征信息包括以下中的一种或几种组合Android安装包的包名,版本号,数字签名,Android组件receiver的特征,Android组件service的特征,Android组件activity的特征,可执行文件中的指令或字符串,Android安装包目录下各文件的MD5值;其中,所述可执行文件包括Dex文件,和/或,ELF文件;所述Dex文件包括classes, dex文件,扩展名为.jar的文件,以及,Dex格式的文件。优选地,所述安全识别库中的特征信息包括以下中的一种或几种组合各种样本Android安装包的包名,版本号,数字签名,Android组件receiver的特征,Android组件service的特征,Android组件activity的特征,可执行文件中的指令或字符串,Android安装包目录下各文件的MD5值;其中,所述可执行文件包括Dex文件,和/或,ELF文件;所述Dex文件包括classes, dex文件,扩展名为.jar的文件,以及,Dex格式的文件;其中,所述样本Android安装包包括各种安全级别下的Android安装包。优选地,所述检测模块包括特征组合子模块,用于将所述指定的特征信息进行组合,得到至少包含两个特征的各项特征组合;第一查找子模块,用于从包含最多特征的特征组合开始,在所述安全识别库中查找与所述特征组合相匹配的特征记录;第二查找子模块,用于当第一查找子模块未查找到时,逐个减少特征组合中的特征个数,针对减少了特征个数的特征组合,继续在所述安全识别库中查找与所述特征组合相匹配的特征记录;第三查找子模本文档来自技高网...

【技术保护点】
一种Android应用程序的安全检测方法,其特征在于,包括:扫描Android安装包,并从所述Android安装包中提取出指定的特征信息;在预置的安全识别库中查找与指定的单个特征信息或其组合相匹配的特征记录;其中,所述安全识别库中包含特征记录及特征记录对应的安全级别,每条特征记录中包含单个特征信息或特征信息的组合;将查找到的特征记录对应的安全级别包含在所述Android安装包的安全检测结果中显示。

【技术特征摘要】
1.一种Android应用程序的安全检测方法,其特征在于,包括 扫描Android安装包,并从所述Android安装包中提取出指定的特征信息; 在预置的安全识别库中查找与指定的单个特征信息或其组合相匹配的特征记录;其中,所述安全识别库中包含特征记录及特征记录对应的安全级别,每条特征记录中包含单个特征信息或特征信息的组合; 将查找到的特征记录对应的安全级别包含在所述Android安装包的安全检测结果中显不O2.根据权利要求I所述的方法,其特征在于,所述从Android安装包中提取出的指定的特征信息包括以下中的一种或几种组合 Android安装包的包名,版本号,数字签名,Android组件receiver的特征,Android组件service的特征,Android组件activity的特征,可执行文件中的指令或字符串,Android安装包目录下各文件的MD5值; 其中,所述可执行文件包括Dex文件,和/或,ELF文件;所述Dex文件包括classes,dex文件,扩展名为.jar的文件,以及,Dex格式的文件。3.根据权利要求I所述的方法,其特征在于,所述安全识别库中的特征信息包括以下中的一种或几种组合 各种样本Android安装包的包名,版本号,数字签名,Android组件receiver的特征,Android组件service的特征,Android组件activity的特征,可执行文件中的指令或字符串,Android安装包目录下各文件的MD5值; 其中,所述可执行文件包括Dex文件,和/或,ELF文件;所述Dex文件包括classes,dex文件,扩展名为.jar的文件,以及,Dex格式的文件; 其中,所述样本Android安装包包括各种安全级别下的Android安装包。4.根据权利要求I至3任一所述的方法,其特征在于,所述在安全识别库中查找与指定的单个特征信息或其组合相匹配的特征记录,包括 将所述指定的特征信息进行组合,得到至少包含两个特征的各项特征组合; 从包含最多特征的特征组合开始,在所述安全识别库中查找与所述特征组合相匹配的特征记录,如果未查找到,则 逐个减少特征组合中的特征个数,针对减少了特征个数的特征组合,继续在所述安全识别库中查找与所述特征组合相匹配的特征记录,如果未查找到,则在所述安全识别库中查找与单个特征信息相匹配的特征记录。5.根据权利要求4所述的方法,其特征在于 在查找过程中,针对特征个数相同的多项特征组合,按照预先设定的先后顺序进行查找; 针对单个特征信息,按照预先设定的先后顺序进行查找。6.根据权利要求2所述的方法,其特征在于,所述从Android安装包中提取出指定的特征信息,包括 从所述Android安装包的AndroidManifest. xml文件中提取出以下中的一种或几种组合包名,版本号,Android组件receiver的特征,Android组件service的特征,Android组件activity的特征;和/或, 从所述Android安装包的META_INF\目录下的.RSA文件中提取出所述Android安装包的数字签名; 和/或, 从所述Android安装包的classes, dex文件中提取出可执行指令; 和/或, 从所述Android安装包的lib\目录下提取出ELF文件的指令或字符串。7.根据权利要求I所述的方法,其特征在于 所述安全级别包括安全、危险、谨慎和木马四个级别。8.根据权利要求I所述的方法,其特征在于,所述安全检测结果还包括以下至少一项 行为描述信息,软件描述信息,时间戳信息。9.一种Android应用的安全检测...

【专利技术属性】
技术研发人员:李涛张旭
申请(专利权)人:奇智软件北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1