基于Adaboost的CAN总线异常检测方法及系统技术方案

技术编号:34467689 阅读:11 留言:0更新日期:2022-08-10 08:41
本发明专利技术公开了一种基于Adaboost的CAN总线异常检测方法及系统,该方法包括:对Adaboost模型进行训练;获取若干汽车处于正常和异常状态下的CAN数据帧包,以得到数据集B和数据集C;通过Adaboost模型分别对数据集B、C中的每一CAN数据帧进行分辨,以得到每一CAN数据帧包中异常CAN数据帧所占比例,并通过统计分析获得异常率阈值;通过Adaboost模型获得当前状态下的CAN数据帧包的异常率,将该异常率与异常率阈值作比较,并根据比较结果判定汽车的CAN总线当前处于正常或异常状态;通过上述方法,无需查阅汽车对应私有协议文档,普适性较好,对测试平台性能要求较低,可适应各种各样的测试环境,而且测试效率高,而且可实现流程自动化,无需专业人员的参与即可完成测试,节约人力成本。本。本。

【技术实现步骤摘要】
基于Adaboost的CAN总线异常检测方法及系统


[0001]本专利技术涉及CAN总线异常检测
,尤其涉及一种基于Adaboost的CAN总线异常检测方法及系统。

技术介绍

[0002]汽车中的ECU使用明文传输数据,存在缺乏安全检测机制的隐患,以及潜在的网络安全风险。为了发现CAN总线网络中潜在的网络安全漏洞,传统的异常检测机制主要基于汽车开发商根据CAN总线私有协议制定,通用性较差,且在测试环境中很难有效监控CAN总线网络。另外,在嵌入式系统、网络节点设备和服务器中,异常检测工具可通过分析目标系统返回的数据是否符合预期来判断是否存在异常行为,或者查询目标系统的日志,在目标系统上安装一个监控程序来监控其系统资源,由此可有效判断系统是否存在异常行为,但是汽车中ECU不同,其固件相对简单,没有操作系统,且部分ECU具有基于“请求

响应”的访问控制机制,这使得在ECU上安装异常监控程序较难。因此,由于汽车消息传输网络的封闭性,使得很难在CAN总线网络中使用与传统网络设备类似的异常检测方法并获得好的检测效果。

技术实现思路

[0003]本专利技术的目的是为解决上述技术问题而提供一种无需查阅汽车对应私有协议文档、普适性较好且无需专业人员即可对汽车的CAN总线的安全状态进行检测的基于Adaboost的CAN总线异常检测方法及系统。
[0004]为了实现上述目的,本专利技术公开了一种基于Adaboost的CAN总线异常检测方法,其包括:
[0005]采用基础数据对Adaboost模型进行训练,使得训练好的所述Adaboost模型具备对所述CAN数据帧的异常分辨的能力;
[0006]获取若干汽车处于正常状态下的CAN数据帧包,以得到数据集B;
[0007]获取若干汽车处于异常状态下的CAN数据帧包,以得到数据集C;
[0008]通过所述Adaboost模型分别对所述数据集B、C中的每一CAN数据帧包中的每一CAN数据帧进行分辨,以得到每一所述CAN数据帧包中异常CAN数据帧所占比例,并通过统计分析获得用于判定CAN总线处于正常状态或异常状态的CAN数据帧包的异常率阈值;
[0009]通过所述Adaboost模型获得当前状态下的CAN数据帧包的异常率,将该异常率与所述异常率阈值作比较,并根据比较结果判定汽车的CAN总线当前处于正常或异常状态。
[0010]较佳地,用于训练所述Adaboost模型的基础数据的获取方法包括:
[0011]采集汽车CAN总线中传输的所述CAN数据帧,以获得用作所述基础数据的数据集A,所述数据集A中包括若干已知属于正常数据的CAN数据帧和若干已知属于异常数据的CAN数据帧。
[0012]较佳地,,采用数据集A对所述Adaboost模型进行训练前,还包括对所述数据集A进
行处理的预处理步骤:
[0013]将所述CAN数据帧中的标识符、数据域部分数据提取并存储到目标文件,并在所述目标文件中为与每一所述CAN数据帧所对应的数据条添加状态标识符,所述状态标识符表示该CAN数据帧为正常状态或异常状态。
[0014]较佳地,通过OBD接口采集CAN总线上传输的CAN数据帧。
[0015]本专利技术还公开一种基于Adaboost的CAN总线异常检测系统,其包括模型训练模块、第一数据采集模块、第二数据采集模块、阈值生成模块、检测模块以及比对模块;
[0016]所述模型训练模块,用于采用基础数据对Adaboost模型进行训练,使得训练好的所述Adaboost模型具备对所述CAN数据帧的异常分辨的能力;
[0017]所述第一数据采集模块,用于获取若干汽车处于正常状态下的CAN数据帧包,以得到数据集B;
[0018]所述第二数据采集模块,用于获取若干汽车处于异常状态下的CAN数据帧包,以得到数据集C;
[0019]所述阈值生成模块,用于通过所述Adaboost模型分别对所述数据集B、C中的每一CAN数据帧包中的每一CAN数据帧进行分辨,以得到每一所述CAN数据帧包中异常CAN数据帧所占比例,并通过统计分析获得用于判定CAN总线处于正常状态或异常状态的CAN数据帧包的异常率阈值;
[0020]所述检测模块,用于通过Adaboost模型检测当前状态下的CAN数据帧包的异常率;
[0021]所述比对模块,用于将所述检测模块返回的所述异常率与所述异常率阈值比较,并根据比较结果判定汽车的CAN总线当前处于正常或异常状态。
[0022]较佳地,还包括训练数据采集模块,所述训练数据采集模块用于采集汽车CAN总线中传输的所述CAN数据帧,以获得用作训练所述Adaboost模型的所述基础数据的数据集A,所述数据集A中包括若干已知属于正常数据的CAN数据帧和若干已知属于异常数据的CAN数据帧。
[0023]较佳地,还包括对用于训练所述Adaboost模型的数据集A进行处理的预处理模块,所述预处理模块用于将所述CAN数据帧中的标识符、数据域部分数据提取并存储到目标文件,并在所述目标文件中为与每一所述CAN数据帧所对应的数据条添加状态标识符,所述状态标识符表示该CAN数据帧为正常状态或异常状态。
[0024]较佳地,还包括与CAN总线通信连接的OBD接口,所述OBD接口用于采集CAN总线上传输的CAN数据帧。
[0025]本专利技术还公开另一种基于Adaboost的CAN总线异常检测系统,其包括:
[0026]一个或多个处理器;
[0027]存储器;
[0028]以及一个或多个程序,其中一个或多个程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述程序包括用于执行如上所述的基于Adaboost的CAN总线异常检测方法的指令。
[0029]本专利技术还公开一种计算机可读存储介质,其包括计算机程序,所述计算机程序可被处理器执行以完成如上所述的基于Adaboost的CAN总线异常检测方法。
[0030]与现有技术相比,本专利技术CAN总线异常检测方法具有如下有益技术效果:
[0031]1、根据CAN总线内的数据帧进行数据挖掘与分析,无需查阅汽车对应私有协议文档,普适性较好;
[0032]2、采用Adaboost模型自动对汽车当前CAN总线中的数据进行自动检测,只需通过较简单的运算即可实现异常判定,对测试平台性能要求较低,可适应各种各样的测试环境,而且测试效率高;
[0033]3、除了在Adaboost模型训练阶段需要专业人员参与,在实际检测运行过程中,可实现流程自动化,无需专业人员的参与即可完成测试;
[0034]4、通过对CAN数据帧的直接分析,具有更高细粒度的异常监测能力,对于肉眼可见或不可见的异常行为均可监测。
附图说明
[0035]图1为本专利技术实施例中CAN总线异常检测方法流程图。
[0036]图2为图1中步骤S1的详细流程图。
[0037]图3为本专利技术实施例中CA本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Adaboost的CAN总线异常检测方法,其特征在于:采用基础数据对Adaboost模型进行训练,使得训练好的所述Adaboost模型具备对所述CAN数据帧的异常分辨的能力;获取若干汽车处于正常状态下的CAN数据帧包,以得到数据集B;获取若干汽车处于异常状态下的CAN数据帧包,以得到数据集C;通过所述Adaboost模型分别对所述数据集B、C中的每一CAN数据帧包中的每一CAN数据帧进行分辨,以得到每一所述CAN数据帧包中异常CAN数据帧所占比例,并通过统计分析获得用于判定CAN总线处于正常状态或异常状态的CAN数据帧包的异常率阈值;通过所述Adaboost模型获得当前状态下的CAN数据帧包的异常率,将该异常率与所述异常率阈值作比较,并根据比较结果判定汽车的CAN总线当前处于正常或异常状态。2.根据权利要求1所述的基于Adaboost的CAN总线异常检测方法,其特征在于,用于训练所述Adaboost模型的基础数据的获取方法包括:采集汽车CAN总线中传输的所述CAN数据帧,以获得用作所述基础数据的数据集A,所述数据集A中包括若干已知属于正常数据的CAN数据帧和若干已知属于异常数据的CAN数据帧。3.根据权利要求2所述的基于Adaboost的CAN总线异常检测方法,其特征在于,采用数据集A对所述Adaboost模型进行训练前,还包括对所述数据集A进行处理的预处理步骤:将所述CAN数据帧中的标识符、数据域部分数据提取并存储到目标文件,并在所述目标文件中为与每一所述CAN数据帧所对应的数据条添加状态标识符,所述状态标识符表示该CAN数据帧为正常状态或异常状态。4.根据权利要求2所述的基于Adaboost的CAN总线异常检测方法,其特征在于,通过OBD接口采集CAN总线上传输的CAN数据帧。5.一种基于Adaboost的CAN总线异常检测系统,其特征在于,包括模型训练模块、第一数据采集模块、第二数据采集模块、阈值生成模块、检测模块以及比对模块;所述模型训练模块,用于采用基础数据对Adaboost模型进行训练,使得训练好的所述Adaboost模型具备对所述CAN数据帧的异常分辨的能力;所述第一数据采集模块,用于获取若干汽车处于正常状态下的CAN数据帧包,以得到数据集B;所述第二数...

【专利技术属性】
技术研发人员:万振华张海春黄柯霖
申请(专利权)人:开源网安物联网技术武汉有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1