实现一种用于车载网络的高精度实时入侵检测方法

(1)基本概念

1)CAN总线消息:CAN总线消息中,消息的优先级由其ID字段标识。正常情况下,在一定时间(或一定窗口)内取样得到的CAN总线消息,各ID段消息占据的比例应该不会出现大的波动,取样窗口的信息熵应处于一定的范围之内。

2)DoS攻击: 攻击者可以在总线上的短周期注入高优先级消息,影响CAN总线对于正常消息的处理,影响汽车电子系统的正常响应。
假设采样窗口的长度为w。由于DoS攻击的特性,在一个采样窗口内高优先级消息的比例会在短时间内增大,相应的低优先级的消息比例降低。这会导致采样窗口内信息熵的异常变化。实验计算正常情况下CAN总线中信息熵的平均值,预测DoS攻击时设置决策条件区间(),将信息熵超出决策条件的采样窗口预测为发生异常情况(即为DoS攻击)。其中,为偏差,k为控制决策区间敏感度的常数。

3)信息熵:熵是信息学上代表随机变量的不确定度的度量。一个离散随机变量X的熵H(X)定义为:

4)模拟退火算法,它是一种启发式搜索算法,按照预定的控制策略进行搜索,在搜索过程中获取的中间信息将用来改进控制策略。

(2)相关定义

将一个采样(滑动)窗口看作一个块,那么定义:
1)预测准确:Ra=正确检测为攻击块的数目Da/攻击块总数Ta。
2)假阳性率:Rn=正常信息块被检测为攻击块的数目Dn/正常信息块的数目Tn。
3)响应时间:Rt=攻击开始时间At-攻击检测时间Dt。

(3)模拟退火算法

算法简介
模拟退火适用的问题通常是一些求最优解的问题,比如,把问题抽象地看成一个如图1所示的毫无规律的函数,要找到它的最小值。
图1 示例函数

找最小值的最常用方法是贪心算法,如图所示。

从A点出发,不断找更小的点,直至到达B点。然而,B点显然不是函数的最小值点,贪心算法过于局限在局部的一个凹部分而无法跳出去去寻找更优的解。

为了解决这一问题,科学家们想到了物理的退火降温的过程:将固体加温至充分高,再让其徐徐冷却,加温时,固体内部粒子随温升变为无序状,内能增大,而徐徐冷却时粒子渐趋有序,在每个温度都达到平衡态,最后在常温时达到基态,内能减为最小。需要注意的是一定要徐徐冷却,也就是物体和外界温度相差越低,退火时间越长退火的效果就越好。这也就是这算法名字的由来。

在算法的初始化阶段,选择一个较高的温度,每轮迭代时温度的变化率一般取0.95~0.99,模拟徐徐降温,最终当趋于0时终止算法。

随机选择一个初始解x,让它不断变动。为了模拟变动的大小随温度的降低而降低,我们每次的应该在一个大小与温度成正比的值域内随机取值。

x改变后的值为,如果,则令;如果,与贪心算法不同的是,模拟退火算法以一定概率接受新值,即令,以跳出局部最优解,通常取。
值得注意的是,模拟退火依赖随机过程,并不能保证一定得到最优解

(4)滑动窗口过程说明
在这里插入图片描述

步骤1:将攻击块(携带用于评估的标签)添加到测试数据集。
步骤2:从测试数据集中提取CAN消息ID,以获得新的IDS集。
步骤3:使用滑动窗口作为信息熵采样窗口,分析滑动窗口内捕获的消息ID的信息熵。
步骤4:将步骤3得到的信息熵与正常信息熵范围进行比较,判断是否存在攻击块。
步骤5:将步骤4得到的攻击结果与添加的攻击块的标签进行比较,得到初始检测精度数据。
步骤6:为下一次迭代选择新的滑动窗口大小和正常范围。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值