CN110007658A - 车辆can总线的异常监测方法和装置 - Google Patents
车辆can总线的异常监测方法和装置 Download PDFInfo
- Publication number
- CN110007658A CN110007658A CN201910184802.5A CN201910184802A CN110007658A CN 110007658 A CN110007658 A CN 110007658A CN 201910184802 A CN201910184802 A CN 201910184802A CN 110007658 A CN110007658 A CN 110007658A
- Authority
- CN
- China
- Prior art keywords
- response message
- response
- exception
- library
- occurrence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0213—Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24065—Real time diagnostics
Abstract
本发明提出一种车辆CAN总线的异常监测方法和装置,其中,方法包括:发送总线测试过程设定的各异常测试报文,获取总线上对应的响应报文,若响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常,若响应报文不存在于预设响应库中,根据响应报文在测试过程中重复出现次数,确定是否监测到异常,通过将获取的响应报文,与预设响应库进行比对,并在响应报文不属于预设响应库时,根据重复出现次数确定是否为异常,实现了对总线上的响应报文的自动化异常监控,解决了现有技术中传统的总线异常监控程序无法运行在车联网的总线应用环境中,主要是通过人的经验判定,效率较低,无法实现自动化识别的技术问题。
Description
技术领域
本发明涉及车辆信息安全技术领域,尤其涉及一种车辆CAN总线的异常监测方法和装置。
背景技术
随着汽车电子技术的发展和对汽车性能要求的提高,汽车上电控单元(ECU,Electronic Control Unit)数量越来越多,各个电控单元之间的交互信息通过控制器局域网总线(CAN,Controller Area Network)等组成的网络来实现,ECU单元的异常和安全漏洞,使得车联网安全问题日益突出,从而,对CAN总线进行模糊测试来实现异常监控,逐渐被安全研究人员提起和应用。
在传统的模糊测试应用场景中,通常利用操作系统提供的系统接口或网络端口,运行额外的监控程序去监控待测服务是否存在漏洞,但传统计算机领域的模糊测试异常监控方法没有考虑到CAN网络的特殊性,这是由于CAN总线服务程序通常运行在电子器件中,而电子器件多数没有操作系统,无法在模糊测试过程中通过运行监控程序发现漏洞,例如,内存异常监控方法和COMMAND监控方法。目前,能运用在CAN总线的模糊测试中的异常监控方法较少,主要是通过人工观察电子器件功能是否正常或停止工作,缺少一种异常感知能力更强且自动化的异常监控方法。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的第一个目的在于提出一种车辆CAN总线的异常监测方法,将从总线上获取的响应报文,与预设响应库进行比对确定是否存在异常,当响应报文不属于预设响应库时,根据重复出现次数确定是否为异常,实现了测试过程中总线上的响应报文的自动化异常监控,解决了现有技术中传统的总线异常监控程序无法运行在车联网的总线应用环境中,主要是通过人的经验判定,效率较低,无法实现自动化识别的技术问题。
本发明的第二个目的在于提出一种车辆CAN总线的异常监测装置。
本发明的第三个目的在于提出一种计算机设备。
本发明的第四个目的在于提出一种非临时性计算机可读存储介质。
为达上述目的,本发明第一方面实施例提出了一种异常监测方法,包括:
发送总线测试过程设定的各异常测试报文;
获取总线上对应的响应报文;
若所述响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常;
若所述响应报文不存在于所述预设响应库中,根据所述响应报文在所述测试过程中重复出现次数,确定是否监测到异常。
为达上述目的,本发明第二方面实施例提出了一种车辆CAN总线的异常监测装置,包括:
发送模块,用于发送总线测试过程设定的各异常测试报文;
获取模块,用于获取总线上对应的响应报文;
第一确定模块,用于若所述响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常;
第二确定模块,用于若所述响应报文不存在于所述预设响应库中,根据所述响应报文在所述测试过程中重复出现次数,确定是否监测到异常。
为达上述目的,本发明第三方面实施例提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如第一方面所述的车辆CAN总线的异常监测方法。
为达上述目的,本发明第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如第一方面所述的车辆CAN总线的异常监测方法。
本发明实施例所提供的技术方案可以包含如下的有益效果:
发送总线测试过程设定的各异常测试报文,获取总线上对应的响应报文,若响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常,若响应报文不存在于预设响应库中,根据响应报文在测试过程中重复出现次数,确定是否监测到异常,本发明实施例中,将从总线上获取的响应报文,与预设响应库进行比对确定是否存在异常,当响应报文不属于预设响应库时,根据重复出现次数确定是否为异常,实现了对总线上的响应报文的自动化异常监控。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例所提供的一种车辆CAN总线的异常监测方法的流程示意图;
图2为本发明实施例所提供的另一种车辆CAN总线的异常监测方法的流程示意图;
图3为本发明实施例所提供的又一种车辆CAN总线的异常监测方法的流程示意图;
图4为本发明实施例提供的CAN总线模糊测试场景结构示意图;
图5为本发明实施例所提供的再一种车辆CAN总线的异常监测方法的流程示意图;
图6为本发明实施例提供的一种车辆CAN总线的异常监测装置的结构示意图;以及
图7示出了适于用来实现本申请实施方式的示例性计算机设备的框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的车辆CAN总线的异常监测方法和装置。
图1为本发明实施例所提供的一种车辆CAN总线的异常监测方法的流程示意图。
如图1所示,该方法包括以下步骤:
步骤101,发送总线测试过程设定的各异常测试报文。
具体地,在总线测试过程中,根据预先设定的各异常测试报文,将各异常测试报文通过总线发送至目标设备,作为一种可能的实现方式,各异常测试报文,可以是基于应用场景的协议,将发送报文进行变异得到多种变异性的异常测试报文。
步骤102,获取总线上对应的响应报文。
具体地,在总线测试过程中,对总线进行监听,获取目标设备接收到各异常测试报文后,生成的对应的响应报文。
例如,在车辆的can总线模式测试过程中,模糊测试工具将生成的各异常测试报文通过总线发送至ECU,ECU会根据接收到的各异常测试报文生成对应的响应报文并发送至总线上,模糊测试工具会对总线进行监听,从而获取对应的ECU生成的响应报文。
步骤103,若响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常。
其中,预设响应库是预先生成的,预设响应库是根据测试场景对应的协议和/或人工的经验值生成的,包含指示正常状态的正常响应库和指示异常状态的异常响应库,其中,正常响应库包含符合正常响应库规则的正常响应报文,异常响应库包含符合异常响应库规则的异常响应报文。
具体地,将获取到的响应报文和预设的响应库中存储的报文进行对比,若响应报文存在于预设响应库中,根据预设响应库指示的正常或异常状态,确定获取到的响应报文是正常状态还是异常状态,若为异常状态,则确定检测到异常。
步骤104,若响应报文不存在于预设响应库中,根据响应报文在测试过程中重复出现次数,确定是否监测到异常。
其中,响应报文在测试过程中重复出现的次数,作为一种可能的实现方式,可以是将所有的相应报文进行重复出现次数进行统计,具体可以是在测试完成后对测试过程中获取到的所有的响应报文进行重复次数统计得到的,或者也可以是在每次接收到响应报文即进行重复出现次数的统计,测试完成,则统计完成。作为另一种可能的实现方式,可以是仅将不存在与预设响应库中的响应报文进行重复出现次数的统计。
具体地,若响应报文不存在与预设响应库中,则根据响应报文在测试过程中统计得到的重复出现次数,根据预测的阈值,确定报文是正常状态,还是稀有响应报文,一般来说响应报文出现的次数越多,即出现的概率愈大,则为正常的可能性则越高,而响应报文出现的次数非常少时,则可能为稀有报文,可进一步识别稀有报文是否为异常或正常,和/或,可用于更新总线测试过程中的测试用例,从而,不仅实现了总线测试过程中,异常报文监测的自动化,提高了异常监测的效率,同时,也大大降低了需要进一步核查是否异常的报文数量,提高了效率。
本发明实施例的总线异常监测方法中,发送总线测试过程设定的各异常测试报文,获取总线上对应的响应报文,若响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常,若响应报文不存在于预设响应库中,根据响应报文在测试过程中重复出现次数,确定是否监测到异常,本发明实施例中,将从总线上获取的响应报文,与预设响应库进行比对确定是否存在异常,当响应报文不属于预设响应库时,根据重复出现次数确定是否为异常,实现了对总线上的响应报文的自动化异常监控,解决了现有技术中传统的总线异常监控程序无法运行在车联网的总线应用环境中,主要是通过人的经验判定,效率较低,无法实现自动化识别的技术问题。
基于上一实施例,本发明实施例提供了另一种车辆CAN总线的异常监测方法,进一步清楚的说明了,响应报文不存在于预设响应库中时,如何根据响应报文在测试过程中重复出现的次数,确定是否监测到异常,图2为本发明实施例所提供的另一种车辆CAN总线的异常监测方法的流程示意图。
基于上一实施例,上述步骤104还包含如下子步骤:
步骤1041,根据响应报文在测试过程中的重复出现次数,将重复出现次数大于第一设定次数的响应报文,识别为正常状态,并添加到预设响应库中,并记录为正常状态。
其中,第一设定次数,是根据统计经验值设定的,具体可以是根据具体的测试场景,根据经验值设定的。
在实际测试中,报文重复出现次数越多,当大于统计经验值次数时,该报文可直接认定为正常状态的报文,进而,将该识别为正常状态的响应报文添加到预设响应库中,并记录为正常状态,增加了预设响应库中正常状态的响应报文数量,可以提高后续总线测试过程中响应报文异常监测的速度。
步骤1042,将重复出现次数小于第二设定次数的响应报文,识别为稀有响应报文。
其中,第二设定次数也是基于经验值确定的,第二设定次数小于第一设定次数,第二设定次数一般取值较小,例如为3次。
本发明实施例中,将重复出现次数非常少的,即将重复出现次数小于第二设定次数的响应报文,会识别为稀有响应报文,而稀有响应报文可进一步判定是正常或者异常状态的响应报文,大大缩减了需要进一步判定的报文数量,提高了异常识别的效率,和/或,稀有报文用于更新总线测试过程中的测试用例,将该测试用例加入到测试用例生成模板,进行更加深度的测试,以发现隐藏在代码更深处的安全漏洞,提高了异常监测的目的性和效率。
本发明实施例的总线异常测试方法中,将获取的响应报文与预设报文库进行对比,若响应报文不属于预设响应库,则根据响应报文在测试过程中重复出现的次数,将出现的重复次数大于第一设定次数的响应报文,识别为正常状态,将重复出现次数小于第二设定次数的响应报文识别为稀有状态报文,并可以对稀有状态报文进一步进行核实是否为正常状态或异常状态,例如通过人工来核查时大大降低了需要人工核查的数量,提高了异常识别的效率,还可以将稀有状态报文用于更新总线测试的测试用例,用于更深入的测试,提高了异常监测的目的性和效率。
上述实施例中描述了以报文出现的次数,确定是否监测到异常,为了提高异常监测的准确性,本实施例提供了又一种车辆CAN总线的异常监测方法的可能的实现方式,将获取到的响应报文都存储至响应报文集合数据库中,通过对响应报文在测试过程中出现次数和排名,确定是否监测到异常,图3为本发明实施例所提供的又一种车辆CAN总线的异常监测方法的流程示意图。本实施例提供了一种具体的应用场景,即CAN总线的模糊测试过程中,并结合图4的异常监测结构图,对本实施例的总线异常监测方法进行说明。
如图3所示,该方法可以包括以下步骤:
步骤301,发送总线测试过程设定的各异常测试报文。
步骤302,获取总线上对应的响应报文。
本发明实施例的方法可以适用于多种应用场景中,本实施例中以CAN UDS协议的安全认证场景(即UDS 0x27服务)为例进行说明。
在车辆的CAN总线异常监测场景中,模糊测试时会基于当前的测试场景确定对应的发送报文,并基于要发送的报文进行变异生成异常测试报文,将变异后对应的各异常测试报文,发送至ECU,并对CAN总线进行报文监测,以获取总线上ECU根据接收到的异常测试报文生成的对应的响应报文。
需要说明的是,模糊测试工具会经过预设次数的迭代,以生成预定次数的大量异常测试报文,以提高异常监测的可靠性和准确性,其中,以UDS的安全认证场景来讲,每次测试迭代包括发送两次报文请求和接收两次报文响应,模糊测试时的每轮迭代时会随机选一个发送报文请求进行变异或两个都变异(选择随机化)以生成异常测试报文,响应报文在该场景中也进行细分,对应于第几个异常测试报文的响应,以便于在后续监测到异常响应报文或稀有响应报文时,可以确定对应的异常测试报文,便于进行测试案例的重现或是生成更有价值的测试用例。
步骤303,将获取到的响应报文,存储至响应报文集合数据库中,并对重复出现的响应报文进行出现次数统计。
具体地,对总线上的响应报文进行监测,对于获取到的响应报文,均存储至响应报文集合数据库中,并对重复出现的响应报文进行出现次数的统计。
步骤304,根据统计的出现次数,进行响应报文的排名。
具体地,根据统计得到的各响应报文出现的次数,进行响应报文的排名。
步骤305,判断响应报文是否存在于预设响应库中,若是,执行步骤306,若否,执行步骤307。
本发明实施例中,在CAN UDS协议的安全认证场景中,根据经验预先生成的预设响应库包含正常响应库和异常响应库,其中,正常响应库包含符合正常响应库规则的正常响应报文,例如为:04 67 sub_seed XXXX,异常响应库包含符合异常响应库规则的异常响应报文,例如为:03 7f 27 NRC XXXXX。
具体地,将响应报文集合数据库中存储的各响应报文,和正常响应库和异常响应库中的响应报文进行比对,判断响应报文是否属于预设响应库的正常响应库或异常响应库,若属于预设响应库,执行下述的步骤306,若不属于预设响应库,执行下述的步骤307。
步骤306,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常。
例如,在AN UDS协议的安全认证场景中,若响应报文为03 7f 27 NRC 02 67 sub_key,则该响应报文符合异常响应库中的异常报文规则,则确定该响应报文为异常响应报文,说明系统可能存在绕过安全认证的漏洞。
步骤307,根据响应报文在测试过程中的出现次数和排名,确定是否监测到异常。
具体地,将在测试过程中出现次数大于第一设定次数,且排名靠前的响应报文,识别为正常状态的响应报文,其中,排名靠前,可以预设属于排名靠前的第一排名阈值,例如,第一排名阈值为5,也就是说将在测试过程中出现次数大于第一设定次数,且排名在前5名以内的响应报文识别为正常状态的响应报文,需要说明是,因排名中可能包含属于预设响应库中的异常响应报文,因此当依据出现次数和排名确定的正常状态的响应报文包含异常状态的响应报文时,需要将异常状态的响应报文去除,保留下的响应报文才属于识别得到的正常状态的响应报文。进而,可将该正常状态的响应报文存储至预设响应库中的正常响应库中。
同时,将在测试过程中出现次数小于第二设定次数,且排名靠后的响应报文,识别为稀有响应报文,其中,排名靠后,可以预设属于排名靠前的第二排名阈值,例如,根据排名的总个数1000,确定第二排名阈值为900,第一设定次数为2次,也就是说将在测试过程中出现次数小于2次,且排名在后900名-1000以内的响应报文识别为稀有响应报文,需要说明是,因排名中可能包含属于预设响应库中的正常状态的响应报文或异常状态的响应报文,因此当依据出现次数和排名确定的稀有响应报文包含正常状态的响应报文或异常状态的响应报文时,需要将正常状态的响应报文和异常状态的响应报文去除,保留下的响应报文才属于识别得到的稀有状态响应报文。进而稀有响应报文用于判定正常或者异常状态,和/或,用于更新总线测试过程,以发现更加有价值的测试用例,以进行更加深度的测试,发现系统漏洞,维护车辆运行的安全性。
通过响应报文在测试过程中的出现次数和排名,确定是否监测到异常,通过出现次数和排名的双重机制进行异常监测,提高了识别得到的正常状态报文、稀有响应报文的可靠性,同时降低了需要进一步核查的稀有报文的数量,降低了核查的成本,提高了效率。
需要说明的是,本实施例的方法可以应用于车辆的CAN总线测试的其它多个场景中,对于应用于其它场景中的原理相同,本实施例中不再一一赘述。
本发明实施例的异常监测方法中,将获取到的响应报文均存储至响应报文集合数据库中,并对获取的所有的报文统计次数,并根据统计次数进行排名,进而通过响应报文在测试过程中的出现次数和排名,确定是否监测到异常,通过出现次数和排名的双重机制进行异常监测,提高了识别得到的正常状态报文、稀有响应报文的可靠性,同时降低了需要进一步核查的稀有报文的数量,降低了核查的成本,提高了效率。
基于上述实施例,本发明实施例提供了再一种车辆CAN总线的异常监测方法的可能的实现方式,仅对不属于预设响应库中的响应报文存储至响应报文集合数据库中,并对所述响应报文在测试过程中出现次数和排名,确定是否监测到异常,图5为本发明实施例所提供的再一种车辆CAN总线的异常监测方法的流程示意图。
如图5所示,该方法,包括如下步骤:
步骤501,发送总线测试过程设定的各异常测试报文。
步骤502,获取总线上对应的响应报文。
具体可参照上一实施例中的步骤301-302,原理相同,此处不再一一赘述。
步骤503,判断响应报文是否存在于预设响应库中,若是,执行步骤504,若否,执行步骤505。
步骤504,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常。
具体可参照上一实施例中的步骤305-306,原理相同,此处不再一一赘述。
步骤505,将不存在于预设响应库中的响应报文,存储至响应报文集合数据库中,并对重复出现的响应报文进行出现次数统计。
本发明实施例中,仅将不属于预设响应库中的响应报文存储至响应报文集合数据库中,并对这部分响应报文进行重复出现次数统计,降低了响应报文集合数据中的存储的数量,提高了运算的效率。
需要说明的是,对于仅出现一次的响应报文也进行统计,即重复出现的次数为1次。
步骤506,根据统计的出现次数,进行响应报文的排名。
步骤507,根据响应报文在测试过程中出现的次数和排名,确定是否监测到异常。
具体地,将在测试过程中出现次数大于第一设定次数,且排名靠前的响应报文,识别为正常状态的响应报文,其中,排名靠前,可以预设属于排名靠前的第三排名阈值,例如,第三排名阈值为3,也就是说将在测试过程中出现次数大于第一设定次数,且排名在前3名以内的响应报文识别为正常状态的响应报文,进而,可将该正常状态的响应报文存储至预设响应库中的正常响应库中。
同时,将在测试过程中出现次数小于第二设定次数,且排名靠后的响应报文,识别为稀有响应报文,其中,排名靠后,可以预设属于排名靠后的第四排名阈值,例如,根据排名的总个数,若排名总数量为1000名,确定第四排名阈值为950,第一设定次数为2次,也就是说将在测试过程中出现次数小于2次,且排名在后950名-1000名之间的响应报文识别为稀有响应报文。进而稀有响应报文可用于进一步判定正常或者异常状态,和/或,用于更新总线测试过程,以发现更加有价值的测试用例,以进行更加深度的测试,发现系统漏洞,维护车辆运行的安全性。
通过响应报文在测试过程中的出现次数和排名,确定是否监测到异常,通过出现次数和排名的双重机制进行异常监测,提高了识别得到的正常状态报文、稀有响应报文的可靠性,同时降低了需要进一步核查的稀有报文的数量,降低了核查的成本,提高了效率。
需要解释的是,本实施例中由于仅对不属于预设响应库中的响应报文进行重复出现次数统计,并根据重复出现次数进行排名,从而该排名中不包含正常状态的响应报文和异常状态的响应报文,从而本实施例中的第三排名阈值取值会较小,第四排名阈值取值会较大,以缩小识别得到的响应报文的数量,提高响应报文识别的准确性。
需要说明的是,本实施例的方法可以应用于车辆的CAN总线测试的其它多个场景中,对于应用于其它场景中的原理相同,本实施例中不再一一赘述。
本发明实施例的异常监测方法中,仅将获取到的不属于预设响应库中的响应报文存储至响应报文集合数据库中,并对所述响应报文报文统计次数,并根据统计次数进行排名,进而通过响应报文在测试过程中的出现次数和排名,确定是否监测到异常,通过出现次数和排名的双重机制进行异常监测,提高了识别得到的正常状态报文、稀有响应报文的可靠性,同时降低了需要进一步核查的稀有报文的数量,降低了核查的成本,提高了效率。
为了实现上述实施例,本发明还提出一种车辆CAN总线的异常监测装置。
图6为本发明实施例提供的一种车辆CAN总线的异常监测装置的结构示意图。
如图6所示,该装置包括:发送模块51、获取模块52、第一确定模块53和第二确定模块54。
发送模块51,用于发送总线测试过程设定的各异常测试报文。
获取模块52,用于获取总线上对应的响应报文。
第一确定模块53,用于若响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常。
第二确定模块54,用于若响应报文不存在于预设响应库中,根据响应报文在测试过程中重复出现次数,确定是否监测到异常。
进一步地,在本发明实施例的一种可能的实现方式中,所述装置还包括:统计模块和排名模块。
统计模块,用于将获取到的所述响应报文,存储至响应报文集合数据库中,并对重复出现的响应报文进行出现次数统计。
排名模块,用于根据统计的出现次数,进行响应报文的排名。
作为一种可能的实现方式,上述第二确定模块54,具体用于:
根据所述响应报文在所述测试过程中出现次数和所述排名,确定是否监测到异常。
作为另一种可能的实现方式,上述第二确定模块54,还包括:第一识别单元、添加单元和第二识别单元。
第一识别单元,用于将所述重复出现次数大于第一设定次数的响应报文,识别为正常状态。
添加单元,用于将所述重复出现次数大于第一设定次数的响应报文,添加到所述预设响应库中,并记录为正常状态。
第二识别单元,用于将所述重复出现次数小于第二设定次数的响应报文,识别为稀有响应报文;其中,所述稀有响应报文用于判定正常或者异常状态,和/或,用于更新所述总线测试过程。
作为又一种可能的实现方式,上述第二确定模块54,还包括:
次数统计单元,用于将不存在于所述预设响应库中的所述响应报文,存储至响应报文集合数据库中,并对重复出现的响应报文进行出现次数统计;
排名单元,用于根据统计的出现次数,进行响应报文的排名;
确定单元,用于根据所述响应报文在所述测试过程中出现次数和所述排名,确定是否监测到异常。
作为一种可能的实现方式,所述预设响应库包含指示正常状态的正常响应库和指示异常状态的异常响应库,其中,所述正常响应库包含符合正常响应库规则的正常响应报文;所述异常响应库包含符合异常响应库规则的异常响应报文。
需要说明的是,前述对异常监测方法实施例的解释说明也适用于该实施例的异常监测装置,原理相同,此处不再赘述。
本发明实施例的车辆CAN总线的异常监测装置中,发送总线测试过程设定的各异常测试报文,获取总线上对应的响应报文,若响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常,若响应报文不存在于预设响应库中,根据响应报文在测试过程中重复出现次数,确定是否监测到异常,本发明实施例中,将从总线上获取的响应报文,与预设响应库进行比对确定是否存在异常,进而将不属于预设响应库的响应报文,根据出现次数确定是否为异常,实现了对总线上的响应报文的自动化异常监控。
为了实现上述实施例,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如前述方法实施例所述的异常监测方法。
图7示出了适于用来实现本申请实施方式的示例性计算机设备的框图。图7显示的计算机设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
为了实现上述实施例,本发明实施例还提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如前述方法实施例所述的异常监测方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (16)
1.一种车辆CAN总线的异常监测方法,其特征在于,所述方法包括以下步骤:
发送总线测试过程设定的各异常测试报文;
获取总线上对应的响应报文;
若所述响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常;
若所述响应报文不存在于所述预设响应库中,根据所述响应报文在所述测试过程中重复出现次数,确定是否监测到异常。
2.根据权利要求1所述的异常监测方法,其特征在于,所述根据所述响应报文在所述测试过程中重复出现次数,确定是否监测到异常,包括:
将所述重复出现次数大于第一设定次数的响应报文,识别为正常状态。
3.根据权利要求2所述的异常监测方法,其特征在于,所述将所述出现次数大于第一设定次数的响应报文,识别为正常状态之后,还包括:
将所述重复出现次数大于第一设定次数的响应报文,添加到所述预设响应库中,并记录为正常状态。
4.根据权利要求2所述的异常监测方法,其特征在于,所述根据所述响应报文在所述测试过程中重复出现次数,确定是否监测到异常,还包括:
将所述重复出现次数小于第二设定次数的响应报文,识别为稀有响应报文;
其中,所述稀有响应报文用于判定正常或者异常状态,和/或,用于更新所述总线测试过程。
5.根据权利要求1-4任一项所述的异常监测方法,其特征在于,所述获取总线上对应的响应报文之后,包括:
将获取到的所述响应报文,存储至响应报文集合数据库中,并对重复出现的响应报文进行出现次数统计;
根据统计的出现次数,进行响应报文的排名;
所述根据所述响应报文在所述测试过程中重复出现次数,确定是否监测到异常,包括:
根据所述响应报文在所述测试过程中出现次数和所述排名,确定是否监测到异常。
6.根据权利要求1-4任一项所述的异常监控方法,其特征在于,所述若所述响应报文不存在于所述预设响应库中,根据所述响应报文在所述测试过程中重复出现次数,确定是否监测到异常,包括:
将不存在于所述预设响应库中的所述响应报文,存储至响应报文集合数据库中,并对重复出现的响应报文进行出现次数统计;
根据统计的出现次数,进行响应报文的排名;
根据所述响应报文在所述测试过程中出现次数和所述排名,确定是否监测到异常。
7.根据权利要求1-4任一项所述的异常监测方法,其特征在于,所述预设响应库包含指示正常状态的正常响应库和指示异常状态的异常响应库;
其中,所述正常响应库包含符合正常响应库规则的正常响应报文;所述异常响应库包含符合异常响应库规则的异常响应报文。
8.一种车辆CAN总线的异常监测装置,其特征在于,所述装置包括:
发送模块,用于发送总线测试过程设定的各异常测试报文;
获取模块,用于获取总线上对应的响应报文;
第一确定模块,用于若所述响应报文存在于预设响应库中,根据所在的预设响应库指示的正常或异常状态,确定是否监测到异常;
第二确定模块,用于若所述响应报文不存在于所述预设响应库中,根据所述响应报文在所述测试过程中重复出现次数,确定是否监测到异常。
9.根据权利要求8所述的异常监测装置,其特征在于,所述第二确定模块,包括:
第一识别单元,用于将所述重复出现次数大于第一设定次数的响应报文,识别为正常状态。
10.根据权利要求9所述的异常监测装置,其特征在于,所述第二确定模块,还包括:
添加单元,用于将所述重复出现次数大于第一设定次数的响应报文,添加到所述预设响应库中,并记录为正常状态。
11.根据权利要求9所述的异常监测装置,其特征在于,所述第二确定模块,还包括:
第二识别单元,用于将所述重复复出现次数小于第二设定次数的响应报文,识别为稀有响应报文;
其中,所述稀有响应报文用于判定正常或者异常状态,和/或,用于更新所述总线测试过程。
12.根据权利要求8-11任一项所述的异常监测装置,其特征在于,所述装置,还包括:
统计模块,用于将获取到的所述响应报文,存储至响应报文集合数据库中,并对重复出现的响应报文进行出现次数统计;
排名模块,用于根据统计的出现次数,进行响应报文的排名;
所述第二确定模块,具体用于:
根据所述响应报文在所述测试过程中出现次数和所述排名,确定是否监测到异常。
13.根据权利要求8-11任一项所述的异常监测装置,其特征在于,所述第二确定模块,还包括:
次数统计单元,用于将不存在于所述预设响应库中的所述响应报文,存储至响应报文集合数据库中,并对重复出现的响应报文进行出现次数统计;
排名单元,用于根据统计的出现次数,进行响应报文的排名;
确定单元,用于根据所述响应报文在所述测试过程中出现次数和所述排名,确定是否监测到异常。
14.根据权利要求8-11任一项所述的异常监测装置,其特征在于,所述预设响应库包含指示正常状态的正常响应库和指示异常状态的异常响应库;
其中,所述正常响应库包含符合正常响应库规则的正常响应报文;所述异常响应库包含符合异常响应库规则的异常响应报文。
15.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-7中任一所述的异常监测方法。
16.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的异常监测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910184802.5A CN110007658A (zh) | 2019-03-12 | 2019-03-12 | 车辆can总线的异常监测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910184802.5A CN110007658A (zh) | 2019-03-12 | 2019-03-12 | 车辆can总线的异常监测方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110007658A true CN110007658A (zh) | 2019-07-12 |
Family
ID=67166912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910184802.5A Pending CN110007658A (zh) | 2019-03-12 | 2019-03-12 | 车辆can总线的异常监测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110007658A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110750790A (zh) * | 2019-09-06 | 2020-02-04 | 深圳开源互联网安全技术有限公司 | Can总线漏洞的检测方法、装置、终端设备及介质 |
CN110826054A (zh) * | 2019-11-05 | 2020-02-21 | 哈尔滨工业大学 | 一种基于报文数据场特征的车载can总线入侵检测方法 |
CN110853311A (zh) * | 2019-11-08 | 2020-02-28 | 北京三快在线科技有限公司 | 一种车辆的报警方法及装置 |
CN111061599A (zh) * | 2019-12-06 | 2020-04-24 | 携程旅游网络技术(上海)有限公司 | 接口测试环境的检查点的生成方法 |
CN111142504A (zh) * | 2019-12-30 | 2020-05-12 | 深圳移航通信技术有限公司 | 总线检测装置和方法 |
CN111552597A (zh) * | 2020-03-27 | 2020-08-18 | 深圳开源互联网安全技术有限公司 | 汽车can总线网络安全测试系统及方法 |
CN111865743A (zh) * | 2020-07-03 | 2020-10-30 | 深圳开源互联网安全技术有限公司 | 车辆can总线模糊测试方法、系统、电子设备及存储介质 |
CN113536315A (zh) * | 2021-05-26 | 2021-10-22 | 联合汽车电子有限公司 | 车载电子控制器改装检测方法、存储介质和系统 |
CN114942623A (zh) * | 2022-05-31 | 2022-08-26 | 中国第一汽车股份有限公司 | 控制器的测试方法、装置、车辆及计算机可读存储介质 |
CN115603975A (zh) * | 2022-09-30 | 2023-01-13 | 北京天融信网络安全技术有限公司(Cn) | 报文的入侵检测方法、装置、电子设备及存储介质 |
-
2019
- 2019-03-12 CN CN201910184802.5A patent/CN110007658A/zh active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110750790A (zh) * | 2019-09-06 | 2020-02-04 | 深圳开源互联网安全技术有限公司 | Can总线漏洞的检测方法、装置、终端设备及介质 |
CN110750790B (zh) * | 2019-09-06 | 2021-09-24 | 深圳开源互联网安全技术有限公司 | Can总线漏洞的检测方法、装置、终端设备及介质 |
CN110826054A (zh) * | 2019-11-05 | 2020-02-21 | 哈尔滨工业大学 | 一种基于报文数据场特征的车载can总线入侵检测方法 |
CN110826054B (zh) * | 2019-11-05 | 2022-07-15 | 哈尔滨工业大学 | 一种基于报文数据场特征的车载can总线入侵检测方法 |
CN110853311A (zh) * | 2019-11-08 | 2020-02-28 | 北京三快在线科技有限公司 | 一种车辆的报警方法及装置 |
CN111061599A (zh) * | 2019-12-06 | 2020-04-24 | 携程旅游网络技术(上海)有限公司 | 接口测试环境的检查点的生成方法 |
CN111142504A (zh) * | 2019-12-30 | 2020-05-12 | 深圳移航通信技术有限公司 | 总线检测装置和方法 |
CN111552597A (zh) * | 2020-03-27 | 2020-08-18 | 深圳开源互联网安全技术有限公司 | 汽车can总线网络安全测试系统及方法 |
CN111865743A (zh) * | 2020-07-03 | 2020-10-30 | 深圳开源互联网安全技术有限公司 | 车辆can总线模糊测试方法、系统、电子设备及存储介质 |
CN113536315A (zh) * | 2021-05-26 | 2021-10-22 | 联合汽车电子有限公司 | 车载电子控制器改装检测方法、存储介质和系统 |
CN114942623A (zh) * | 2022-05-31 | 2022-08-26 | 中国第一汽车股份有限公司 | 控制器的测试方法、装置、车辆及计算机可读存储介质 |
CN115603975A (zh) * | 2022-09-30 | 2023-01-13 | 北京天融信网络安全技术有限公司(Cn) | 报文的入侵检测方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110007658A (zh) | 车辆can总线的异常监测方法和装置 | |
CN110191018A (zh) | 车辆can总线的异常监测方法、装置和计算机设备 | |
CN108156166A (zh) | 异常访问识别和接入控制方法及装置 | |
CN110417575A (zh) | 运维监控平台的告警方法、装置和计算机设备 | |
CN109345658A (zh) | 车辆系统故障的修复方法、装置、设备、介质和车辆 | |
CN107729210A (zh) | 分布式服务集群的异常诊断方法和装置 | |
CN110336742A (zh) | 信息发送方法、装置、计算机设备和存储介质 | |
CN103345439B (zh) | 一种信息系统全链路健康状态监控方法及装置 | |
CN103686030A (zh) | 检测应用于画面拼接显示单元中的视频信号接口的方法和设备 | |
CN114528792B (zh) | 芯片验证方法、装置、电子设备及存储介质 | |
CN107621040A (zh) | 温度传感器的纠错方法、装置和空调器 | |
CN109962881A (zh) | 基于工业控制系统的入侵检测方法、装置以及系统 | |
CN110213258A (zh) | 车辆can总线的异常监测方法、装置和计算机设备 | |
CN107391295A (zh) | 应用程序异常的处理方法及装置 | |
CN106502814A (zh) | 一种记录pcie设备错误信息的方法及装置 | |
CN108665271A (zh) | 区块链数据处理方法、装置、设备和存储介质 | |
CN107729768A (zh) | 一种页面显示方法、装置、智能平板和存储介质 | |
US20200234367A1 (en) | Virtual currency value estimation method and apparatus, and storage medium | |
CN108255659A (zh) | 一种应用程序性能监控方法及其系统 | |
CN111913861A (zh) | 物联网系统的性能测试方法、装置、设备及介质 | |
CN107797898A (zh) | 数据采集方法及其装置 | |
US20090183036A1 (en) | Ramped error logging system | |
KR102275635B1 (ko) | 함수 호출 패턴 분석을 통한 이상 검출 장치 및 방법 | |
CN114547585A (zh) | 一种便携式安全运维审计装置 | |
CN109920468B (zh) | 一种ssd性能稳态验证的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190712 |