一种车辆CAN总线入侵检测测试方法和测试系统与流程

文档序号:31404358发布日期:2022-09-03 05:53阅读:179来源:国知局
一种车辆CAN总线入侵检测测试方法和测试系统与流程
一种车辆can总线入侵检测测试方法和测试系统
技术领域
1.本发明涉及工程机械通信技术安全领域,具体涉及一种车辆can总线入侵检测测试方法和测试系统。


背景技术:

2.随着智能化和信息化的发展,汽车电气系统变得日益复杂,当前汽车普遍拥有数十个电子控制单元(ecu),一辆高级轿车运行代码接近1亿行,而这些车载信息是通过车内总线实现互联。近年来汽车信息安全事件的频发大多是基于车内总线的物理访问或者远程攻击,攻击者可以通过车载ecu自身漏洞,实现对关键节点的输入控制,如汽车节气门、转向器、制动器等。在汽车总线中,控制器局域网(can)因其高性能和可靠性被大量应用。为保护汽车总线免受网络攻击,基于can网络分析的相关技术解决方案逐渐引起行业的关注和重视。
3.入侵检测系统(intrusion detection system,简称“ids”)是一种对网络传输进行即时监视,在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。它与其他网络安全设备的不同之处便在于,ids是一种积极主动的安全防护技术。车辆网络入侵检测功能,一般集成在车载终端、车机、网关或者其他使用车载以太网通信的控制器上。
4.车内通信网络入侵检测技术是确保车内can通信安全而采用最广泛的技术之一,其通过实时监视can总线上的报文传输情况,在发现异常报文时进行告警。can总线入侵检测一般可检测出报文异常、信号异常、诊断服务异常等。
5.目前,针对车辆can总线的入侵检测技术,已经在车上逐步应用。针对can总线入侵检测功能,需要与之对应的测试验证方案,来验证入侵检测策略是否真正按照要求实现,以及当前的检测规则是否有存在漏检。


技术实现要素:

6.针对上述问题,本发明提出一种车辆can总线入侵检测测试方法和测试系统,根据入侵检测规则,进行入侵攻击,查看入侵检测模块能否有效检测攻击时间,以及检测的时效性。建立终端系统攻击库,此攻击库涵盖常见的攻击方式,以测试入侵检测模块的检测覆盖度,是否存在漏检、误检。
7.本发明提供一种车辆can总线入侵检测测试系统,其特征在于:包括上位机、can总线工具和带有入侵检测功能的被测控制器;所述上位机包括测试管理模块、can总线攻击数据生成模块和测试结果分析模块;测试时,所述测试管理模块执行测试,can总线攻击数据生成模块生成攻击数据,通过can总线工具发送至带有入侵检测功能的被测控制器进行车辆can总线入侵检测测试,测试结束后测试结果分析模块进行测试结果分析。
8.进一步,所述测试管理模块用于信息配置、管理测试计划、管理测试用例、管理测试报告和加载带有入侵检测功能的被测控制器的can总线数据库;can总线数据库定义了带有入侵检测功能的被测控制器接收的所有can报文的id、长度、周期、信号取值和范围。
9.进一步,所述can总线攻击数据生成模块用于根据加载的can总线数据库,生成攻击数据。
10.进一步,所述can总线攻击数据生成模块生成攻击数据的方式如下。
11.方式一:选取can总线数据库中第一条周期报文,将报文周期改为原周期的1/2;
12.方式二:选取can总线数据库中第一条周期报文,将报文周期改为原周期的3/2;
13.方式三:根据can总线数据库中的报文id,生成id在0-0x7ff范围内,非数据库报文id,数据场取值0xff;
14.方式四:选取can总线数据库中的某一条周期报文;
15.方式五:选取can总线数据库中的某一条报文,将该报文长度减少1个字节。
16.进一步,所述测试结果分析模块用于根据入侵检测规则和带有入侵检测功能的被测控制器日志,分析带有入侵检测功能的被测控制器是否执行了入侵检测,是否存在漏检,检出时间是否满足要求。
17.本发明提供一种车辆can总线入侵检测测试方法,其特征在于:测试开始时,先进行上位机配置,测试管理模块加载带有入侵检测功能的被测控制器的can总线数据库并生成和发送攻击数据,开始进行报文周期过短或过长监控测试、非白名单报文id监控测试、报文丢失监控测试和报文长度异常监控测试,测试结束后,测试结果分析模块对带有入侵检测功能的被测控制器日志进行分析生成测试报告。
18.进一步,所述报文周期过短或过长监控测试的测试方法为:
19.报文周期过短监控测试
20.(1)选取can总线数据库中第一条周期报文;
21.(2)将报文周期改为原周期的1/2,周期发送至can总线上;
22.(3)记录发送时间t1;
23.(4)查看入侵检测日志;
24.(5)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;
25.(6)检出时间t2-t1,判断时间是否满足要求;
26.报文周期过长监控测试
27.(1)选取can总线数据库中第一条周期报文;
28.(2)将报文周期改为原周期的1.5倍,周期发送至can总线上;
29.(3)记录发送时间t1;
30.(4)查看入侵检测日志;
31.(5)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;
32.(6)检出时间t2-t1,判断时间是否满足要求。
33.进一步,所述非白名单报文id监控测试的测试方法为:
34.(1)根据can总线数据库中的报文id,生成id在0-0x7ff范围内,非数据库
35.报文id,数据场取值0xff;
36.(2)按照周期100ms发送;
37.(3)记录发送时间t1;
38.(4)查看入侵检测日志;
39.(5)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;
40.(6)检出时间t2-t1,判断时间是否满足要求。
41.进一步,所述报文丢失监控测试的测试方法为:
42.(1)选取can总线数据库中的某一条周期报文,按规定周期发送5条报文;
43.(2)中止发送2个周期;
44.(3)记录时间t1;
45.(4)恢复规定周期发送;
46.(5)查看入侵检测日志;
47.(6)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;
48.(7)检出时间t2-t1,判断时间是否满足要求。
49.进一步,所述报文长度异常监控测试的测试方法为:
50.(1)选取can总线数据库中的某一条报文,将该报文长度减少1个字节发送;
51.(2)记录时间t1;
52.(3)查看入侵检测日志;
53.(4)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;
54.(5)检出时间t2-t1,判断时间是否满足要求。
55.与现有技术相比,本发明优点为:本发明针对车辆can总线的入侵检测进行测试,分别对报文异常、信号异常、dos攻击等监控进行测试。本发明提出了时效性的测试方法,现有技术没有针对入侵检测的时效性进行测试。
附图说明
56.图1为车辆can总线入侵检测测试系统的硬件模块连接方式;
57.图2为车辆can总线入侵检测测试系统的测试流程。
具体实施方式
58.下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
59.实施例1.
60.一种车辆can总线入侵检测测试系统,其特征在于:包括硬件模块和软件模块;硬件模块由上位机、can总线工具vn1640、dut(被测控制器,带有入侵检测功能)组成;软件模块位于上位机中,由测试管理模块、can总线攻击数据生成模块和测试结果分析模块组成;上位机中的软件模块生成攻击数据,通过can总线工具发送至带有入侵检测功能的被测控制器进行车辆can总线入侵检测测试。
61.实施例2.
62.一种车辆can总线入侵检测测试系统的硬件模块连接方式,如图1所示,上位机通过can总线工具vn1640与dut(被测控制器,带有入侵检测功能)相连,dut与供电电源连接,上位机软件生成攻击数据,通过can总线工具vn1640发送至dtu。
63.实施例3.
64.一种车辆can总线入侵检测测试系统的软件模块包括:
65.(1)测试管理模块:包括信息配置、测试计划管理、测试用例管理、测试报告管理和加载dut的can总线数据库(dbc文件)。
66.(2)can总线攻击数据生成模块:根据加载的can总线数据库,生成攻击数据。
67.(3)测试结果分析模块:根据入侵检测规则和日志,分析dut是否执行了入侵检测,是否存在漏检,检出时间是否满足要求。
68.实施例4.
69.一种can总线攻击数据生成模块生成攻击数据的方式,包括:
70.方式一:选取can总线数据库中第一条周期报文,将报文周期改为原周期的1/2;该方式用于报文周期过短监控测试。
71.方式二:选取can总线数据库中第一条周期报文,将报文周期改为原周期的3/2;该方式用于报文周期过长监控测试。
72.方式三:根据can总线数据库中的报文id,生成id在0-0x7ff范围内,非数据库报文id,数据场取值0xff;该方式用于非白名单报文id监控测试。
73.方式四:选取can总线数据库中的某一条周期报文;该方式用于报文丢失监控测试。
74.方式五:选取can总线数据库中的某一条报文,将该报文长度减少1个字节;该方式用于报文长度异常监控测试。
75.实施例5.
76.一种车辆can总线入侵检测测试方法,包括报文周期过短监控测试、报文周期过长监控测试、非白名单报文id监控测试、报文丢失监控测试和报文长度异常监控测试,具体为:
77.一、报文周期过短监控测试:
78.(1)选取can总线数据库中第一条周期报文;
79.(2)将报文周期改为原周期的1/2,周期发送至can总线上;
80.(3)记录发送时间t1;
81.(4)查看入侵检测日志;
82.(5)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;
83.(6)检出时间t2-t1,判断时间是否满足要求。
84.二、报文周期过长监控测试:
85.(1)选取can总线数据库中第一条周期报文;
86.(2)将报文周期改为原周期的1.5倍,周期发送至can总线上;
87.(3)记录发送时间t1;
88.(4)查看入侵检测日志;
89.(5)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事,测试不通过;
90.(6)检出时间t2-t1,判断时间是否满足要求。
91.三、非白名单报文id监控测试的测试方法为:
92.(1)根据can总线数据库中的报文id,生成id在0-0x7ff范围内,非数据库报文id,数据场取值0xff;
93.(2)按照周期100ms发送;
94.(3)记录发送时间t1;
95.(4)查看入侵检测日志;
96.(5)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;
97.(6)检出时间t2-t1,判断时间是否满足要求。
98.四、报文丢失监控测试的测试方法为:
99.(1)选取can总线数据库中的某一条周期报文,按规定周期发送5条报文;
100.(2)中止发送2个周期;
101.(3)记录时间t1;
102.(4)恢复规定周期发送;
103.(5)查看入侵检测日志;
104.(6)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;
105.(7)检出时间t2-t1,判断时间是否满足要求。
106.五、报文长度异常监控测试的测试方法为:
107.(1)选取can总线数据库中的某一条报文,将该报文长度减少1个字节发送;
108.(2)记录时间t1;
109.(3)查看入侵检测日志;
110.(4)如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;
111.(5)检出时间t2-t1,判断时间是否满足要求。
112.实施例6.
113.一种车辆can总线入侵检测测试系统的测试流程,流程图如图2所示,具体地,以报文周期过短监控测试为实施例,进行测试流程介绍。
114.开始测试时,先进行上位机配置,测试管理模块制定测试计划,can总线攻击数据生成模块根据加载的can总线数据库,生成攻击数据,生成攻击数据的方式为:选取can总线数据库中第一条周期报文,将报文周期改为原周期的1/2。
115.生成的攻击数据进入测试管理模的测试用例管理单元,用于报文周期过短监控测试。
116.测试管理模块开始执行测试,记录发送时间t1并将测试用例管理单元中的攻击数据周期发送至can总线上,从而进入dut完成攻击。
117.测试计划测试完成后读取dut日志中记载的检测结果,并将检测结果输入测试结
果分析模块进行分析:首先查看入侵检测日志是否有入侵检测记录,如有记录,记录检测时间记为t2;如无记录,说明未检测出攻击事件,测试不通过;检出时间为t2-t1,判断检出时间是否满足要求。
118.测试结果分析模块将生成的测报告反馈给测试管理模块,测试管理模块对测试报告进行管理,供测试人员进行提取查看。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1