恶意应用程序的检测方法及装置制造方法及图纸

技术编号:24122254 阅读:51 留言:0更新日期:2020-05-13 03:26
本申请公开了一种恶意应用程序的检测方法及装置。该方法中获取待检测应用程序的证书序列号和程序特征信息,程序特征信息为待检测应用程序设定的待运行的信息,程序特征信息包括调用接口、系统命令和申请权限中的至少两种特征信息;根据预设的证书序列号黑名单,对证书序列号进行检测,证书序列号黑名单包括已知恶意应用程序的证书序列号;若预设的证书序列号黑名单中存在证书序列号,则确定待检测应用程序为恶意应用程序;若预设的证书序列号黑名单中不存在证书序列号,则根据程序特征信息,确定待检测应用程序是否为恶意应用程序。该方法提高了检测准确性与检测效率、降低了测试成本。

【技术实现步骤摘要】
恶意应用程序的检测方法及装置
本申请涉及网络安全
,尤其涉及一种恶意应用程序的检测方法及装置。
技术介绍
当前,终端设备,如智能手机,为快速、海量的信息共享环境做出了巨大贡献。智能手机市场每年都在不断扩大,从通信和娱乐的方面丰富了我们的数字化生活。但智能手机使用量的增加也带来了严重的问题。由于智能手机占据了移动市场的最大份额,其易受到恶意软件(或称“恶意应用程序”)的攻击。为了减轻恶意软件的威胁,人们做了各种工作来检测恶意软件,该检测方法主要包括静态检测和动态检测。其中,静态检测方法是通过检测应用程序的程序文件(即源代码)中请求的权限来检查其是否具有危害性的方法,不需要执行应用程序。然而,静态检测方法只能根据人为设定的恶意权限对源代码中申请的权限进行判别,具有局限性,导致检测的准确性不高。动态检测方法是在运行的应用程序中检测是否存在恶意行为的方法。然而,由于每次执行动态检测方法都需要运行该应用程序,故每次检测需要创建相应的检测环境来运行该应用程序,增加了检测成本,且降低了检测效率。
技术实现思路
本申请实施例提供一种恶意应用程序的检测方法及装置,解决了现有技术存在的上述问题,提高了检测准确性与检测效率、降低了测试成本。第一方面,提供了一种恶意应用程序的检测方法,该方法可以包括:获取待检测应用程序的证书序列号和程序特征信息,所述程序特征信息为所述待检测应用程序设定的待运行的信息,所述程序特征信息包括调用接口、系统命令和申请权限中的至少两种特征信息;根据预设的证书序列号黑名单,对所述证书序列号进行检测,所述证书序列号黑名单包括已知恶意应用程序的证书序列号;若预设的证书序列号黑名单中存在所述证书序列号,则确定所述待检测应用程序为恶意应用程序;若预设的证书序列号黑名单中不存在所述证书序列号,则根据所述程序特征信息,确定所述待检测应用程序是否为恶意应用程序。在一个可选的实现中,根据所述程序特征信息,确定所述待检测应用程序是否为恶意应用程序,包括:若所述程序特征信息满足预设恶意应用程序检测条件,则确定所述待检测应用程序为恶意应用程序;当所述程序特征信息包括所述调用接口和所述申请权限时,所述预设恶意应用程序检测条件包括:预设的调用接口黑名单中不存在所述调用接口,且所述申请权限对应的权限似然比大于预设概率阈值;其中,所述权限似然比用于描述所述待检测应用程序具有所述申请权限的条件下,使所述待检测应用程序成为恶意应用程序的概率,所述调用接口黑名单包括已知的恶意应用程序频繁使用的涉及安全风险的调用接口;当所述程序特征信息包括所述调用接口和所述系统命令时,所述预设恶意应用程序检测条件包括:预设的系统命令黑名单中不存在所述系统命令,且预设的调用接口黑名单中不存在所述调用接口,其中,所述系统命令黑名单包括已知的恶意应用程序使用的存在恶意行为的系统命令;当所述程序特征信息包括所述申请权限和所述系统命令时,所述预设恶意应用程序检测条件包括:所述申请权限对应的权限似然比大于预设概率阈值,且预设的系统命令黑名单中不存在所述系统命令。在一个可选的实现中,所述程序特征信息还包括意图信息;当所述程序特征信息包括所述调用接口、所述申请权限和所述意图信息时,所述预设恶意应用程序检测条件包括:预设的调用接口黑名单中不存在所述调用接口、所述申请权限对应的权限似然比大于预设概率阈值和所述意图信息中不存在隐藏短消息的意图信息;当所述程序特征信息包括所述调用接口、所述系统命令和所述意图信息时,所述预设恶意应用程序检测条件包括:预设的系统命令黑名单中不存在所述系统命令、预设的调用接口黑名单中不存在所述调用接口和所述意图信息中不存在隐藏短消息的意图信息;当所述程序特征信息包括所述待申请的权限、所述系统命令和所述意图信息时,所述预设恶意应用程序检测条件包括:所述申请权限对应的权限似然比大于预设概率阈值、预设的系统命令黑名单中不存在所述系统命令和所述意图信息中不存在隐藏短消息的意图信息。在一个可选的实现中,确定所述待检测应用程序是恶意应用程序之后,所述方法还包括:根据所述恶意应用程序的程序特征信息与已知恶意类别的恶意应用程序的程序特征信息的相似性,确定所述恶意应用程序的恶意类别。在一个可选的实现中,根据所述恶意应用程序的程序特征信息与已知恶意类别的目标恶意应用程序的程序特征信息的相似性,确定所述恶意应用程序的恶意类别,包括:采用Needleman-Wunsch算法,对所述恶意应用程序的字符串与所述目标恶意应用程序的每个字符串进行相似性运算,得到最大的相似性;采用Jaccard系数算法,对所述恶意应用程序的系统命令字符串与所述目标恶意应用程序的每个系统命令字符串进行相似性运算,得到最大的系统命令相似性;采用Levenshtein距离算法,对所述恶意应用程序的申请权限字符串与所述目标恶意应用程序的每个申请权限字符串进行相似性运算,得到最大的申请权限相似性;采用预设累加算法,对所述最大的相似性、所述最大的系统命令相似性和所述最大的申请权限相似性进行累加,得到相似性分数;若所述相似性分数大于预设分数阈值,则确定所述恶意应用程序的恶意类别与所述目标恶意应用程序的恶意类别相同。在一个可选的实现中,所述相似性分数的公式表示为:其中,wi是相关相似性的权重,对所有的i存在N为程序特征信息的种类数。在一个可选的实现中,确定所述待检测应用程序是恶意应用程序之后,所述方法还包括:生成告警信息,所述告警信息用于向用户展示所述待检测应用程序是恶意应用程序的信息。第二方面,提供了一种恶意应用程序的检测装置,该装置可以包括:获取单元、检测单元和确定单元;所述获取单元,用于获取待检测应用程序的证书序列号和程序特征信息,所述程序特征信息为所述待检测应用程序设定的待运行的信息,所述程序特征信息包括调用接口、系统命令和申请权限中的至少两种特征信息;所述检测单元,用于根据预设的证书序列号黑名单,对所述证书序列号进行检测,所述证书序列号黑名单包括已知恶意应用程序的证书序列号;所述确定单元,用于若预设的证书序列号黑名单中存在所述证书序列号,则确定所述待检测应用程序为恶意应用程序;若预设的证书序列号黑名单中不存在所述证书序列号,则根据所述程序特征信息,确定所述待检测应用程序是否为恶意应用程序。在一个可选的实现中,所述确定单元,具体用于若所述程序特征信息满足预设恶意应用程序检测条件,则确定所述待检测应用程序为恶意应用程序;当所述程序特征信息包括所述调用接口和所述申请权限时,所述预设恶意应用程序检测条件包括:预设的调用接口黑名单中不存在所述调用接口,且所述申请权限对应的权限似然比大于预设概率阈值;其中,所述权限似然比用于描述所述待检测应用程序具有所述申请权限的条件下,使所述待检测应用程序成为恶意应用程序的概率,所述调用接口黑名单包括已知的恶意应用程序频本文档来自技高网...

【技术保护点】
1.一种恶意应用程序的检测方法,其特征在于,所述方法包括:/n获取待检测应用程序的证书序列号和程序特征信息,所述程序特征信息为所述待检测应用程序设定的待运行的信息,所述程序特征信息包括调用接口、系统命令和申请权限中的至少两种特征信息;/n根据预设的证书序列号黑名单,对所述证书序列号进行检测,所述证书序列号黑名单包括已知恶意应用程序的证书序列号;/n若所述预设的证书序列号黑名单中存在所述证书序列号,则确定所述待检测应用程序为恶意应用程序;/n若所述预设的证书序列号黑名单中不存在所述证书序列号,则根据所述程序特征信息,确定所述待检测应用程序是否为恶意应用程序。/n

【技术特征摘要】
1.一种恶意应用程序的检测方法,其特征在于,所述方法包括:
获取待检测应用程序的证书序列号和程序特征信息,所述程序特征信息为所述待检测应用程序设定的待运行的信息,所述程序特征信息包括调用接口、系统命令和申请权限中的至少两种特征信息;
根据预设的证书序列号黑名单,对所述证书序列号进行检测,所述证书序列号黑名单包括已知恶意应用程序的证书序列号;
若所述预设的证书序列号黑名单中存在所述证书序列号,则确定所述待检测应用程序为恶意应用程序;
若所述预设的证书序列号黑名单中不存在所述证书序列号,则根据所述程序特征信息,确定所述待检测应用程序是否为恶意应用程序。


2.如权利要求1所述的方法,其特征在于,根据所述程序特征信息,确定所述待检测应用程序是否为恶意应用程序,包括:
若所述程序特征信息满足预设恶意应用程序检测条件,则确定所述待检测应用程序为恶意应用程序;
当所述程序特征信息包括所述调用接口和所述申请权限时,所述预设恶意应用程序检测条件包括:预设的调用接口黑名单中不存在所述调用接口,且所述申请权限对应的权限似然比大于预设概率阈值;其中,所述权限似然比用于描述所述待检测应用程序具有所述申请权限的条件下,使所述待检测应用程序成为恶意应用程序的概率,所述调用接口黑名单包括已知的恶意应用程序频繁使用的涉及安全风险的调用接口;
当所述程序特征信息包括所述调用接口和所述系统命令时,所述预设恶意应用程序检测条件包括:预设的系统命令黑名单中不存在所述系统命令,且预设的调用接口黑名单中不存在所述调用接口,其中,所述系统命令黑名单包括已知的恶意应用程序使用的存在恶意行为的系统命令;
当所述程序特征信息包括所述申请权限和所述系统命令时,所述预设恶意应用程序检测条件包括:所述申请权限对应的权限似然比大于预设概率阈值,且预设的系统命令黑名单中不存在所述系统命令。


3.如权利要求2所述的方法,其特征在于,所述程序特征信息还包括意图信息;
当所述程序特征信息包括所述调用接口、所述申请权限和所述意图信息时,所述预设恶意应用程序检测条件包括:预设的调用接口黑名单中不存在所述调用接口、所述申请权限对应的权限似然比大于预设概率阈值和所述意图信息中不存在隐藏短消息的意图信息;
当所述程序特征信息包括所述调用接口、所述系统命令和所述意图信息时,所述预设恶意应用程序检测条件包括:预设的系统命令黑名单中不存在所述系统命令、预设的调用接口黑名单中不存在所述调用接口和所述意图信息中不存在隐藏短消息的意图信息;
当所述程序特征信息包括所述待申请的权限、所述系统命令和所述意图信息时,所述预设恶意应用程序检测条件包括:所述申请权限对应的权限似然比大于预设概率阈值、预设的系统命令黑名单中不存在所述系统命令和所述意图信息中不存在隐藏短消息的意图信息。


4.如权利要求2或3所述的方法,其特征在于,确定所述待检测应用程序是恶意应用程序之后,所述方法还包括:
根据所述恶意应用程序的程序特征信息与已知恶意类别的恶意应用程序的程序特征信息的相似性,确定所述恶意应用程序的恶意类别。


5.如权利要求4所述的方法,其特征在于,
根据所述恶意应用程序的程序特征信息与已知恶意类别的目标恶意应用程序的程序特征信息的相似性,确定所述恶意应用程序的恶意类别,包括:
采用Needleman-Wunsch算法,对所述恶意应用程序的字符串与所述目标恶意应用程序的每个字符串进行相似性运算,得到最大的相似性;
采用Jaccard系数算法,对所述恶意应用程序的系统命令字符串与所述目标恶意应用程序的每个系统命令字符串进行相似性运算,得到最大的系统命令相似性;
采用Levenshtein距离算法,对所述恶意应用程序的申请权限字符串与所述目标恶意应用程序的每个申请权限字符串进行相似性运算,得到最大的申请权限相似性;
采用预设累加算法,对所述最大的相似性、所述最大的系统命令相似性和所述最大的申请权限相似性进行累加,得到相似性分数;
若所述相似性分数大于预设分数阈值,则确定所述恶意应用程序的恶意类别与所述目标恶意应用程序的恶意类别相同。


6.如权利要求5所述的方法,其特征在于,所述相似性分数的公式表示为:



其中,wi是相关相似性的权重,对所有的i存在N为程序特征信息的种类数。


7.如权利要求2或3所述的方法,其特征在于,确定所述待检测应用程序是恶意应用程序之后,所述方法还包括:
生成告警信息,所述告警信息用于向用户展示所述待检测应用程序是恶意应用程序的信息。


8.一种恶意应用程序的检测装置,其特征在于,所述装置包括:获取单元、检测单元和确定单元;
所述获取单元,用于获取待检测应用程序的证书序列号和程序特征信息,所述程序特征信息...

【专利技术属性】
技术研发人员:刘威歆宁振虎张润滋薛见新陈磊
申请(专利权)人:北京神州绿盟信息安全科技股份有限公司北京神州绿盟科技有限公司
类型:发明
国别省市:北京;11

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

1