一种程序漏洞检测方法及装置的制造方法

文档序号:9579545阅读:337来源:国知局
一种程序漏洞检测方法及装置的制造方法
【技术领域】
[0001]本发明涉及信息安全技术领域,尤其涉及一种程序漏洞检测方法及装置。
【背景技术】
[0002]目前,信息技术的飞速发展给人们带来便利,但同时,其中存在的大量漏洞也使得当前安全形势日益严峻,由此,各种漏洞检测技术应运而生。模糊测试(Fuzz testing)就是其中的一种软件漏洞挖掘技术,其在进行软件漏洞挖掘时,通过对软件的输入文件做随机插入,如依次对每个字节做0?OxFF变换,生成测试数据,由该软件加载该测试数据,并通过监控该软件是否崩溃或者出现异常来检测是否存在潜在漏洞。然而,通过对每个字节做0?OxFF变换,这就使得生成的测试数据规模较大,导致漏洞检测效率较低。

【发明内容】

[0003]本发明实施例所要解决的技术问题在于,提供一种程序漏洞检测方法及装置,用于解决由于生成的测试数据规模大而导致的漏洞检测效率低的问题。
[0004]为了解决上述技术问题,本发明实施例提供了一种程序漏洞检测方法,包括:
[0005]对目标程序的输入文件的结构进行解析,得到包括所述输入文件的至少一个字段信息的字段信息集合;
[0006]从所述字段信息集合的字段信息中查找出用于标识长度的目标字段信息;
[0007]将所述目标字段信息指示的长度值替换为预先配置的目标测试值,并根据所述目标测试值对所述目标程序进行漏洞检测。
[0008]可选的,所述根据所述目标测试值对所述目标程序进行漏洞检测,包括:
[0009]根据所述目标测试值对所述输入文件中的字段进行更改,得到所述目标测试值对应的测试数据;
[0010]在所述目标程序中运行所述测试数据,以对所述目标程序进行漏洞检测。
[0011 ] 可选的,所述方法还包括:
[0012]预先获取不同文件的文件格式,并为每一种文件格式配置与该文件格式对应的测试值;
[0013]所述将所述目标字段信息指示的长度值替换为预先配置的目标测试值,包括:
[0014]确定所述输入文件对应的目标文件格式,并查找出与所述目标文件格式对应的测试值;
[0015]将查找出的所述测试值作为目标测试值,并将所述目标字段信息指示的长度值替换为所述目标测试值。
[0016]可选的,在所述将所述目标字段信息指示的长度值替换为预先配置的目标测试值,并根据所述目标测试值对所述目标程序进行漏洞检测之后,所述方法还包括:
[0017]获取所述漏洞检测的检测过程中所述目标程序产生的异常信息,并确定出所述异常信息对应的测试值;
[0018]根据所述异常信息对应的测试值,对配置的与所述目标文件格式对应的测试值进行更新。
[0019]可选的,所述目标测试值为预先配置的边界值。
[0020]相应地,本发明实施例还提供了一种程序漏洞检测装置,包括:
[0021]解析模块,用于对目标程序的输入文件的结构进行解析,得到包括所述输入文件的至少一个字段信息的字段信息集合;
[0022]查找模块,用于从所述字段信息集合的字段信息中查找出用于标识长度的目标字段?目息;
[0023]替换模块,用于将所述查找模块查找出的所述目标字段信息指示的长度值替换为预先配置的目标测试值;
[0024]检测模块,用于根据所述目标测试值对所述目标程序进行漏洞检测。
[0025]可选的,所述检测模块包括:
[0026]数据生成单元,用于根据所述目标测试值对所述输入文件中的字段进行更改,得到所述目标测试值对应的测试数据;
[0027]处理单元,用于在所述目标程序中运行所述数据生成单元生成的所述测试数据,以对所述目标程序进行漏洞检测。
[0028]可选的,所述装置还包括:
[0029]预置模块,用于预先获取不同文件的文件格式,并为每一种文件格式配置与该文件格式对应的测试值;
[0030]所述替换模块具体用于:
[0031]确定所述输入文件对应的目标文件格式,并查找出与所述目标文件格式对应的测试值;
[0032]将查找出的所述测试值作为目标测试值,并将所述目标字段信息指示的长度值替换为所述目标测试值。
[0033]可选的,所述装置还包括:
[0034]信息获取模块,用于获取所述漏洞检测的检测过程中所述目标程序产生的异常信息,并确定出所述异常信息对应的测试值;
[0035]更新模块,用于根据所述信息获取模块获取的所述异常信息对应的测试值,对配置的与所述目标文件格式对应的测试值进行更新。
[0036]可选的,所述目标测试值为预先配置的边界值。
[0037]实施本发明实施例,具有如下有益效果:
[0038]在本发明实施例中,可通过对目标程序的输入文件的结构进行解析,得到该输入文件的多个字段信息,并从该多个字段信息中查找出用于标识长度的目标字段信息,从而将该目标字段信息指示的长度值替换为预置的测试值,并根据该测试值对该目标程序进行漏洞检测,使得有效减少了生成的测试数据的规模,从而有效提升了程序漏洞的检测效率。
【附图说明】
[0039]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0040]图1是本发明实施例提供的一种程序漏洞检测方法的流程示意图;
[0041]图2是本发明实施例提供的另一种程序漏洞检测方法的流程示意图;
[0042]图3是本发明实施例提供的一种程序漏洞检测装置的结构示意图;
[0043]图4是本发明实施例提供的另一种程序漏洞检测装置的结构示意图;
[0044]图5是本发明实施例提供的一种终端设备的结构示意图。
【具体实施方式】
[0045]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046]本发明实施例公开了一种程序漏洞检测方法、装置及终端设备,能够解决由于生成的测试数据规模大而导致的漏洞挖掘效率低的问题。以下分别详细说明。
[0047]请参阅图1,图1是本发明实施例提供的一种程序漏洞检测方法的流程示意图。具体的,如图1所示,本发明实施例的所述程序漏洞检测方法可以包括以下步骤:
[0048]101、对目标程序的输入文件的结构进行解析,得到包括所述输入文件的至少一个字段信息的字段信息集合。
[0049]其中,所述目标程序为需要进行漏洞检测的程序,该输入文件可以为对该目标程序进行漏洞检测的样本文件。可选的,该输入文件可根据所述目标程序的类型信息预先配置得到。
[0050]需要说明的是,本发明实施例的所述方法可具体应用于终端设备,如智能手机(如Android手机、1S手机等)、平板电脑、移动互联网设备(Mobile Internet Devices,简称“MID”)、个人电脑等终端设备中,本发明实施例不做限定。从而实现对安装于该终端设备的程序软件的漏洞检测。
[0051]102、从所述字段信息集合的字段信息中查找出用于标识长度的目标字段信息。
[0052]具体实施例中,该输入文件中包括多个字段信息,如用于标识文件内容长度的长度字段信息、用于标识文件内容的属性(如颜色、字体等)的属性字段信息等等。由此,可从该多个字段信息中查找出用于标识文件内容长度的长度字段信息即目标字段信息,并进一步解析得到该目标字段信息指示的该文件内容的长度值。
[0053]103、将所述目标字段信息指示的长度值替换为预先配置的目标测试值,并根据所述目标测试值对所述目标程序进行漏洞检测。
[0054]具体实施例中,可预先配置一些用于替换字段信息指示的长度值的测试值,比如将某些边界值,如10、0x10、20、0x20、100等等作为该测试值。具体的,在查找出该用于标识长度的目标字段信息并解析得到该目标字段信息指示的长度值之后,即可通过该预置的目标测试值如该边界值替换该目标字段信息指示的长度值,从
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1