车辆CAN总线的测试方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:22005226 阅读:32 留言:0更新日期:2019-08-31 06:50
本申请提出一种车辆CAN总线的测试方法、装置、计算机设备和存储介质,其中,方法包括:通过从测试样本集合中获取目标报文样本;对目标报文样本进行变异处理生成目标异常测试报文;将目标异常测试报文发送至目标设备,并接收目标设备反馈的对应于目标异常测试报文的目标响应报文;若历史响应报文集合中不包括目标响应报文,则基于不同维度对目标响应报文进行数据分析,根据数据分析结果将目标响应报文输入测试样本集合。由此,通过从响应报文中获取覆盖新功能的样本存入测试样本集合中,在模糊测试过程中每次从测试样本集合中获取测试样本进行变异对车辆CAN总线进行模糊测试,增加车辆CAN总线模糊测试的覆盖率,提高车辆CAN总线模糊测试漏洞挖掘的效率。

Test Method, Device, Computer Equipment and Storage Media of Vehicle CAN Bus

【技术实现步骤摘要】
车辆CAN总线的测试方法、装置、计算机设备和存储介质
本申请涉及车辆安全
,尤其涉及一种车辆CAN总线的测试方法、装置、计算机设备和存储介质。
技术介绍
模糊测试是一种应用在互联网中有效的软件漏洞挖掘方法,增加测试覆盖率是提高模糊测试效率的最重要手段。相关技术中,主要是样本执行路径反馈的方式来增加测试覆盖率,现有实现执行路径反馈的技术主要有两种方式:一种是通过代码插桩监控的方式,例如谷歌的clang编译器,可在代码编译时自动插入探针代码监视代码覆盖率,pintool(动态二进制插桩工具)可在二进制代码执行时,实时插入代码监控代码执行覆盖率;另一种是通过虚拟执行的方式监控,例如Qemu(虚拟操作系统模拟器)监控在环境中运行程序的代码覆盖率。然而,车辆CAN总线中的程序通常无法运行在pintool或qemu环境中,也无法重新使用clang编译器编译后载入电子控制单元中运行,传统通过代码插桩的执行路径反馈技术已经不适用于CAN总线的模糊测试中。
技术实现思路
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本申请提出一种车辆CAN总线的测试方法、装置、计算机设备和存储介质,通过从响应报文中获取覆盖新功能的样本存入测试样本集合中,在模糊测试过程中每次从测试样本集合中获取测试样本进行变异对车辆CAN总线进行模糊测试,增加车辆CAN总线模糊测试的覆盖率,提高车辆CAN总线模糊测试漏洞挖掘的效率。为达上述目的,本申请第一方面实施例提出了一种车辆CAN总线的测试方法,包括:从测试样本集合中获取目标报文样本;对所述目标报文样本进行变异处理生成目标异常测试报文;将所述目标异常测试报文发送至目标设备,并接收所述目标设备反馈的对应于所述目标异常测试报文的目标响应报文;若历史响应报文集合中不包括所述目标响应报文,则基于不同维度对所述目标响应报文进行数据分析,根据数据分析结果将所述目标响应报文输入所述测试样本集合。本实施例的车辆CAN总线的测试方法,通过从测试样本集合中获取目标报文样本;对目标报文样本进行变异处理生成目标异常测试报文;将目标异常测试报文发送至目标设备,并接收目标设备反馈的对应于目标异常测试报文的目标响应报文;若历史响应报文集合中不包括目标响应报文,则基于不同维度对目标响应报文进行数据分析,根据数据分析结果将目标响应报文输入测试样本集合。由此,通过从响应报文中获取覆盖新功能的样本存入测试样本集合中,在模糊测试过程中每次从测试样本集合中获取测试样本进行变异对车辆CAN总线进行模糊测试,增加车辆CAN总线模糊测试的覆盖率,提高车辆CAN总线模糊测试漏洞挖掘的效率。为达上述目的,本申请第二方面实施例提出了一种车辆CAN总线的测试装置,包括:第一获取模块,用于从测试样本集合中获取目标报文样本;生成模块,用于对所述目标报文样本进行变异处理生成目标异常测试报文;发送模块,用于将所述目标异常测试报文发送至目标设备,并接收所述目标设备反馈的对应于所述目标异常测试报文的目标响应报文;处理模块,用于若历史响应报文集合中不包括所述目标响应报文,则基于不同维度对所述目标响应报文进行数据分析,根据数据分析结果将所述目标响应报文输入所述测试样本集合。本实施例的车辆CAN总线的测试装置,通过从测试样本集合中获取目标报文样本;对目标报文样本进行变异处理生成目标异常测试报文;将目标异常测试报文发送至目标设备,并接收目标设备反馈的对应于目标异常测试报文的目标响应报文;若历史响应报文集合中不包括目标响应报文,则基于不同维度对目标响应报文进行数据分析,根据数据分析结果将目标响应报文输入测试样本集合。由此,通过从响应报文中获取覆盖新功能的样本存入测试样本集合中,在模糊测试过程中每次从测试样本集合中获取测试样本进行变异对车辆CAN总线进行模糊测试,增加车辆CAN总线模糊测试的覆盖率,提高车辆CAN总线模糊测试漏洞挖掘的效率。为达上述目的,本申请第三方面实施例提出了一种计算机设备,包括:处理器和存储器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如第一方面实施例所述的车辆CAN总线的测试方法。为达上述目的,本申请第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面实施例所述的车辆CAN总线的测试方法。为达上述目的,本申请第五方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现如第一方面实施例所述的车辆CAN总线的测试方法。本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。附图说明本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1为本申请实施例所提供的一种车辆CAN总线的测试方法的流程示意图;图2为本申请实施例所提供的另一种车辆CAN总线的测试方法的流程示意图;图3为本申请实施例所提供的一种车辆CAN总线的测试示例图;图4为本申请实施例所提供的一种车辆CAN总线的测试装置的结构示意图;图5为本申请实施例所提供的另一种车辆CAN总线的测试装置的结构示意图;图6为本申请实施例所提供的又一种车辆CAN总线的测试装置的结构示意图;以及图7为本申请实施例所提供的计算机设备的结构示意图。具体实施方式下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。下面参考附图描述本申请实施例的车辆CAN总线的测试方法、装置、计算机设备和存储介质。图1为本申请实施例所提供的一种车辆CAN总线的测试方法的流程示意图。基于上述
技术介绍
的描述,现有基于覆盖率导向的模糊测试方式主要是通过测试过程中代码覆盖率的反馈增加输入样本,使基于样本变异的用例有机会覆盖到更多的未测试代码路径,然而,并不能够适用于车辆CAN总线模糊测试中以提高车辆CAN总线模糊测试的覆盖率。因此,本申请提出一种车辆CAN总线的测试方法,通过从响应报文中获取覆盖新功能的样本存入测试样本集合中,在模糊测试过程中每次从测试样本集合中获取测试样本进行变异对车辆CAN总线进行模糊测试,增加车辆CAN总线模糊测试的覆盖率,提高车辆CAN总线模糊测试漏洞挖掘的效率。如图1所示,该车辆CAN总线的测试方法可以包括以下步骤:步骤101,从测试样本集合中获取目标报文样本。具体地,本申请实施例的车辆CAN总线的测试方法是在少量测试样本为基础展开的模糊测试过程中,因此,需要预先获取少量种子报文样本来进行测试生成多个响应报文,并从多个响应报文中获取多个待分析响应报文来进行数据分析,根据数据分析结果将多个待分析响应报文生成测试样本集合。也就是说,在测试样本集合中有很多种报文样本,并且是按照一定方式比如数据分析结果对应的报文优先级别等方式进行存储的,需要说明的是,为了进一步提高测试覆盖率,本申请可以从测试样本集合中获取优先级最高的报文样本作为目标报文样本进行测试。其中,报文优先级别的确定是基于不同维度进行确定的,比如响本文档来自技高网
...

【技术保护点】
1.一种车辆CAN总线的测试方法,其特征在于,包括以下步骤:从测试样本集合中获取目标报文样本;对所述目标报文样本进行变异处理生成目标异常测试报文;将所述目标异常测试报文发送至目标设备,并接收所述目标设备反馈的对应于所述目标异常测试报文的目标响应报文;若历史响应报文集合中不包括所述目标响应报文,则基于不同维度对所述目标响应报文进行数据分析,根据数据分析结果将所述目标响应报文输入所述测试样本集合。

【技术特征摘要】
1.一种车辆CAN总线的测试方法,其特征在于,包括以下步骤:从测试样本集合中获取目标报文样本;对所述目标报文样本进行变异处理生成目标异常测试报文;将所述目标异常测试报文发送至目标设备,并接收所述目标设备反馈的对应于所述目标异常测试报文的目标响应报文;若历史响应报文集合中不包括所述目标响应报文,则基于不同维度对所述目标响应报文进行数据分析,根据数据分析结果将所述目标响应报文输入所述测试样本集合。2.如权利要求1所述的方法,其特征在于,在所述从测试样本集合中获取目标报文样本之前,还包括:获取种子报文样本;将所述种子报文样本进行变异处理生成多个异常测试报文;将所述多个异常测试报文发送至目标设备,并接收所述目标设备反馈的对应于所述多个异常测试报文的多个响应报文;从所述多个响应报文中获取多个待分析响应报文;基于不同维度对所述多个待分析响应报文进行数据分析,根据数据分析结果和所述多个待分析响应报文生成测试样本集合。3.如权利要求2所述的方法,其特征在于,所述从所述多个响应报文中获取多个待分析响应报文,包括:获取所述多个响应报文中的响应报文;判断历史响应报文集合中是否包括所述响应报文;若历史响应报文集合不包括所述响应报文,则确定所述响应报文为待分析响应报文。4.如权利要求2所述的方法,其特征在于,所述基于不同维度对所述多个待分析响应报文进行数据分析,包括:获取所述多个待分析响应报文的响应次数;获取所述多个待分析响应报文的不同字段的个数;获取所述多个待分析响应报文的字段变化范围;根据所述多个待分析响应报文的响应次数、所述多个待分析响应报文的不同字段的个数和所述多个待分析响应报文的字段变化范围对所述多个待分析响应报文进行数据分析。5.如权利要求1所述的方法,其特征在于,还包括:对变异处理的所述目标报文样本进行标记,并移出所述测试样本集合。6.一种车辆CAN总线的测试装置,其特征在于,包括:第一获取模块,用于从测试样本集合中获取目标报文样本;生成模块,用于对所述目标报文样本进行变异处理生成目标异常测试报文;发送模块,用于将所述目标异常测试报文发送至目...

【专利技术属性】
技术研发人员:曹伟
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京,11

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

1