安全漏洞检测方法和装置的制造方法

文档序号:9524114阅读:423来源:国知局
安全漏洞检测方法和装置的制造方法
【技术领域】
[0001]本发明涉及计算机安全领域,具体而言,涉及一种安全漏洞检测方法和装置。
【背景技术】
[0002]在计算机领域中,安全漏洞通常可以表示在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而使得恶意攻击者能够在未授权的情况下访问或破坏系统,具体地,对于应用在运行中可能存在的安全漏洞来说,该安全漏洞通常出现在软件或协议上,更具体地,出现在应用对应的程序代码上,例如最一般地,程序代码中的某些指令便可能带来安全漏洞,比如一些常用的随机数生成指令。对于随机数生成算法来说,由于计算机算法通常是确定的,因此随机数生成算法通常无法做到真正的统计随机,比如常用的由C语言的库函数中的randO这一指令所指示的随机数生成算法,该算法容易实现且执行速度较快,但随机性较差,因此结合在某些加密算法中时边可能导致加密算法易于破解,若某一应用采用了该算法,则会产生生成的密码安全性较差的风险。
[0003]由于此类应用的保密性质,其程序代码通常难以直接从内存中读取。在这一前提下,为了达到检测应用的安全漏洞的目的,为发明人所知的一种解决方案是结合测试软件对运行中的应用进行测试,具体来说,通常是模拟应用的各种运行场景,并基于应用的运行结果进行检测,例如,对于随机数生成算法来说,可以通过待检测的应用生成多个密钥或者是对不同文字进行加密,如果测试软件能够基于密钥或加密结果破解出该随机数生成算法或结合有该随机数生成算法的加密算法,则检测出应用存在安全漏洞。然而,这种检测方案通常需要对应用进行大量测试,并基于多次测试得到的大量事实样本来检测应用是否存在安全漏洞,这显然会导致检测周期较长、成本较高的问题。针对上述的问题,目前尚未提出有效的解决方案。

【发明内容】

[0004]本发明实施例提供了一种安全漏洞检测方法和装置,以至少解决现有的安全漏洞检测方案耗时较长、成本较高的技术问题。
[0005]根据本发明实施例的一个方面,提供了一种安全漏洞检测方法,包括:获取第一应用的应用安装包和第一匹配信息,其中,上述应用安装包用于安装上述第一应用,上述第一匹配信息用于指示在运行第二应用时所执行的存在安全漏洞的指令;从上述应用安装包中获取记录有运行上述第一应用时所需执行的指令的一个或多个文件;判断上述一个或多个文件中是否存在包含上述第一匹配信息的匹配文件;若存在上述匹配文件,则检测出上述第一应用存在安全漏洞。
[0006]根据本发明实施例的另一方面,还提供了一种安全漏洞检测装置,包括:第一获取单元,用于获取第一应用的应用安装包和第一匹配信息,其中,上述应用安装包用于安装上述第一应用,上述第一匹配信息用于指示在运行第二应用时所执行的存在安全漏洞的指令;第二获取单元,用于从上述应用安装包中获取记录有运行上述第一应用时所需执行的指令的一个或多个文件;第一判断单元,用于判断上述一个或多个文件中是否存在包含上述第一匹配信息的匹配文件;输出单元,用于在存在上述匹配文件时,检测出上述第一应用存在安全漏洞。
[0007]在本发明实施例中,采用了对第一应用对应的应用安装包进行处理和分析的方式来达到对第一应用进行检测的目的。具体地,在本发明实施例中,可以先获取第一应用的应用安装包,并从该应用安装包中获取记录有运行第一应用时所需执行的指令的一个或多个文件,进而通过该一个或多个文件与匹配信息也即第一匹配信息之间的匹配分析来检测应用是否存在安全隐患,其中,该匹配信息可以来自于对其他应用也即第二应用的学习结果或者说经验结果。由于该第一匹配信息可以预先获取,因此对第一应用是否存在安全漏洞的检测过程中的耗时主要来自于对第一应用安装包的解析和后续的匹配分析处理,这就避免了重复多次测试带来的时间和资源成本,达到了快速、高效地对应用进行安全漏洞检测的效果,进而解决了现有的安全漏洞检测方案耗时较长、成本较高的技术问题。
【附图说明】
[0008]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0009]图1是根据本发明实施例的一种可选的安全漏洞检测方法的示意图;
[0010]图2是根据本发明实施例的一种可选的安全漏洞检测方法或装置的实施环境的不意图;
[0011]图3是根据本发明实施例的另一种可选的安全漏洞检测方法的示意图;
[0012]图4是根据本发明实施例的一种可选的安全漏洞检测装置的示意图;
[0013]图5是根据本发明实施例的一种可选的存储介质中存储的程序代码所执行的操作步骤的示意图;
[0014]图6是根据本发明实施例的一种可选的服务器的示意图。
【具体实施方式】
[0015]为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0016]需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0017]实施例1
[0018]根据本发明实施例,提供了一种安全漏洞检测方法,如图1所示,该方法包括:
[0019]S102:获取第一应用的应用安装包和第一匹配信息,其中,应用安装包用于安装第一应用,第一匹配信息用于指示在运行第二应用时所执行的存在安全漏洞的指令;
[0020]S104:从应用安装包中获取记录有运行第一应用时所需执行的指令的一个或多个文件;
[0021]S106:判断一个或多个文件中是否存在包含第一匹配信息的匹配文件;
[0022]S108:若存在匹配文件,则检测出第一应用存在安全漏洞。
[0023]应当明确的是,本发明实施例所要解决的问题之一是提供一种方法,以便于对应用(applicat1n)在运行中可能存在的安全漏洞或者说漏洞进行有效检测。
[0024]具体地,在本发明实施例中,应用通常可以表示安装并运行在如智能手机等终端设备上软件,更具体地,该应用可以运行于安装在终端设备上的操作系统中,然而本发明对此不作限定。当然,这只是一种示例,并不会对本发明构成不必要的限定,例如在本发明的一些实施例中,该应用也可以安装并运行在智能手机以外的其他终端设备上,比如个人电脑或平板电脑等,或者,该应用还可以安装并运行在服务器所在的计算机或计算机系统上,以便于使运行有该应用的设备执行由该应用对应的指令所指示的操作,并实现该应用预定的功能,其中,运行在不同的设备上的应用也可以具有其他称谓,换而言之,本发明实施例中所描述的应用包括但并不限于是具有“应用”这一具体称谓的软件或程序。
[0025]在另一方面,在计算机领域中,安全漏洞通常可以表示在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而使得恶意攻击者能够在未授权的情况下访问或破坏系统,具体地,对于应用在运行中可能存在的安全漏洞来说,该安全漏洞通常出现在软件或协议上,更具体地,出现在应用对应的程序代码上,例如最一般地,程序代码中的某些指令便可能带来安全漏洞,比如一些常用的随机数生成指令。对于随机数生成算法来说,由于计算机算法通常是确定的,因此随机数生成算法通常无法做到真正的统计随机,比如常用的由C语言的库函数中的randO这一指令所指示的随机数生成算法,该算法容易实现且执行速度较快,但随机性较差,因此结合在某些加密算法中时边可能导致加密算法易于破解,若某一应用采用了该算法,则会产生生成的密码安全性较差的风险。
[0026]由于此类应用的保密性质,其程序代码通常难以直接从内存中读取。在这一前提下,为了达到检测应用的安全漏洞的目的,为发明人所知的一种解决方案是结合测试软件对运行中的应用进行测试,具体来说,通常是模拟应用的各种运行场景,并基于应用的运行结果进行检测,例如,对于随机数生成算法来说,可以通过待检测的应用生成多个密钥或者是对不同文字进行加密,如果测试软件能够基于密钥或加密结果破解出该随机数生成算法或结合有该随机数生成算法的加密算法,则检测出应用存在安全漏洞。然而,这种检测方案通常需要对应用进行大量测试,并基于多次测试得到的大量事实样本来检测应用是否存在安全漏洞,这显然会导致检测周期较长、成本较高的问题。
[0027]为解决上述问题,在本发明实施例中,采用了对待检测的应用对应的应用安装包进行处理和分析的方式来达到对应用进行检测的目的,其中,为表述方便,以下将待检测的应用记为第一应用。具体地,在本发明实施例中,可以先获取第一应用的应用安装包,并从该应用安装包中获取记录有运行第一应用时所需执行的指令的一个或多个文件,进而通过该一个或多个文件与匹配信息也即第一匹配信息之间的匹配分析来检测应用是否存在安全隐患,其中,该匹配信息可以来自于对其他应用也即第二应用的学习结果或者说经验结果。由于该第一匹配信息可以预先获取,因此对第一应用是否存在安全漏洞的检测过程中的耗时主要来自于对第一应用安装包的解析和后续的匹配分析处理,这就避免了重复多次测试带来的时间成本和资源成本,达到了快速、高效地对应用进行安全漏洞检测的效果,进而解决了现有的安全漏洞检测方案耗时较长、成本较高的技术问题。
[0028]以下将结合附图和具体的实施例对本发明技术方案进行描述。首先,将
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1