1.一种根据应用程序声明特征识别恶意应用程序的方法,包括:
获取应用程序的安装包中的清单文件;
统计所述清单文件中记录的第一清单文件特征,所述第一清单文件特征包括权限特征;
根据所述应用程序的第一清单文件特征确定所述应用程序是否为恶意应用程序;包括:
在预置的特征库中查找与所述应用程序声明的包名对应的第二清单文件特征,所述第二清单文件特征包括与所述应用程序的功能不相符的权限特征,且所述第二清单文件特征为恶意应用程序的特征;
判断所述第一清单文件特征中的权限特征与所述第二清单文件特征中的权限特征是否匹配,若匹配,则判定所述应用程序为恶意应用程序。
2.根据权利要求1所述的方法,其中,
所述清单文件为manifest文件;
所述第一清单文件特征还包括如下特征的至少一种:
包名、服务特征、activity特征、provider特征、版本号、receiver特征。
3.根据权利要求2所述的方法,其中,所述应用程序声明的权限特征包括所述应用程序声明的权限以及权限数量;
所述应用程序声明的服务特征包括所述应用程序声明的服务以及服务数量;
所述activity特征包括所述应用程序声明的activity名称和activity数量;
所述provider特征包括provider名称和provider数量;
所述receiver特征包括receiver名称和数量。
4.根据权利要求3所述的方法,其中,所述统计所述清单文件中记录的第一清单文件特征,包括:
在所述manifest文件的第一字段处获取所述应用程序声明的包名;
在所述manifest文件的第二字段处获取所述应用程序声明的权限,并统计权限数量;
在所述manifest文件的第三字段处获取所述应用程序声明的服务,并统计服务数量;
在所述manifest文件的第四字段处获取所述应用程序声明的activity名称,并统计activity数量;
在所述manifest文件的第五字段处获取所述应用程序声明的provider名称,并统计provider数量;
在所述manifest文件的第六字段处获取所述应用程序声明的receiver名称,并统计receiver数量;
在所述manifest文件的第七字段处获取所述应用程序声明的版本号;
其中,所述第一字段为
,所述第二字段为,所述第三字段为,所述第四字段为,所述第五字段为,所述第六字段为,所述第七字段为。
5.根据权利要求4所述的方法,其中,所述根据所述应用程序的第一清单文件特征确定所述应用程序是否为恶意应用程序,包括:
在预置的特征库中查找与所述应用程序声明的包名对应的第二清单文件特征的范围,并判断所述应用程序声明的第一清单文件特征是否与所述第二清单文件特征匹配;
当所述应用程序声明的第一清单文件特征与所述第二清单文件特征匹配时,判定所述应用程序为恶意应用程序;
当所述应用程序声明的第一清单文件特征与所述第二清单文件特征不匹配时,判定所述应用程序为非恶意程序。
6.根据权利要求1所述的方法,其中,所述根据所述应用程序的第一清单文件特征确定所述应用程序是否为恶意应用程序,包括:
通过在本地预置的安全识别库中查询是否存在与所述第一清单文件特征相匹配的记录确定所述应用程序是否为恶意应用程序。
7.根据权利要求1-6任一项所述的方法,其中,在确定所述应用程序是否为恶意应用程序之后,所述方法还包括:
提示用户所述应用程序为恶意应用程序,并禁止用户进行安装;
或,
清除所述应用程序。
8.一种根据应用程序声明特征识别恶意应用程序的装置,包括:
文件获取模块,适于获取应用程序的安装包中的清单文件;
信息统计模块,适于统计所述清单文件中记录的第一清单文件特征,所述第一清单文件特征包括权限特征;
识别模块,适于根据所述应用程序的第一清单文件特征确定所述应用程序是否为恶意应用程序;还适于在预置的特征库中查找与所述应用程序声明的包名对应的第二清单文件特征,所述第二清单文件特征包括与所述应用程序的功能不相符的权限特征,且所述第二清单文件特征为恶意应用程序的特征;判断所述第一清单文件特征中的权限特征与所述第二清单文件特征中的权限特征是否匹配,若匹配,则判定所述应用程序为恶意应用程序。
9.根据权利要求8所述的装置,其中,
所述清单文件为manifest文件;
所述第一清单文件特征还包括如下特征的至少一种:
包名、服务特征、activity特征、provider特征、版本号、receiver特征。
10.根据权利要求9所述的装置,其中,所述应用程序声明的权限特征包括所述应用程序声明的权限以及权限数量;
所述应用程序声明的服务特征包括所述应用程序声明的服务以及服务数量;
所述activity特征包括所述应用程序声明的activity名称和activity数量;
所述provider特征包括provider名称和provider数量;
所述receiver特征包括receiver名称和数量。
11.根据权利要求10所述的装置,其中,所述信息统计模块,包括:
第一统计单元,适于在所述manifest文件的第一字段处获取所述应用程序声明的包名;
第二统计单元,适于在所述manifest文件的第二字段处获取所述应用程序声明的权限,并统计权限数量;
第三统计单元,适于在所述manifest文件的第三字段处获取所述应用程序声明的服务,并统计服务数量;
第四统计单元,适于在所述manifest文件的第四字段处获取所述应用程序声明的activity名称,并统计activity数量;
第五统计单元,适于在所述manifest文件的第五字段处获取所述应用程序声明的provider名称,并统计provider数量;
第六统计单元,适于在所述manifest文件的第六字段处获取所述应用程序声明的receiver名称,并统计receiver数量;
第七统计单元,适于在所述manifest文件的第七字段处获取所述应用程序声明的版本号;
其中,所述第一字段为,所述第二字段为,所述第三字段为,所述第四字段为,所述第五字段为,所述第六字段为,所述第七字段为。
12.根据权利要求11所述的装置,其中,所述识别模块,包括:
识别单元,适于在预置的特征库中查找与所述应用程序声明的包名对应的第二清单文件特征的范围,并判断所述应用程序声明的第一清单文件特征是否与所述第二清单文件特征匹配;
第一判定单元,适于当所述应用程序声明的第一清单文件特征与所述第二清单文件特征匹配时,判定所述应用程序为恶意应用程序;
第二判定单元,适于当所述应用程序声明的第一清单文件特征与所述第二清单文件特征不匹配时,判定所述应用程序为非恶意程序。
13.根据权利要求8所述的装置,其中,所述识别模块还具体适于按照如下方式根据所述应用程序的第一清单文件特征确定所述应用程序是否为恶意应用程序:
通过在本地预置的安全识别库中查询是否存在与所述第一清单文件特征相匹配的记录确定所述应用程序是否为恶意应用程序。
14.根据权利要求8-13任一项所述的装置,其中,所述装置还包括:
查杀模块,适于提示用户所述应用程序为恶意应用程序,并禁止用户进行安装;
或,
清除所述应用程序。