一种车载CAN总线安全防护方法和装置与流程

文档序号:13075667阅读:207来源:国知局
一种车载CAN总线安全防护方法和装置与流程

本发明涉及信息安全技术领域,特别涉及一种车载can总线安全防护方法和装置。



背景技术:

对于汽车这个动辄关系到个人和社会生命财产安全的领域,车联网安全性的保障,将直接影响到车联网行业的发展。

车联网面临的安全威胁很多,主要分为无线和有线入侵。攻击者既可通过入侵3g/4g、wi-fi、蓝牙、射频等无线网络控制车载系统或电控单元,也可通过obd接入、总线接入等方式入侵车辆总线。无论是有线还是无线攻击,最终的落脚点都在can总线上,通过读写can总线数据包实现车辆信息获取和车辆控制。

目前,绝大多数汽车品牌在车联网安全领域特别是车载can总线安全方面并没有采取任何的安全防护措施。



技术实现要素:

有鉴于此,本发明的目的在于提供一种车载can总线安全防护方法和装置,能够解决车联网特别是车载can总线面临的各种安全问题,有效提高车辆安全性。

为了达到上述目的,本发明提供了如下技术方案:

一种车载can总线安全防护方法,应用于任一车辆的can总线网关,该方法包括:

预先配置安全过滤规则;

获取需要在can总线上传输的报文,基于预先配置的安全过滤规则对该报文进行安全检测,如果检测确定该报文存在安全风险,则根据该报文对所述任一车辆进行安全防护处理,否则,对该报文进行正常转发。

一种车载can总线安全防护装置,应用于任一车辆的can总线网关,该装置包括:配置单元、获取单元、检测单元、处理单元;

所述配置单元,用于预先配置安全过滤规则;

所述获取单元,用于获取需要在can总线上传输的报文;

所述检测单元,用于基于配置单元预先配置的安全过滤规则对获取单元获取的报文进行安全检测;

所述处理单元,用于如果检测单元检测确定该报文存在安全风险,则根据该报文对所述任一车辆进行安全防护处理,否则,对该报文进行正常转发。

由上面的技术方案可知,本发明中,通过预先配置安全过滤规则;使用该安全过滤规则对需要在can总线上传输的报文进行安全检测,并在检测确定该报文存在安全风险时,对车辆进行安全防护处理,可以有效解决车联网特别是车载can总线面临的各种安全问题,提高车辆安全性。

附图说明

图1是本发明实施例车辆的can总线网关部署位置示意图;

图2是本发明实施例车载can总线安全防护方法流程图;

图3是本发明实施例车载can总线安全防护装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。

车辆的can总线网关的具体部署位置如图1所示,位于can总线、车载系统和obd接口的中心,其主要是功能是数据转发,可以实现can-can、obd-can、can-obd之间的can数据转发。需要说明的是,在图1中,can总线上连接的黑色圆点表示连接到can总线的功能节点。

本发明中,在车辆的can总线网关上实施对车辆的安全防护方案。

参见图2,图2是本发明实施例车载can总线安全防护方法流程图,该方法应用于任一车辆的can总线网关,如图2所示,该方法主要包括以下步骤:

步骤201、预先配置安全过滤规则。

本实施例中,安全过滤规则为以下三种安全匹配规则的任意组合:三种安全匹配规则分别为基于标识符的安全匹配规则、基于报文发送频率的安全过滤规则、基于车辆状态的安全过滤规则。其中,

基于标识符的安全匹配规则中包括:合法标识(id)集合。如果报文的id不在合法id集合中,即可判断该报文为异常数据,车辆可能正在遭受攻击。在实际应用中,连接在can总线上的各个功能节点在发送报文时,报文中均携带一个与该功能节点相对应的id,在本实施例中,将连接在can总线上的各功能节点对应的id均称为合法id。

基于报文发送频率的安全过滤规则包括:所有合法id及每个合法id对应的正常报文发送频率区间。在实际应用中,在can总线上传输的某些特定报文的发送频率是固定的,考虑到误差的存在,这些报文的发送频率可以有一定的波动,但是不可能有太大的波动,因此,如果检测发现某一特定报文的发送频率与原有的发送频率之间差距较大,则可以确定此报文存在问题,可能是攻击can总线的报文。

基于车辆状态的安全过滤规则包括:所有合法id及每个id对应的正常车辆状态集合。在真实的车辆环境中,数据合法性还和车辆状态密切关联,例如车辆高速行驶状态下的重放车门解锁指令应该被认定为非法。因此,在本实施例中,可以将数据和车辆状态关联起来,也即:在报文的id与can总线上传输此报文时可能存在的车辆状态集合之间建立起一一对应的关系。这样,车辆在高速行驶状态下,如果can总线上传输有重放车门解锁指令/报文,则可以通过查找该指令的id对应的正常车辆状态集合,并确定高速行驶状态并不在该集合内,因此可以确定can总线上传输的数据与车辆当前状态不兼容,车辆可能正在遭受攻击。

步骤202、获取需要在can总线上传输的报文,基于预先配置的安全过滤规则对该报文进行安全检测,如果检测确定该报文存在安全风险,则根据该报文对该车辆进行安全防护处理,否则,对该报文进行正常转发。

本步骤中,基于预先配置的安全过滤规则对该报文进行安全检测的方法为:使用安全过滤规则包括的所有安全匹配规则对该报文进行安全风险判断,如果存在至少一个安全匹配规则,根据该安全匹配规则确定该报文存在安全风险,则确定该报文存在风险,否则,确定该报文不存在安全风险。

具体地,使用安全过滤规则包括的所有安全匹配规则对该报文进行安全风险判断,包括:

当安全过滤规则中包括基于标识符的安全匹配规则时,如果该报文的id不是合法id集合中的合法id,则确定该报文存在安全风险;

当安全过滤规则中包括基于报文发送频率的安全过滤规则时,在基于报文发送频率的安全过滤规则中该报文的id对应的正常报文发送频率区间;记录获取该报文的时间t0,并计算t0与记录的获取该报文之前最近一次获取到该报文的时间t1(也即最近一次/上次接收到该id的报文时记录的时间)之间的时间间隔,根据该时间间隔确定具有该报文的发送频率,如果发送频率未处于该报文的id对应的正常报文发送频率区间内,则确定该报文的存在安全风险;

当安全过滤规则中包括基于车辆状态的安全过滤规则时,在基于车辆状态的安全过滤规则查找该报文的id对应的正常车辆状态集合,并获取该车辆的当前状态,如果该车辆的当前状态不是该报文的id对应的正常车辆状态集合中的车辆状态,则确定该报文存在安全风险。

在实际应用中,进入can总线网关的报文的来源有多种可能,例如,报文可能是来自于车载系统、obd接口、或can总线,根据报文来源的不同,可以对报文进行不同的处理。其中,对于来自车载系统、obd接口,可以上报告警信息,同时对报文实施拦截,使其无法进入can总线;而对于来自can总线的报文,可以只通过上报告警信息,令用户知道风险的存在,另外,也可以采用一定措施来关闭can总线,例如,可以在can总线上单独设置一功能节点(该功能节点可以是can总线网关),当can总线上存在安全风险时,可以触发该功能节点向can总线发送报文(关闭指令),其它功能节点接收到该功能节点发送的报文后,停止工作,不再向can总线发送报文,从而使can总线关闭(不再传输数据)。

在本发明的一个实施例中,根据该报文对该车辆进行安全防护处理的方法具体如下:

将该报文作为异常报文,根据该异常报文生成告警信息并上报;

如果是该报文是来自于车载系统或can总线的obd接口,则拦截该报文,如果该报文是来自于can总线,则关闭can总线。

上述关闭can总线的方法具体可以为:向can总线发送一预先设定的关闭指令,以使连接到can总线上的所有功能节点根据该关闭指令停止向can总线发送报文。

以上对本发明车载can总线安全防护方法进行了详细说明,本发明能够对重放攻击、中间人攻击、拒绝服务攻击、模糊攻击等多种攻击类型起到安全防护的作用,具体如表一所示:

表一

本发明还提供了一种车载can总线安全防护装置,下面结合图3进行详细说明。

参见图3,图3是本发明实施例车载can总线安全防护装置的结构示意图,该装置应用于任一车辆的can总线网关,如图3所示,该装置包括:配置单元301、获取单元302、检测单元303、处理单元304;其中,

配置单元301,用于预先配置安全过滤规则;

获取单元302,用于获取需要在can总线上传输的报文;

检测单元303,用于基于配置单元301预先配置的安全过滤规则对获取单元302获取的报文进行安全检测;

处理单元304,用于如果检测单元303检测确定该报文存在安全风险,则根据该报文对该车辆进行安全防护处理,否则,对该报文进行正常转发。

图3所示装置中,

所述安全过滤规则为以下三种安全匹配规则的任意组合:三种安全匹配规则分别为基于标识符的安全匹配规则、基于报文发送频率的安全过滤规则、基于车辆状态的安全过滤规则。

图3所示装置中,

所述检测单元303,基于预先配置的安全过滤规则对该报文进行安全检测时,用于:

使用安全过滤规则包括的所有安全匹配规则对该报文进行安全风险判断,如果存在至少一个安全匹配规则,根据该安全匹配规则确定该报文存在安全风险,则确定该报文存在风险,否则,确定该报文不存在安全风险。

图3所示装置中,

所述基于标识符的安全匹配规则中包括:合法标识id集合;

所述基于报文发送频率的安全过滤规则包括:所有合法id及每个合法id对应的正常报文发送频率区间;

所述基于车辆状态的安全过滤规则包括:所有合法id及每个id对应的正常车辆状态集合;

所述检测单元303,使用安全过滤规则包括的所有安全匹配规则对该报文进行安全风险判断,包括:

当安全过滤规则中包括基于标识符的安全匹配规则时,如果该报文的id不是合法id集合中的合法id,则确定该报文存在安全风险;

当安全过滤规则中包括基于报文发送频率的安全过滤规则时,在基于报文发送频率的安全过滤规则中该报文的id对应的正常报文发送频率区间;记录获取该报文的时间t0,并计算t0与记录的获取该报文之前最近一次获取到该报文的时间t1之间的时间间隔,根据该时间间隔确定具有该报文的发送频率,如果发送频率未处于该报文的id对应的正常报文发送频率区间内,则确定该报文的存在安全风险;

当安全过滤规则中包括基于车辆状态的安全过滤规则时,在基于车辆状态的安全过滤规则查找该报文的id对应的正常车辆状态集合,并获取所述任一车辆的当前状态,如果所述任一车辆的当前状态不是该报文的id对应的正常车辆状态集合中的车辆状态,则确定该报文存在安全风险。

图3所示装置中,

所述处理单元304,根据该报文对所述任一车辆进行安全防护处理时,用于:

将该报文作为异常报文,根据该异常报文生成告警信息并上报;

如果是该报文是来自于车载系统或can总线的obd接口,则拦截该报文,如果该报文是来自于can总线,则关闭can总线。

图3所示装置中,

所述配置单元301,进一步用于预先配置用于指示can总线上的所有功能节点停止发送报文的关闭指令;

所述处理单元304,关闭can总线时,用于:向can总线发送所述关闭指令,以使连接到can总线上的所有功能节点根据该关闭指令停止向can总线发送报文。

从上面的技术方案可以看出,本发明有如下几点优点:

(1)兼顾对内部和外部can数据的检测

本发明应用于can总线网关,其连接车辆内部所有的can网络,同时还接收来自obd和车载系统的外部can数据。可以直接获取外部和内部的can总线数据,并分别对内外部数据进行检测。因此,本发明既可防范obd入侵,车载系统劫持等外部攻击,也可检测恶意节点接入,ecu劫持等内部数据异常。

(2)无需对车载电控单元做任何修改

现有技术方案,如karamba和towersec提供的解决方案,均需要对ecu进行定制,在ecu系统中嵌入防护模块。这导致ecu的计算量增加。而本发明只需在can总线网关部署一个防护模块即可对内外部的所有数据进行检测,对整个总线系统提供防护能力。无需对现有车辆的can节点做任何修改,能有效地控制车辆制造成本。

(3)基于标识符、发送频率、车辆状态的多重检测

本发明对内外部的报文可以进行标识符匹配,发送频率检测,车辆状态分析共三层检测,安全性大大提高。可以实现对重放攻击、中间人攻击、拒绝服务攻击和模糊攻击等多种攻击类型进行检测和拦截。

(4)高通用性

用户或车辆厂商只需要根据具体车型的私有can协议配置安全规则库,通过用户接口添加、修改、删除、更新相关规则,无需对车辆的总线结构,电控系统做任何修改。因此本发明具备较高的通用性。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1