一种恶意程序的检测方法、装置及相关应用制造方法及图纸

技术编号:21060646 阅读:26 留言:0更新日期:2019-05-08 07:13
本发明专利技术实施例提供恶意程序的检测方法、装置及相关应用,获取待检测程序预设位置的至少一个字符串;按预定义规则对所述字符串进行随机性计算,生成待检测程序的随机值;当待检测程序的随机值大于预设阈值时,判断待检测程序为恶意程序。本发明专利技术技术方案可以准确有效的识别采用随机字符串来对抗安全软件的恶意代码,可以解决传统查杀依赖特征库导致的特征库极度膨胀问题,同时具有较高的处理效率,不依赖具体的特征,能够有效检测自动生成的恶意程序。

A Malicious Program Detection Method, Device and Related Applications

【技术实现步骤摘要】
一种恶意程序的检测方法、装置及相关应用
本专利技术涉及一种恶意程序的检测方法、装置及相关应用。
技术介绍
随着移动互联网近几年的迅猛发展,带来的是平台安全问题的与日俱增。尤以Android平台最为突出,其生态圈繁荣的表象之下,是潜藏着的以巨额利益为驱动的黑色产业链。Android整个生态愈发繁荣,相关的黑色产业链也愈发猖獗,Android平台上的病毒也越来越多,数量几乎成指数级增长。传统的恶意程序查杀主要依赖于特征库模式。特征库是由厂商收集到的恶意程序样本的特征码组成,其中特征码可以理解为从恶意程序中找到和正常软件的区别特征代码。当查杀过程中,引擎会读取文件并与特征库中的所有特征码进行匹配,如果发现文件程序代码被命中,就可以判定该文件程序为恶意程序。例如北京奇虎科技有限公司的专利——一种病毒APK的识别方法及装置(申请号:201210076889.2,公开号:102663286B)采用opcode以及类名函数名作为特征,黑客在免杀时采用混淆方法,相应的特征会变成随机的字符串,因此会出现大量随机的字符串代替原来的函数名,进而导致特征库的膨胀的情况,特征库体积越大,匹配效率就越低,最终后导致传统的特征库失效。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题的一种恶意程序的检测方法、装置及相关应用。第一方面,本专利技术实施例提供一种恶意程序的检测方法,包括:获取待检测程序预设位置的至少一个字符串;按预定义规则对所述字符串进行随机性计算,生成待检测程序的随机值;当待检测程序的随机值大于预设阈值时,判断待检测程序为恶意程序。进一步的,预设阈值的方法包括:预定义两个字符串集合,包括非随机字符串集合、恶意随机字符串集合,按照预定义规则分别对所述两个字符串集合中的所有字符串进行随机性计算,其中,非随机字符串集合中的最小随机值为第一随机值、恶意随机字符串集合中的最大随机值为第二随机值;当第一随机值小于第二随机值时所述阈值为:第二随机值;或者,第一随机值与第二随机值的平均值。进一步的,预设阈值的方法还包括:还预定义一正常随机字符串集合,按照所述预定义规则对该字符串集合中的所有字符串进行随机性计算,其中最大随机值为第三随机值,当第三随机值大于第一随机值且小于第二随机值时,所述阈值为第三随机值进一步的,所述获取待检测程序预设位置的至少一个字符串的方法包括:在所述待检测程序的包名、签名、程序名称、版本号、文件名称、文件内容中的至少一种中提取字符串。进一步的,所述按照预定义规则对所述字符串进行随机性计算的方法包括:N-Gram算法、信息熵算法。进一步的,获取待检测程序预设位置的至少一个字符串的方法包括:以换行符为标识,一行字符为一个字符串。进一步的,所述字符为英文、数字、符号中的至少一种或它们的混合。进一步的,当判断待检测程序为恶意程序时,将获取的待检测程序预设位置的至少一个字符串加入到恶意随机字符串集合。第二方面,本专利技术实施例提供一种恶意程序的检测装置,包括:获取模块,用于获取待检测程序预设位置的至少一个字符串;随机值计算模块,用于按预定义规则对所述字符串进行随机性计算,生成待检测程序的随机值;比较判断模块,用于当待检测程序的随机值大于预设阈值时,判断待检测程序为恶意程序。第三方面,本专利技术实施例提供一种恶意程序的检测装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:获取待检测程序预设位置的至少一个字符串;按预定义规则对所述字符串进行随机性计算,生成待检测程序的随机值;当待检测程序的随机值大于预设阈值时,判断待检测程序为恶意程序。第四方面,本专利技术实施例提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行如上述的一种恶意程序的检测方法。本专利技术实施例提供的上述技术方案的有益效果至少包括:本专利技术实施例提供的一种恶意程序的检测方法、装置及相关应用,获取待检测程序预设位置的至少一个字符串,按预定义规则对所述字符串进行随机性计算,生成待检测程序的随机值;当待检测程序的随机值大于预设阈值时,判断待检测程序为恶意程序。本专利技术技术方案可以准确有效的识别采用随机字符串来对抗安全软件的恶意代码,可以解决传统查杀依赖特征库导致的特征库极度膨胀问题,同时具有较高的处理效率,不依赖具体的特征,能够有效检测自动生成的恶意程序。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。附图说明附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。在附图中:图1为本专利技术实施例提供的恶意程序的检测方法的流程图;图2A为本专利技术实施例提供的阈值产生的流程图;图2B为本专利技术实施例提供的另一种阈值产生的流程图;图3为本专利技术实施例提供的各字符串集合随机值大小示意图;图4为本专利技术实施例提供的对字符串进行随机性计算的流程图;图5为本专利技术实施例提供的恶意程序的检测装置的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本专利技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本专利技术的一些方面相一致的装置和方法的例子。根据实际经验,正常应用的签名、包名等需要稳定,用来维持正常的更新和迭代。而恶意代码则倾向于使用随机字符串,避免安全厂商以签名或者包名等做特征对其进行查杀。另外,正常应用签名、包名中往往带有所属作者或者公司的个人信息,这就符合文本统计规律。根据文本统计规律(字母的频率分析学理论)可知:在任何一种书面语言中,不同的字母或字母组合出现的频率各不相同。而且,对于以这种语言书写的任意一段文本,都具有大致相同的特征字母分布。比如,在英语中,字母E出现的频率很高,而X则出现得较少。类似地,ST、NG、TH,以及QU等双字母组合出现的频率非常高,NZ、QJ组合则极少。因此,如果是非随机字符串,应该是能满足这个规律,而随机字符串一般不满足这个规律。所以,非随机字符串的随机值应该不高,而随机字符串的随机值会比较高。基于上述理论,在本申请中,恶意字符串肯定是随机字符串;非恶意字符串(即正常随机)可能是随机的,也可能是非随机的,如果是随机的,其随机性不会高于恶意字符串。对于检测随机的程序来说只有随机字符串和非随机字符串之分,本专利技术技术方案在描述过程中,随机字符串包括正常随机字符串(如Eyetwoawentbartea)及恶意随机字符串(如Gffvdyfgghjguyseertdftyfgty),非随机字符串可以理解为正常语义字符串(如Iwenttoaparty)。本专利技术实施例提供了一种恶意程序的检测方法,参照图1所示,包括步骤S101~S103:S101、获取待检测程序预设位置的至少一个字符串。为了对抗安全厂商,恶意程序或应用往往采用加壳和混淆等手段进行免杀,导致采用比本文档来自技高网...

【技术保护点】
1.一种恶意程序的检测方法,其特征在于,包括:获取待检测程序预设位置的至少一个字符串;按预定义规则对所述字符串进行随机性计算,生成待检测程序的随机值;当待检测程序的随机值大于预设阈值时,判断待检测程序为恶意程序。

【技术特征摘要】
1.一种恶意程序的检测方法,其特征在于,包括:获取待检测程序预设位置的至少一个字符串;按预定义规则对所述字符串进行随机性计算,生成待检测程序的随机值;当待检测程序的随机值大于预设阈值时,判断待检测程序为恶意程序。2.如权利要求1所述的方法,其特征在于,预设阈值的方法包括:预定义两个字符串集合,包括非随机字符串集合、恶意随机字符串集合,按照预定义规则分别对所述两个字符串集合中的所有字符串进行随机性计算,其中,非随机字符串集合中的最小随机值为第一随机值、恶意随机字符串集合中的最大随机值为第二随机值;当第一随机值小于第二随机值时所述阈值为:第二随机值;或者,第一随机值与第二随机值的平均值。3.如权利要求2所述的方法,其特征在于,预设阈值的方法还包括:还预定义一正常随机字符串集合,按照所述预定义规则对该字符串集合中的所有字符串进行随机性计算,其中最大随机值为第三随机值,当第三随机值大于第一随机值且小于第二随机值时,所述阈值为第三随机值。4.如权利要求1-3任一项所述的方法,其特征在于,所述获取待检测程序预设位置的至少一个字符串的方法包括:在所述待检测程序的包名、签名、程序名称、版本号、文件名称、文件内容中的至少一种中提取字符串。5.如权利要求1-3任一项所述的方法,其特征在于,所述按照预定义规则对所述字符串进行随机性计算的方法包括:N-Gram算法、信息熵算法。6.如权利要求1-3任一项所述的方法,其特征在于,获取待检测程序预设位置的至少一个字符串的方法包括:以换行符为标识,一行字符为一个字符串。7.如权利要求6所述的方法,其特征在于,所述字符为英文、数字、符号中的至少一种或者它们的混合。8.如权利要求2所述的方法,其特征在于,当判断待检测程序为恶意程序时,将获取的待检测程序预设位置的至少一个字符串加入到恶意随机字符串集合。9.一种恶意程序的检测装置,其特征在于,包括:获取模块,用于获取待检测程序预设位置的至少一个字符串;随机值计算模块,用于按预定义规则对所述字符串进行随机性计算,生成待检测程序的随机值;比较判断模块,用于当待检测程序的随机值大于预设阈值时,判断待检测程序为恶意程序。10.如权利...

【专利技术属性】
技术研发人员:高坤邰靖宇刘宇豪潘宣辰马志远
申请(专利权)人:武汉安天信息技术有限责任公司
类型:发明
国别省市:湖北,42

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

1