一种基于域对抗神经网络的车载网络变种攻击入侵检测方法及系统

专利查询7月前  66



1.本发明属于网络信息安全技术领域,涉及入侵检测技术,特别涉及一种基于域对抗神经网络的车载网络变种攻击入侵检测方法及系统。


背景技术:

2.随着智能网联汽车的快速发展,车联网技术也在不断的发展和提高。为了满足用户对于车内服务的需求,汽车可以提供的功能也越来越丰富。但是智能网联汽车功能增加的同时也带来了更高的网络攻击风险,车内电子控制系统极易遭受攻击,对车辆造成重大损失。2015年安全专家charlie miller和chris valasek就远程入侵了一辆2014款jeep的安全系统,能够远程控制车载娱乐系统还能通过互联网远程控制车辆刹车和转向,迫使车厂在全球召回了140万辆车。随后两人又在2016年通过obd接口,再次黑掉了jeep自由光的电子控制单元(ecu)系统,他们可以随意控制这台车辆的加速、转向以及制动,甚至可以控制某个单一车轮的轮速。因此,对车内电子控制系统的攻击检测就尤为重要。
3.车内所产生的数据都需要通过控制器局域网络(can)来进行传输。车载网络运用了控制器局域网络作为车辆内部传输的标准协议。控制器局域网络(controllerareanetwork,can)是由德国研发和生产汽车电子产品的bosch公司开发的,并且于2013年成为国际标准(iso 11898),是目前国际上应用最广泛的现场总线之一。它有效支持分布式控制或实时控制的串行通讯网络,为车辆上所有ecu之间提供高效的通信,具有很高的可靠性、实时性和灵活性。尽管can协议具有一些安全机制用于防范攻击,但是由于can总线采用的是未经认证的广播通信方式,带来高效通讯的同时,也容易被攻击者入侵,给汽车安全带来严重的风险。因此,增加额外的机制来对can总线上传输的数据进行检测是十分必要的。
4.目前,研究人员已经在对车内网can总线上攻击流量检测进行研究,比如提出了基于长短期记忆(long short-term memory,lstm)模型检测篡改攻击的方法,以及使用深度卷积神经网络(deep convolutional neural networks,dcnn)进行can总线上的攻击检测的方法。虽然这些检测方法可以在can总线数据的检测中取得很好的效果,但是这些方法的优越性能在很大程度上依赖于使用已知攻击来训练检测模型。但是对于变种攻击他们无法进行很好的检测。在工业控制领域变种攻击的问题导致检测手段失效,使其面临了严重的信息安全问题。变种攻击的危害不容小觑,因此,我们需要探索一种能够学习到攻击本质特征的检测模型来应对变种攻击的出现。


技术实现要素:

5.本发明所要解决的技术问题是提供一种基于域对抗神经网络的车载网络变种攻击入侵检测方法及系统,用于对车内网can总线上的变种攻击进行检测,因为现有对can总线上的攻击检测很大程度依赖于使用已知攻击来训练模型,无法解决变种攻击的检测问
题。
6.本发明解决上述技术问题的技术方案如下:基于域对抗神经网络的车载网络变种攻击入侵检测方法,包括:
7.步骤1,利用usb-can tool软件从真实车辆中获取can总线上的流量数据包,将数据包保存至正常数据文件中,执行步骤2。
8.步骤2,从正常数据文件中获取数据包,通过数据分析获取车内所包含的id数目及数据包的发送频率,执行步骤3。
9.步骤3,根据步骤2所获得的车内电子控制单元的id个数及其数据字段内容,挑选注入攻击的id。若id的发包频率和数据段内容无明显规律,则不进行挑选;若ecu id的发包频率和数据段内容具有周期性特点,则选为注入攻击的id,执行步骤4。
10.步骤4,对进行注入攻击的id及其数据段内容创建相应的攻击数据包,通过随机生成、篡改数据段的方式创建id相应的模糊攻击、篡改攻击数据包;根据can总线上数据包的特点,选取了高优先级id通过生成无效数据段的方式创建拒绝服务攻击相应的数据包,执行步骤5。
11.步骤5,将创建的攻击数据包以一定的频率注入到真实车辆中,利用usb-can tool软件获取can总线上发送与接收的流量数据包,将数据包保存至攻击数据文件中,执行步骤6。
12.步骤6,根据步骤5所采集的数据文件,根据文件中传输方向的不同,划分标签。若为发送,则将该条数据段标为攻击数据标签;若为接收,则将该条数据段标为正常数据标签,执行步骤7。
13.步骤7,根据选取的can id所注入的攻击进行划分,将所采集的数据划分为源域数据集、目标域数据集以及测试数据集,包含正常数据、拒绝服务攻击数据、模糊攻击数据以及篡改攻击数据,执行步骤8。
14.步骤8,根据所采集的数据文件,提取can总线上连续25条can消息的数据段内容,顺序排列成can data序列,通过十六进制编码将can data序列最终转为能直接输入检测模型的特征矩阵,代表了25条数据段的时序分布,作为检测模型的输入,执行步骤9。
15.步骤9,通过由卷积神经网络构建的特征提取器以第一种结构的卷积核来提取特征矩阵的时序特征,输入源域数据集中已知攻击数据,将数据转化为已知攻击特征1,执行步骤10。
16.步骤10,通过由卷积神经网络构建的特征提取器以第二种结构的卷积核来提取特征矩阵的时序特征,输入源域数据集中已知攻击数据,将数据转化为已知攻击特征2,执行步骤11。
17.步骤11,通过由卷积神经网络构建的特征提取器以第三种结构的卷积核来提取特征矩阵的时序特征,输入源域数据集中已知攻击数据,将数据转化为已知攻击特征3,执行步骤12。
18.步骤12,将步骤9、10和11所生成的已知攻击特征1、已知攻击特征2和已知攻击特征3,进行拼接处理,得到最终已知攻击的特征输出,执行步骤13。
19.步骤13,通过由卷积神经网络构建的特征提取器以第一种结构的卷积核来提取特征矩阵的时序特征,输入目标域数据集中变种攻击数据,将数据转化为未知攻击特征1,执
行步骤14。
20.步骤14,通过由卷积神经网络构建的特征提取器以第二种结构的卷积核来提取特征矩阵的时序特征,输入目标域数据集中变种攻击数据,将数据转化为未知攻击特征2,执行步骤15。
21.步骤15,通过由卷积神经网络构建的特征提取器以第三种结构的卷积核来提取特征矩阵的时序特征,输入目标域数据集中变种攻击数据,将数据转化为未知攻击特征3,执行步骤16。
22.步骤16,将步骤13、14和15所生成的未知攻击特征1、未知攻击特征2和未知攻击特征3输出,进行拼接处理,得到最终未知攻击的特征输出,执行步骤17。
23.步骤17,将特征提取器输出的已知攻击特征输入进标签预测器,通过全连接层和softmax层将特征转化为预测标签输出,给出攻击特征的类别,执行步骤18。
24.步骤18,将特征提取器输出的已知、未知攻击特征经过梯度反转层恒等变换,执行步骤19。
25.步骤19,通过梯度反转层的特征进入域分类器,域分类器根据提取出的攻击特征来判断攻击数据是已知攻击还是变种攻击,输出预测的域类别,执行步骤20。
26.步骤20,根据步骤19中域分类器根据得到的域类别计算损失值进行求导后先经过梯度反转层,乘以一个负数,然后反向更新每一层的权值,执行步骤21。
27.步骤21,将训练好的模型保存,并用检测集对训练后的模型进行检测。
28.基于上述方法,本发明的技术方案还包括了一种基于域对抗神经网络的入侵检测系统,包括:
29.数据采集模块,其用于在真实车辆上对车内网can总线上的can报文进行数据采集,并分析can报文中发送id的频率以及数据段发送内容的规律。根据真实车辆id及数据段内容,对相应id的数据段内容进行随机生成、篡改等操作,并对高优先级的id构造无效数据段,制造攻击数据。将构造的攻击数据集通过usb-can tool软件注入到真实车辆can总线中并进行采集。
30.数据处理模块,其用于对真实车辆can总线中采集到的数据进行处理,将发送与接收的数据标记标签。根据攻击方式划分为三套数据集,分别为源域数据集、目标域数据集以及测试数据集,同时将can总线报文的数据段序列转换为能直接输入检测模型的特征矩阵。
31.基于域对抗的入侵检测模块,其用于以can总线数据转换成的序列特征矩阵作为输入,对由卷积神经网络构成的特征提取器、全连接层和softmax层构成的标签预测器和域分类器进行训练,得到检测模型。
32.本发明的有益效果是:
33.一、本发明利用真实的can总线流量数据训练了基于域对抗神经网络的车内网变种攻击检测模型,能够有效的对变种攻击进行攻击检测。
34.二、本发明利用对抗的思想对变种攻击进行特征提取和训练,无需对变种攻击进行有监督学习就可以找到已知攻击和变种攻击的本质特征,解决了攻击变种形式不可预测的问题。
35.三、本发明通过大量实验,证明了我们的检测模型避免了模型对于已知数据的特征依赖性,增加了鲁棒性,实践证明模型具备很高的检测准确率和召回率。
附图说明
36.图1为本发明所述基于域对抗神经网络的入侵检测系统的流程示意图。
37.图2为本发明实施例一中can消息帧的格式示意图。
38.图3为本发明实施例一步骤3中注入攻击方式示意图。
39.图4为本发明实施例一步骤4中注入攻击数据帧格式示意图。
40.图5为本发明实施例一步骤8中特征矩阵的构建方式示意图。
41.图6为本发明实施例一步骤9-12中特征提取器示意图。
42.图7为本发明实施例一步骤17中标签预测器示意图。
43.图8为本发明实施例一步骤18-20中域分类器示意图。
44.图9为本发明实施例一中实验使用的数据集示意图。
45.图10为本发明实施例一中对攻击检测实验结果示意图。
具体实施方式
46.以下结合附图对本发明的原理和特征进行描述,所举实例只是用于解释本发明,而并非用于限定本发明的范围。
47.实施例一
48.如图1所示,实施例一是一种基于域对抗神经网络的入侵检测方法,该方法由21个步骤构成。具体内容描述如下:
49.步骤1,利用usb-can tool软件,我们选择东风雪铁龙牌轿车作为我们的测试车辆,从中捕获车辆can总线上的流量数据包,采集时间为10分钟,将数据包保存至正常数据文件中,用来对数据进行分析使用,执行步骤2。
50.步骤2,从正常数据文件中提取数据包,通过数据分析获取车内所包含的id数目及数据包的发送频率,执行步骤3。
51.步骤3,根据步骤2所获得的车内电子控制单元的id个数为22个,根据实际车辆运行时情况挑选注入模糊攻击的id,选择id=0x0208,id=0x0348,id=0x038d作为模糊攻击的id。分析其余的id,若id的发包频率和数据段内容无明显规律,则不进行挑选;若ecu id的发包频率和数据段内容具有周期性特点,则选为注入攻击的id。最终选择id=0x0000作为拒绝服务攻击的id,id=0x050e作为篡改攻击的id,执行步骤4。
52.步骤4,对进行注入攻击的id及其数据段内容创建相应的攻击数据包。通过随机生成的方式创建id=0x0208,id=0x0348,id=0x038d相应的模糊攻击数据段;通过篡改id=0x050e的数据段不同位置生成篡改攻击数据包;通过高优先级id=0x0000生成无效数据段的方式创建拒绝服务攻击相应的数据包,执行步骤5。
53.步骤5,将创建的攻击数据包以一定的频率注入到真实车辆中,利用usb-can tool软件获取can总线上发送与接收的流量数据包,将数据包保存至攻击数据文件中,执行步骤6。
54.步骤6,根据步骤5所采集的数据文件,根据文件中传输方向的不同,划分标签。若为发送,则将该条数据段标为攻击数据标签;若为接收,则将该条数据段标为正常数据标签,执行步骤7。
55.步骤7,根据选取的can id所注入的攻击进行划分,将所采集的数据划分为源域数
据集、目标域数据集以及测试数据集,包含正常数据、拒绝服务攻击数据、模糊攻击数据以及篡改攻击数据,执行步骤8。
56.步骤8,根据所采集的数据文件,提取can总线上连续25条can消息的数据段内容,顺序排列成can data序列,通过十六进制编码将can data序列最终转为能直接输入检测模型的25
×
25特征矩阵,添加通道轴,将can data特征矩阵最终转换为尺寸为(25,25,1)的特征矩阵,代表了25条数据段的时序分布,作为检测模型的输入,执行步骤9。
57.步骤9,通过由卷积神经网络构建的特征提取器选择3
×
3的卷积核来提取特征矩阵的时序特征,输入源域数据集中已知攻击数据,将数据转化为已知攻击特征1,执行步骤10。
58.步骤10,通过由卷积神经网络构建的特征提取器选择5
×
5的卷积核来提取特征矩阵的时序特征,输入源域数据集中已知攻击数据,将数据转化为已知攻击特征2,执行步骤11。
59.步骤11,通过由卷积神经网络构建的特征提取器选择7
×
7的卷积核来提取特征矩阵的时序特征,输入源域数据集中已知攻击数据,将数据转化为已知攻击特征3,执行步骤12。
60.步骤12,将步骤9、10和11所生成的已知攻击特征1、已知攻击特征2和已知攻击特征3,进行拼接处理,得到最终已知攻击的特征输出,执行步骤13。
61.步骤13,通过由卷积神经网络构建的特征提取器选择3
×
3的卷积核来提取特征矩阵的时序特征,输入目标域数据集中变种攻击数据,将数据转化为未知攻击特征1,执行步骤14。
62.步骤14,通过由卷积神经网络构建的特征提取器选择5
×
5的卷积核来提取特征矩阵的时序特征,输入目标域数据集中变种攻击数据,将数据转化为未知攻击特征2,执行步骤15。
63.步骤15,通过由卷积神经网络构建的特征提取器选择7
×
7的卷积核来提取特征矩阵的时序特征,输入目标域数据集中变种攻击数据,将数据转化为未知攻击特征3,执行步骤16。
64.步骤16,将步骤13、14和15所生成的未知攻击特征1、未知攻击特征2和未知攻击特征3输出,进行拼接处理,得到最终未知攻击的特征输出,执行步骤17。
65.步骤17,将特征提取器输出的已知攻击特征输入进标签预测器,通过全连接层和softmax层将特征转化为预测标签输出,给出攻击特征的类别,执行步骤18。
66.步骤18,将特征提取器输出的已知、未知攻击特征经过梯度反转层恒等变换,执行步骤19。
67.步骤19,通过梯度反转层的特征进入域分类器,域分类器根据提取出的攻击特征来判断攻击数据是已知攻击还是变种攻击,输出预测的域类别,执行步骤20。
68.步骤20,根据步骤19中域分类器根据得到的域类别计算损失值进行求导后先经过梯度反转层,乘以一个负数,然后反向更新每一层的权值,执行步骤21。
69.步骤21,将训练好的模型保存,并用检测集对训练后的模型进行检测。
70.如图2所示,can数据帧的格式描述如下:
71.在can2.0协议中包含a版本和b版本,我们所进行实验的真实车辆使用的是can2.0
协议的b版本,其数据帧格式包含七个部分:start of frame、arbitration field、control field、data field、crc field、ack field和end offrame。在arbitration field部分,can2.0b除了包含11位的id标识符,同时向上扩展到29位id标识符。每一条can都具有唯一确定的id。can id决定了数据帧的优先级,can id数值越小,can消息的优先级越高,在后面我们进行攻击注入时也利用了can id这一特性。data field是我们主要使用的部分,这一部分包含0-64bits的数据段内容,主要用于负载传输的数据。
72.如图3所示,上述步骤3中注入攻击方式的具体过程如下所述:
73.当我们注入攻击时,根据不同的攻击类型选择不同的注入方式。对于拒绝服务攻击,我们选择高优先级的can id=0x0000作为注入攻击消息的id,注入到正常can消息队列中,正常的can消息会被延迟传输,优先传输id为高优先级的拒绝服务攻击can消息。对于模糊攻击,我们选择数据段有规律变化的canid=0x0208作为can id进行攻击注入,注入到正常的can消息队列中,和正常的can消息一样按照id的优先级高低进行消息传输。对于篡改攻击,我们选择数据段变化规律较明显的can id=0x050e作为can id进行攻击注入,同理注入到正常的can消息队列中,和正常的can消息一样按照id的优先级高低进行消息传输。
74.如图4所示,上述步骤4中注入攻击的数据帧格式如下所述:
75.数据帧格式包含:序号,系统时间,can通道,传输方向,id号,帧类型,帧格式,长度,数据。其中我们自定义了id号、传输方向以及数据段内容。指定传输方向为“发送”,根据我们所注入的攻击类型不同,id号和数据段内容不同。
76.如图5所示,上述步骤8中构建特征矩阵的具体过程如下所述:
77.当我们进行攻击注入后,can消息的数据段的时序分布会发生改变,因此本发明利用can消息数据段的时序分布来检测攻击。提取连续的25条can消息的数据段,得到数据段序列。对数据段序列中数据进行十六进制编码,数据段可表示为:
78.data=hi(for i=0,

,24)
79.其中hi为can data的第i个位值,顺序排列data序列中的25个can data,得到can data序列矩阵,可表示为:
80.data image=datai(for i=0,

,24)
81.其中datai为第i个can data,通过十六进制编码得到的数据特征矩阵可直接作为检测模型的输入。
82.如图6所示,上述步骤9-12中检测模型的特征提取器结构示意图的具体内容如下所述:
83.特征提取器由三个模块构成,每个模块包含了两个卷积层和两个池化层。三个模块的分别使用了3
×
3、5
×
5以及7
×
7作为卷积核的大小,分别对输入的特征矩阵进行特征提取得到50维的特征输出。将使用三种不同大小的卷积核进行特征提取后的50维特征结果进行拼接操作,最终得到150维的特征输出。
84.如图7所示,上述步骤17中检测模型的标签预测器结构示意图的具体内容如下所述:
85.标签预测器接收从特征提取器输出的150维特征,通过全连接层和softmax层将多个神经元的输出映射为四个类别的输出,作为攻击类别的输出结果。
86.如图8所示,上述步骤18-20中检测模型的域分类器结构示意图的具体内容如下所
述:
87.域分类器接收从特征提取器输出的150维特征,先经过梯度反转层进行恒等变换,再通过全连接层和softmax层将多个神经元的输出映射为两个类别的输出,作为攻击数据的域类别。
88.如图9所示,为了评估实施例一中ids对变种攻击的检测效果,我们通过在真实车辆上采集can总线数据,得到我们的训练及测试数据集。数据集包含了拒绝服务攻击数据、模糊攻击数据、篡改攻击数据以及正常数据。dataseta、dataset b、dataset c分别代表了三套数据集,我们使用这三套数据集轮流作为源域数据集、目标域数据集以及测试数据集。
89.为了评价入侵检测模型的检测效果,首先定义以下四种样本集合:
90.(1)tp:数据集中攻击样本且被模型归类为攻击的样本集合。
91.(2)fp:数据集中正常样本但被模型归类为攻击的样本集合。
92.(3)tn:数据集中正常样本且被模型归类为正常的样本集合。
93.(4)fn:数据集中攻击样本但被模型归类为正常的样本集合。
94.基于上述四种样本集合,本发明采用入侵检测领域中常用评价指标来对本发明中的入侵检测模型进行检测性能评价,其中包括:召回率(recall),精确率(precision)和f1-score。recall为被检测出的攻击占所有攻击的比例,precision为在检测中真正的攻击所占的比例,f1-score是精确率和召回率的调和平均数。我们认为这些评估指标的值应当尽可能高,代表模型的检测能力好。
95.这些评价指标的计算公式如下:
[0096][0097][0098][0099]
如图10所示,为了证明本发明中提出的基于域对抗神经网络的变种攻击入侵检测方法能够有效对变种攻击进行检测,给出了三套数据集分别作为源域数据集、目标域数据集和测试数据集的检测结果。数据集a和b、数据集a和c、数据集b和c分别作为训练数据集时,两个数据集交替作为源域数据集和目标域数据集进行训练。测试数据集分别为未训练过的数据集c、数据集b以及数据集a,它们的攻击检测平均召回率、平均精确率以及平均f1-score都达到了99%以上,其中最高的检测召回率、精确率及f1-score可以达到100%。可以证明我们所提出的方法,针对车内网can总线上变种攻击有很好的检测效果。
[0100]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种基于域对抗神经网络的车载网络变种攻击入侵检测方法,其特征在于,包括:步骤1,利用usb-can tool软件从真实车辆中获取can总线上的流量数据包,将数据包保存至正常数据文件中,执行步骤2;步骤2,从正常数据文件中获取数据包,通过数据分析获取车内所包含的id数目及数据包的发送频率,执行步骤3;步骤3,根据步骤2所获得的车内电子控制单元的id个数及其数据字段内容,挑选注入攻击的id;若id的发包频率和数据段内容无明显规律,则不进行挑选;若ecu id的发包频率和数据段内容具有周期性特点,则选为注入攻击的id,执行步骤4;步骤4,对进行注入攻击的id及其数据段内容创建相应的攻击数据包,通过随机生成、篡改数据段的方式创建id相应的模糊攻击、篡改攻击数据包;根据can总线上数据包的特点,选取了高优先级id通过生成无效数据段的方式创建拒绝服务攻击相应的数据包,执行步骤5;步骤5,将创建的攻击数据包以一定的频率注入到真实车辆中,利用usb-can tool软件获取can总线上发送与接收的流量数据包,将数据包保存至攻击数据文件中,执行步骤6;步骤6,根据步骤5所采集的数据文件,根据文件中传输方向的不同,划分标签;若为发送,则将该条数据段标为攻击数据标签;若为接收,则将该条数据段标为正常数据标签,执行步骤7;步骤7,根据选取的can id所注入的攻击进行划分,将所采集的数据划分为源域数据集、目标域数据集以及测试数据集,包含正常数据、拒绝服务攻击数据、模糊攻击数据以及篡改攻击数据,执行步骤8;步骤8,根据所采集的数据文件,提取can总线上连续25条can消息的数据段内容,顺序排列成can data序列,通过十六进制编码将can data序列最终转为能直接输入检测模型的特征矩阵,代表了25条数据段的时序分布,作为检测模型的输入,执行步骤9;步骤9,通过由卷积神经网络构建的特征提取器以第一种结构的卷积核来提取特征矩阵的时序特征,输入源域数据集中已知攻击数据,将数据转化为已知攻击特征1,执行步骤10;步骤10,通过由卷积神经网络构建的特征提取器以第二种结构的卷积核来提取特征矩阵的时序特征,输入源域数据集中已知攻击数据,将数据转化为已知攻击特征2,执行步骤11;步骤11,通过由卷积神经网络构建的特征提取器以第三种结构的卷积核来提取特征矩阵的时序特征,输入源域数据集中已知攻击数据,将数据转化为已知攻击特征3,执行步骤12;步骤12,将步骤9、10和11所生成的已知攻击特征1、已知攻击特征2和已知攻击特征3,进行拼接处理,得到最终已知攻击的特征输出,执行步骤13;步骤13,通过由卷积神经网络构建的特征提取器以第一种结构的卷积核来提取特征矩阵的时序特征,输入目标域数据集中变种攻击数据,将数据转化为未知攻击特征1,执行步骤14;步骤14,通过由卷积神经网络构建的特征提取器以第二种结构的卷积核来提取特征矩阵的时序特征,输入目标域数据集中变种攻击数据,将数据转化为未知攻击特征2,执行步
骤15;步骤15,通过由卷积神经网络构建的特征提取器以第三种结构的卷积核来提取特征矩阵的时序特征,输入目标域数据集中变种攻击数据,将数据转化为未知攻击特征3,执行步骤16;步骤16,将步骤13、14和15所生成的未知攻击特征1、未知攻击特征2和未知攻击特征3输出,进行拼接处理,得到最终未知攻击的特征输出,执行步骤17;步骤17,将特征提取器输出的已知攻击特征输入进标签预测器,通过全连接层和softmax层将特征转化为预测标签输出,给出攻击特征的类别,执行步骤18;步骤18,将特征提取器输出的已知、未知攻击特征经过梯度反转层恒等变换,执行步骤19;步骤19,通过梯度反转层的特征进入域分类器,域分类器根据提取出的攻击特征来判断攻击数据是已知攻击还是变种攻击,输出预测的域类别,执行步骤20;步骤20,根据步骤19中域分类器根据得到的域类别计算损失值进行求导后先经过梯度反转层,乘以一个负数,然后反向更新每一层的权值,执行步骤21;步骤21,将训练好的模型保存,并用检测集对训练后的模型进行检测。2.根据权利要求1所述的一种基于域对抗神经网络的车载网络变种攻击入侵检测方法,其特征在于步骤9-20中基于域对抗神经网络的车载网络检测模型的模型结构,以及输入特征的选取和特征矩阵的构造方式,具体包括:特征提取器由三个模块构成,每个模块包含了两个卷积层和两个池化层;分别对输入的特征矩阵进行特征提取得到50维的特征输出;将使用三种不同大小的卷积核进行特征提取后的50维特征结果进行拼接操作,最终得到150维的特征输出;标签预测器接收从特征提取器输出的150维特征,通过全连接层和softmax层将多个神经元的输出映射为四个类别的输出,作为攻击类别的输出结果;域分类器接收从特征提取器输出的150维特征,先经过梯度反转层进行恒等变换,再通过全连接层和softmax层将多个神经元的输出映射为两个类别的输出,作为攻击数据的域类别;再根据前向传播得到的预测损失值,进行求导计算并通过梯度反转层乘以一个负数,将结果取反后,反向传播作用于前面每一层的权值,混淆特征提取器对源域和目标域的数据的特征提取,找到攻击的本质特征;检测模型接收特征矩阵作为输入,包含特征提取器、标签预测器和域分类器;其中,特征矩阵的具体构造方法如下:提取连续的25条can消息的数据段,得到数据段序列;对数据段序列中数据进行十六进制编码,数据段可表示为:data=h
i
(for i=0,...,24)其中h
i
为can data的第i个位值,顺序排列data序列中的25个can data,得到can data序列矩阵,可表示为:data image=data
i
(for i=0,...,24)其中data
i
为第i个can data,通过十六进制编码得到的数据特征矩阵可直接作为检测模型的输入。3.根据权利要求1所述的一种基于域对抗神经网络的车载网络变种攻击入侵检测方
法,其特征在于步骤9-12中的特征提取器模块的设计有效的进行了特征提取,具体包括:步骤9中选择了卷积大小为3
×
3的卷积核来进行第一次特征矩阵的特征提取,得到对特征矩阵提取的50维特征一,继续使用卷积大小为5
×
5的卷积核来进行第二次特征矩阵的特征提取,得到对特征矩阵提取的50维特征二,最后使用卷积大小为7
×
7的卷积核来进行第三次特征矩阵的特征提取,得到对特征矩阵提取的50维特征三;将特征一、二、三经过拼接操作,得到150维的总特征;通过使用三次不同大小卷积核提取的特征,在总体和局部上对于特征矩阵都有很好的特征体现,为后续进行模型训练提供了有效数据输入。

技术总结
本发明公开了一种基于域对抗神经网络的车载网络变种攻击入侵检测方法,利用USB-CANTOOL软件获取真实车辆上的正常数据,挑选注入攻击的ID和数据段。按照攻击方式的不同针对挑选的ID构造攻击并注入到真实车辆中进行攻击,将采集到的数据集划分为源域数据集、目标域数据集以及测试数据集。提取连续的25条CAN消息的数据段,通过三个不同卷积核大小的模块得到的特征经过拼接后输出最终的特征,作为后续工作的输入。将已知攻击的特征作为输入,判断攻击类型进行输出。通过梯度反转层乘以负数进行转换后再反向更新权值,达到对抗的效果。本发明在没有变种攻击数据训练的情况下,学习到攻击的本质特征,避免对于已知数据的特征依赖性,增加了模型的鲁棒性。增加了模型的鲁棒性。增加了模型的鲁棒性。


技术研发人员:赖英旭 魏静雯 陈业 庄俊玺
受保护的技术使用者:北京工业大学
技术研发日:2021.11.27
技术公布日:2022/3/8

最新回复(0)