新形车载网络IDS模型GIDS提高车辆安全功能

来源:控安轩辕实验室
2020-04-07
1691

车辆中的控制器局域网(CAN)总线是一种高效的标准总线,支持所有电子控制单元(ECU)之间的通信。 但是,由于缺乏安全功能,CAN总线不足以保护自身。为了有效地检测可疑网络连接,需要入侵检测系统(IDS)。 与用于Internet的传统IDS不同,用于车辆网络的已知攻击特征很少。 此外,用于车辆的IDS要求很高的准确性,因为任何假阳性错误都会严重影响驾驶员的安全。 为了解决这个问题,提出一种新的车载网络IDS模型GIDS(基于GAN的入侵检测系统),它使用了深度学习模型Generative Adversarial Nets。GIDS可以学会仅使用正常数据来检测未知攻击。

将CAN数据转换为图像

CAN总线支持ECU到ECU的通信。在CAN总线中,频繁传输的数据由特定使用的CAN消息组成。车辆中的ECU每秒向CAN总线生成约2,000个CAN数据。必须能够处理由ECU生成的大量实时CAN数据。如果将CAN数据的所有位直接用于图像转换,则转换后的图像可能会非常复杂。在这种情况下,GIDS可能需要很长时间,不适合实时检测。CAN数据中的CAN ID显示出重复的模式,我们仅从CAN数据中提取了CAN ID的模式进行训练。此外,我们通过使用one-hot向量编码将提取的CAN ID转换为简单图像。该方法可以减少实时检测所需的时间,并提高IDS的性能。首先,因为CAN ID是十六进制的,所以CAN ID的每个元素(例如“ 0x2a0”中的“ 2”)都以16位二进制形式表示。此后,将CAN ID的每个元素的二进制形式编码为one-hot向量。使用“one-hot向量”进行编码可将其中一个比特设为1,其余位全为0。例如,如果CAN ID的元素在“ 0x2a0”中为“ 2”,则one-hot向量仅包含第二位的一位为1,其余所有位设置为0。最后,以16 * 3矩阵形式表示3位的CAN ID,例如“ 0x2a0”。例如,如果CAN ID为“ 0x2a0”,则它由3个one-hot向量组成,例如[0100 ... 000],[0..0100000]和[0..1000000]。

整体设计

1)针对已知攻击的训练:第一鉴别器接收从实际车辆提取的正常CAN图像和异常CAN图像。因为第一个鉴别器在训练过程中使用攻击数据,所以可以检测到的攻击类型可能仅限于训练中使用的攻击。

2)训练未知攻击:通过对抗过程同时训练生成器G和第二个鉴别器。生成器通过使用随机噪声生成伪图像。第二个鉴别器接收正常的CAN图像和生成器生成的伪图像,并估计接收到的图像为真实CAN图像的可能性。即,第二鉴别器鉴别输入图像是真实的CAN图像还是由生成器生成的伪图像。生成器和第二个鉴别器相互竞争,并提高了性能。在GIDS模型中,第二个鉴别器最终赢得了生成器,因此第二个鉴别器甚至可以检测到类似于真实CAN图像的伪图像。

设计判别器

判别器由一个深度神经网络组成,该神经网络由三层组成。 判别器将输入数据的维数减小为0到1之间的一个输出。图显示了当CAN ID数为64时判别器的维数减小的过程。每一层的激活函数为ReLU, 最后一层的激活函数为Sigmoid。 最后,判别器的输出用于在车载网络中区分正常状态和异常状态。

设计生成器

生成器由反卷积神经网络组成,该网络由五层组成。发生器将随机噪声数据的维数扩展为与判别器输入数据大小相同的一个图像。也就是说,生成器生成的伪图像类似于从CAN ID转换的真实CAN图像。每层的激活功能都使用ReLU,而最后一层的激活功能则使用Tanh生成器和判别器通过反向传播来计算成本,从而减少了实际结果与模型输出之间的误差。

 


汽车电子
收藏
点赞
2000