基于决策树的模糊测试方法和装置与流程

文档序号:28922738发布日期:2022-02-16 13:36阅读:104来源:国知局
1.本技术涉及系统测试
技术领域
:,具体而言,涉及一种基于决策树的模糊测试方法和装置。
背景技术
::2.模糊测试,是一种通过向目标系统提供非预期的输入并监视异常结果来发现软件漏洞的方法。目前,常用的模糊测试工具是afl(americanfuzzylop),这种模糊测试工具通过记录输入样本的代码覆盖率,从而调整输入样本以提高覆盖率,增加发现漏洞的概率。但是,这种模糊测试工具只能通过直接输入样本进行突变,而不能通过模板来生成样本进行样本数据的突变。从而导致一些文件格式中无法发现一些特别的程序路径和一些漏洞。此外,现有技术中也存在一些可以利用模板在生成样本数据的方式,但是这类方式仅能按照模板固有的数据格式生成数据,导致最终得到的畸形数据形式单一,降低漏洞发现概率。技术实现要素:3.本技术的目的包括,例如,提供了一种基于决策树的模糊测试方法和装置,其能够提高畸形数据形式,进而提高漏洞发现概率。4.本技术的实施例可以这样实现:5.第一方面,本技术提供一种基于决策树的模糊测试方法,所述方法包括:6.利用改造的bt模板按照目标数据格式对样本数据进行解析,获得所述目标数据格式下的文件数据,所述bt模板为目标文件编辑器的模板语言编写的模板;7.基于所述文件数据生成决策树;8.对所述决策树进行变异处理,并对变异后的决策树进行解析,获得畸形数据;9.运行目标程序以解析所述畸形数据,根据所述目标程序的运行信息确定系统漏洞。10.在可选的实施方式中,所述目标数据格式包括结构是否存在的标志、结构数据的长度以及数据类型的描述信息。11.在可选的实施方式中,所述对所述决策树进行变异处理的步骤,包括以下至少之一:12.对所述决策树中文件数据的所述结构是否存在的标志进行翻转变异处理;或13.对所述决策树的文件数据进行随机数的添加,其中,所述随机数来自预设的包含多个特殊字符的字典,所述特殊字符为历史确定的可供进行系统漏洞测试的字符;或14.针对所述决策树的文件数据中的结构数据,对所述结构数据进行随机剪切、拼接和重复设置处理。15.在可选的实施方式中,所述决策树中的文件数据包含多个分类,所述多个分类划分为带有数据的分类和不带数据的分类;16.所述对变异后的决策树进行解析,获得畸形数据的步骤,包括:17.对变异后的决策树进行解析,确定其中的父类结构和子类结构,并确定出所述多个分类中带有数据的分类和不带数据的分类;18.根据所述父类结构、子类结构、带有数据的分类和不带数据的分类,生成畸形数据。19.在可选的实施方式中,所述运行目标程序以解析所述畸形数据,根据所述目标程序的运行信息确定系统漏洞的步骤,包括:20.运行目标程序以解析所述畸形数据;21.通过检测工具获得所述目标程序的运行路径;22.基于所述运行路径确定系统漏洞。23.在可选的实施方式中,所述通过检测工具获得所述目标程序的运行路径的步骤,包括:24.通过检测工具对所述目标程序进行二进制插桩;25.在所述目标程序运行结束后,基于二进制插桩后的运行信息获得所述目标程序的运行路径。26.在可选的实施方式中,所述通过检测工具对所述目标程序进行二进制插桩的步骤,包括:27.通过检测工具将所述目标程序的代码解析为汇编代码;28.将所述汇编代码拆分为多个代码块,在每个所述代码块中插入一条计数数组;29.在每检测到程序运行经过任一代码块时,则将该代码块中插入的计数数组对应位置计数加1。30.在可选的实施方式中,所述方法还包括:31.在每个所述代码块中插入判断语句,所述判断语句用于对特定代码常量进行检测;32.在所述目标程序运行过程中,在基于所述判断语句判定运行至所述特定代码常量的代码块时,对所述畸形数据进行优化处理,以使所述畸形数据通过该代码块。33.在可选的实施方式中,所述对所述畸形数据进行优化处理的步骤,包括:34.将所述特定代码常量注入到所述畸形数据中。35.第二方面,本技术提供一种基于决策树的模糊测试装置,所述装置包括:36.解析模块,用于利用改造的bt模板按照目标数据格式对样本数据进行解析,获得所述目标数据格式下的文件数据,所述bt模板为目标文件编辑器的模板语言编写的模板;37.生成模块,用于基于所述文件数据生成决策树;38.变异模块,用于对所述决策树进行变异处理,并对变异后的决策树进行解析,获得畸形数据;39.运行模块,用于运行目标程序以解析所述畸形数据,根据所述目标程序的运行信息确定系统漏洞。40.本技术实施例的有益效果包括,例如:41.本技术提供一种基于决策树的模糊测试方法和装置,通过利用改造的bt模板按照目标数据格式对样本数据进行解析,获得目标数据格式下的文件数据,基于文件数据生成决策树,对决策树进行变异处理,并对变异后的决策树进行解析获得畸形数据,最后运行目标程序以解析畸形数据,根据目标程序的运行信息确定系统漏洞。该方案,可以基于改造的bt模板按目标数据格式生成文件数据,可基于需求丰富文件数据的格式,且通过对决策树进行变异,进一步地提高最终得到的畸形数据的形式,从而可以更好地探测系统漏洞,提高漏洞发现概率。附图说明42.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。43.图1为本技术实施例提供的基于决策树的模糊测试方法的流程图;44.图2为本技术实施例提供的ttf格式文件的结构数据信息;45.图3为图1中步骤s104包含的子步骤的流程图;46.图4为图3中步骤s1042包含的子步骤的流程图;47.图5为本技术实施例提供的基于决策树的模糊测试方法中,优化方法的流程图;48.图6为本技术实施例提供的电子设备的结构框图;49.图7为本技术实施例提供的基于决策树的模糊测试装置的功能模块框图。50.图标:110-处理器;120-存储器;130-通信单元;140-基于决策树的模糊测试装置;141-解析模块;142-生成模块;143-变异模块;144-运行模块。具体实施方式51.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。52.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。53.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。54.在本技术的描述中,需要说明的是,在不冲突的情况下,本技术的实施例中的特征可以相互结合。55.fuzzing是一种挖掘漏洞的模糊测试方法。现有技术中常用的模糊测试工具为afl,afl是一种基于覆盖引导(coverage-guided)的模糊测试工具。afl的工作流程大致是,从源码编译程序时进行插桩,以记录代码覆盖率,选择一些输入文件,作为初始测试集加入输入队列,将队列中的文件按一定的策略进行突变,如果经过变异后文件更新了覆盖范围,则将其保留添加到队列中,循环上述过程,期间触发了crash的文件会被记录下来。56.afl工具是直接通过读取提供的测试数据来进行算法变异的,导致一些文件格式中无法发现一些特别的程序路径和一些漏洞。例如,afl进行模糊测试时,很难发现ual、doublefree等内存释放的漏洞。57.此外,现有技术中也有一些利用模板来生成测试数据的方式,例如formatfuzzer,formatfuzzer是一个高效、高质量地生成和解析二进制输入的框架,其使用来自010编辑器的二进制模板,具有超过170个二进制模板,可以直接使用,也可以通过formatfuzzer改编后使用。生成的formatfuzzer器非常高效,每秒可生成数千个带有测试输入的文件。但是,这种方式中只能按照其模板固定的数据格式生成数据,导致数据形式单一、漏洞发现概率较低。58.基于上述研究发现,本技术提供一种基于决策树的模糊测试方案,该方案可以基于改造的bt模板按目标数据格式生成文件数据,可基于需求丰富文件数据的格式,且通过对决策树进行变异,进一步地提高最终得到的畸形数据的形式,从而可以更好地探测系统漏洞,提高漏洞发现概率。59.请参阅图1,为本技术实施例提供的基于决策树的模糊测试方法的流程图,该基于决策树的模糊测试方法有关的流程所定义的方法步骤可以由模糊测试相关的电子设备实现。下面将对图1所示的具体流程进行详细阐述。60.步骤s101,利用改造的bt模板按照目标数据格式对样本数据进行解析,获得所述目标数据格式下的文件数据,所述bt模板为目标文件编辑器的模板语言编写的模板。61.步骤s102,基于所述文件数据生成决策树。62.步骤s103,对所述决策树进行变异处理,并对变异后的决策树进行解析,获得畸形数据。63.步骤s104,运行目标程序以解析所述畸形数据,根据所述目标程序的运行信息确定系统漏洞。64.本实施例中,所述的目标文件编辑器可以是010editor,010editor使用二进制模板技术来解析二进制数据,支持170多种格式。而bt模板为010editor专有的模板语言编写的模板,用于解析二进制数据的格式。65.现有的bt模板可以支持多种文件格式,例如avi、bmp、gif、jpg、midi、mp3、mp4、pcap、png、wav、zip等,但是在每种文件格式下仅能按照其固定的数据格式对样本数据进行解析。本实施例中,可以对现有的bt模板进行改造,改造的过程可以是开发人员进行开发改造,改造的最终目的是可以利用改造的bt模板按照目标数据格式对样本数据进行解析。66.其中,所述的目标数据格式包括结构是否存在的标志、结构数据的长度以及数据类型的描述信息。例如,改造后的bt模板的目标数据格式可如下:67.01:02s0a00,此数据格式中1表示此结构存在,02表示结构数据的长度,s表示该数据为结构数据。此外,在数据格式中还包括如,d表示数据,n表示数组,x表示固定数据不可变异。68.由于模板信息是由文件格式构成的,按照这个模板格式来生成文件数据,而通过变异这个模板格式可获得不同的数据格式,从而获得变异的文件数据。69.在此基础上,可以基于解析得到的目标数据格式下的文件数据生成决策树。后续需要基于决策树生成畸形数据,该畸形数据用于探测系统漏洞。70.为了进一步地提高得到的畸形数据的形式,从而提高探测到系统漏洞的概率,因此本实施例中,可对决策树进行变异,变异前后的决策树不同,从而基于样本数据可以得到多组不同的形式的畸形数据。71.在基于变异后的决策树得到畸形数据后,可以运行目标程序来解析畸形数据,目标程序内部的代码对畸形数据进行解析,若存在越多的代码对畸形数据进行解析,也即畸形数据经过越多的程序路径,则可以测试目标程序中的越多代码,从而可以更大概率的确定系统漏洞。72.因此,本实施例中,可在目标程序运行结束后,基于运行信息确定系统漏洞。73.本实施例中,通过模板的模糊测试,将会依据文件特定格式变异,会出现畸形的文件格式,从而使程序解析出现漏洞和bug。74.本实施例所提供的基于决策树的模糊测试方法,可以基于改造的bt模板按目标数据格式生成文件数据,可基于需求丰富文件数据的格式,且通过对决策树进行变异,进一步地提高最终得到的畸形数据的形式,从而可以更好地探测系统漏洞,提高漏洞发现概率。75.在本实施例中,基于文件数据生成决策树,决策树中具体数据是以0和1的数据组成。在对决策树进行变异时,作为一种可能的实现方式,可对决策树中文件数据的结构是否存在标志进行翻转变异处理。例如,针对文件数据的数据格式01:02s0a00,此处01中的1表示此结构数据后续再生成实际文件时将会存在此结构,而进行翻转变异后,则变异为00,此时表征此结构生成实际文件时将会取消。76.在另一种可能的实现方式中,对决策树进行变异处理时,可以对决策树的文件数据进行随机数的添加,其中,随机数来自预设的包含多个特殊字符的字典,特殊字符为历史确定的可供进行系统漏洞测试的字符,例如,特殊字符可以是历史测试中,目标程序中的代码进行解析的字符。77.例如,特殊字符可如:header="\x7f\x45\x4c\x4b";"\x3e\x00";"\x03\x00"。78.此外,作为一种可能的实现方式,在对决策树进行变异时,还可以针对决策树的文件数据中的结构数据,对结构数据进行随机剪切、拼接和重复设置处理。也即,对上述数据类型为s为结构数据进行该种变异处理。其中,剪切即为对结构数据的组成部分进行剪切操作,在此基础上,可以将剪切的数据部分进行拼接,并且,还可以对数据部分进行复制从而重复设置。79.本实施例中,通过以上的对决策树进行变异处理的目的,是为了最终生成可靠的畸形数据,使系统解析到此畸形数据而导致崩溃。80.此外,在本实施例中,除了可以对决策树进行变异之外,还可以对输入的样本数据进行变异,也即,在解析之前即可以对样本数据本身进行变异。81.本实施例中,可对上述变异后的决策树进行解析,获得畸形数据。其中,决策树中的文件数据包含多个分类,多个分类划分为带有数据的分类和不带数据的分类。例如,以ttf文件为例,ttf文件可分为多个table分类。82.作为一种可能的实现方式,可对变异后的决策树进行解析,确定其中的父类结构和子类结构,并确定多个分类中带有数据的分类和不带数据的分类。再根据父类结构、子类结构、带有数据的分类和不带数据的分类,生成畸形数据。83.本实施例中,在对变异后的决策树解析后,保存所有父类结构和子类结构。所属同一大类的分类写入到相同的文件中,将带数据的分类保存到单独的文件中。生成畸形数据时,可以读取上述文件,按照带有数据的分类,并根据父类结构、子类结构等信息生成畸形数据。84.请结合参阅图2,本实施例中,以ttf文件为例,可以得到如图2中所示的ttf的各个子结构。85.此外,本实施例中,作为一种可能的实施方式,还可以对生成的畸形数据进行直接变异处理,变异的目标同样地是为了丰富畸形数据的形式,以更大概率的探测系统漏洞。86.本实施例中,在得到畸形数据的基础上,可以运行目标程序以进行系统漏洞测试。请参阅图3,本实施例中,可以通过以下方式确定系统漏洞:87.步骤s1041,运行目标程序以解析所述畸形数据。88.步骤s1042,通过检测工具获得所述目标程序的运行路径。89.步骤s1043,基于所述运行路径确定系统漏洞。90.本实施例中,可以利用底层检测工具tinyinst来获得目标程序的运行路径,tinyinst是一种轻量级的动态检测库。而目标程序的运行路径则表征目标程序中解析畸形数据的代码块,也即,畸形数据通过的代码块。从而对系统漏洞进行探测。91.请参阅图4,在本实施例中,通过检测工具获得目标程序的运行路径的步骤中,可以通过以下方式实现:92.步骤s10421,通过检测工具对所述目标程序进行二进制插桩。93.步骤s10422,在所述目标程序运行结束后,基于二进制插桩后的运行信息获得所述目标程序的运行路径。94.本实施例中,可利用bitmap通过二进制插桩的方式获取程序运行的路径覆盖率。95.详细地,可以通过检测工具将目标程序的代码解析为汇编代码,将汇编代码拆分为多个代码块,在每个代码块中插入一条计数数组。在每检测到程序运行经过任一代码块时,则将该代码块中插入的计数数组对应位置计数加1。96.本实施例中,底层检测工具tinyinst通过调用inter的xed来解析目标程序的代码为汇编代码。x86编码器解码器(xed)是用于编码和解码x86(ia32和intel64)指令的软件库。获取到目标程序的汇编代码后,将汇编代码拆分为jmp、jz、jnz等判断和跳转的代码块。在每个代码块中插入一条计数数组,该计数数组为bitmap。每当程序运行经过了代码块,则代码块插入的计数数组对应位置计数加1。当程序运行完后,可基于计数数组的位置以及计数数组中的计数情况,确定经过的代码块。97.通过程序运行结束后的bitmap,可以判断输入的畸形数据的可靠性。可以基于bitmap中的计数情况以及所在位置,判断畸形数据的测试效果。测试的目的是使畸形数据能够经过更多的程序路径,也就是使程序更多代码去解析畸形数据,如此能够测试程序中的更多的代码,从而探测更多的系统漏洞。98.本实施例中,通过运行目标程序解析畸形数据,希望畸形数据能够经过更多的代码块。但是,目标程序中某些代码块可能由于为特定代码常量,例如0xffffffff到0xffff,导致阻碍畸形数据通过,进而影响系统漏洞探测。99.基于此考虑,请参阅图5,本实施例提供的模糊测试方法还可包括以下步骤:100.步骤s201,在每个所述代码块中插入判断语句,所述判断语句用于对特定代码常量进行检测。101.步骤s202,在所述目标程序运行过程中,在基于所述判断语句判定运行至所述特定代码常量的代码块时,对所述畸形数据进行优化处理,以使所述畸形数据通过该代码块。102.本实施例中,在插入bitmap计数数组的同时,还可在代码块中插入判断语句。该判断语句的作用是,在运行至该代码块时,以判断确定该代码块是否特定代码常量的代码块。如果判定为特定代码常量的代码块,则提示对畸形数据进行优化处理的提示信息。103.在本实施例中,该提示信息可以提示开发人员对畸形数据进行优化,优化的方式可以是,基于开发人员的操作,将特定代码常量注入到畸形数据中,从而达到对畸形数据优化的目的。从而,使得优化处理后的畸形数据可以通过该特定代码常量的代码块,以抵到下一个代码块。104.本实施例所提供的模糊测试方法,依靠010editor提供的支持170多种格式的bt模板,并对bt模板进行改造,利用改造后的bt模板解析样本数据生成决策树,而决策树是由一串二进制数据构成的,通过对决策树进行变异处理生成新的决策树,从而达到对样本数据进行变异的目的。105.利用变异后得到的畸形数据进行系统漏洞的探测。探测时,整套系统由tinyinst提供fuzzing目标程序的bitmap,在目标程序运行结束后,由获取的bitmap来评估变异后得到的畸形数据的可靠性。通过本实施例所提供的模糊测试方法,可以发现更多的系统漏洞,其实际测试效果相较于afl工具而言效果更优。106.图6为本技术实施例提供的一种电子设备的结构示意图,该电子设备可为上述的可用于进行模糊测试的电子设备。如图6所示,该电子设备包括存储器120、处理器110及通信单元130。所述存储器120、处理器110以及通信单元130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。107.其中,存储器120用于存储程序或者数据。所述存储器120可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。108.处理器110用于读/写存储器120中存储的数据或程序,并执行上述任意实施例的基于决策树的模糊测试方法。109.通信单元130用于通过网络建立电子设备与其它通信终端之间的通信连接,并用于通过网络收发数据。110.应当理解的是,图6所示的结构仅为电子设备的结构示意图,所述电子设备还可包括比图6中所示更多或者更少的组件,或者具有与图6所示不同的配置。图6中所示的各组件可以采用硬件、软件或其组合实现。111.请参阅图7,为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种基于决策树的模糊测试装置140的实现方式,可选地,该基于决策树的模糊测试装置140可以采用上述图6所示的电子设备的器件结构。112.图7为本技术实施例提供的一种基于决策树的模糊测试装置140的功能模块图。需要说明的是,本实施例所提供的基于决策树的模糊测试装置140,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该基于决策树的模糊测试装置140包括:113.解析模块141,用于利用改造的bt模板按照目标数据格式对样本数据进行解析,获得所述目标数据格式下的文件数据,所述bt模板为目标文件编辑器的模板语言编写的模板;114.可以理解,该解析模块141可以用于执行上述步骤s101,关于该解析模块141的详细实现方式可以参照上述对步骤s101有关的内容。115.生成模块142,用于基于所述文件数据生成决策树;116.可以理解,该生成模块142可以用于执行上述步骤s102,关于该生成模块142的详细实现方式可以参照上述对步骤s102有关的内容。117.变异模块143,用于对所述决策树进行变异处理,并对变异后的决策树进行解析,获得畸形数据;118.可以理解,该变异模块143可以用于执行上述步骤s103,关于该变异模块143的详细实现方式可以参照上述对步骤s103有关的内容。119.运行模块144,用于运行目标程序以解析所述畸形数据,根据所述目标程序的运行信息确定系统漏洞。120.可以理解,该运行模块144可以用于执行上述步骤s104,关于该运行模块144的详细实现方式可以参照上述对步骤s104有关的内容。121.在一种可能的实现方式中,所述目标数据格式包括结构是否存在的标志、结构数据的长度以及数据类型的描述信息。122.在一种可能的实现方式中,所述变异模块143可以通过以下至少一种方式实现变异处理:123.对所述决策树中文件数据的所述结构是否存在的标志进行翻转变异处理;或124.对所述决策树的文件数据进行随机数的添加,其中,所述随机数来自预设的包含多个特殊字符的字典,所述特殊字符为历史确定的可供进行系统漏洞测试的字符;或125.针对所述决策树的文件数据中的结构数据,对所述结构数据进行随机剪切、拼接和重复设置处理。126.在一种可能的实现方式中,所述决策树中的文件数据包含多个分类,所述多个分类划分为带有数据的分类和不带数据的分类,所述解析模块141具体可以用于:127.对变异后的决策树进行解析,确定其中的父类结构和子类结构,并确定出所述多个分类中带有数据的分类和不带数据的分类;128.根据所述父类结构、子类结构、带有数据的分类和不带数据的分类,生成畸形数据。129.在一种可能的实现方式中,所述运行模块144具体可以用于:130.运行目标程序以解析所述畸形数据;131.通过检测工具获得所述目标程序的运行路径;132.基于所述运行路径确定系统漏洞。133.在一种可能的实现方式中,所述运行模块144具体可以用于:134.通过检测工具对所述目标程序进行二进制插桩;135.在所述目标程序运行结束后,基于二进制插桩后的运行信息获得所述目标程序的运行路径。136.在一种可能的实现方式中,所述运行模块144具体可以用于:137.通过检测工具将所述目标程序的代码解析为汇编代码;138.将所述汇编代码拆分为多个代码块,在每个所述代码块中插入一条计数数组;139.在每检测到程序运行经过任一代码块时,则将该代码块中插入的计数数组对应位置计数加1。140.在一种可能的实现方式中,上述模糊测试装置还包括优化模块,该优化模块具体可以用于:141.在每个所述代码块中插入判断语句,所述判断语句用于对特定代码常量进行检测;142.在所述目标程序运行过程中,在基于所述判断语句判定运行至所述特定代码常量的代码块时,对所述畸形数据进行优化处理,以使所述畸形数据通过该代码块。143.在一种可能的实现方式中,所述优化模块具体可以用于:144.将所述特定代码常量注入到所述畸形数据中。145.在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,例如包括程序指令的存储器120,上述程序指令可由电子设备的处理器110执行以完成上述的基于决策树的模糊测试方法。146.具体地,该计算机可读存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该计算机可读存储介质上的计算机程序被运行时,能够执行上述基于决策树的模糊测试方法。关于计算机可读存储介质中的及其可执行指令被运行时,所涉及的过程,可以参照上述方法实施例中的相关说明,这里不再详述。147.综上所述,本技术实施例提供的基于决策树的模糊测试方法和装置,通过利用改造的bt模板按照目标数据格式对样本数据进行解析,获得目标数据格式下的文件数据,基于文件数据生成决策树,对决策树进行变异处理,并对变异后的决策树进行解析获得畸形数据,最后运行目标程序以解析畸形数据,根据目标程序的运行信息确定系统漏洞。该方案,可以基于改造的bt模板按目标数据格式生成文件数据,可基于需求丰富文件数据的格式,且通过对决策树进行变异,进一步地提高最终得到的畸形数据的形式,从而可以更好地探测系统漏洞,提高漏洞发现概率。148.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1