CN110430223A - 基于多级反馈队列的车辆控制系统网络安全检测系统 - Google Patents

基于多级反馈队列的车辆控制系统网络安全检测系统 Download PDF

Info

Publication number
CN110430223A
CN110430223A CN201910863386.1A CN201910863386A CN110430223A CN 110430223 A CN110430223 A CN 110430223A CN 201910863386 A CN201910863386 A CN 201910863386A CN 110430223 A CN110430223 A CN 110430223A
Authority
CN
China
Prior art keywords
security incident
queue
detection
security
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910863386.1A
Other languages
English (en)
Other versions
CN110430223B (zh
Inventor
何占博
王颖
陈慧龙
郑德利
宋悦
高飞
刘军
王黎
朱琳
闫丛
张晛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jinghang Computing Communication Research Institute
Original Assignee
Beijing Jinghang Computing Communication Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jinghang Computing Communication Research Institute filed Critical Beijing Jinghang Computing Communication Research Institute
Priority to CN201910863386.1A priority Critical patent/CN110430223B/zh
Publication of CN110430223A publication Critical patent/CN110430223A/zh
Application granted granted Critical
Publication of CN110430223B publication Critical patent/CN110430223B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明属于车辆控制系统网络安全检测技术领域,具体涉及一种基于多级反馈队列的车辆控制系统网络安全检测系统,包括:车控网络拓扑探测模块、车控网络协议解析模块、车控网络设备漏洞扫描模块、安全漏洞与安全事件POC库、安全事件优先级排队模块、安全事件后备队列寄存模块以及安全事件注入检测模块;其依次生成用于注入检测的安全事件队列,并采用多级反馈队列轮转调度机制注入检测安全事件,能够更加合理、高效、精准的定位车辆控制网络安全漏洞与脆弱点,从而达到自主可控的车辆控制系统网络安全检测目标。该方案自动化程度高,安全事件注入检测机制合理、高效、精准,检测场景切合攻击者真实攻击行为,网络安全检测全过程自主可控。

Description

基于多级反馈队列的车辆控制系统网络安全检测系统
技术领域
本发明属于车辆控制系统网络安全检测技术领域,具体涉及一种基于多级反馈队列的车辆控制系统网络安全检测系统。
背景技术
车辆控制系统是工业控制系统的重要分支之一,车辆控制系统网络构成主要包括网关、系统总线、电子控制单元(Electronic Control Unit,ECU)、各类车载设备和子系统功能模块等。车辆控制网络一般以控制器局域网络(Controller Area Network,CAN)总线为主、以局域互联网络(Local Interconnect Network,LIN)等低成本总线为辅的总线组合方式实现车辆的分布式电子系统控制。车辆控制网络一般通过网关集成动力总成、车身控制、底盘控制、诊断控制和商业信息五个CAN子网,每个CAN子网挂载相关下属子系统ECU,此外,车钥匙开关、定速巡航开关等部分车载控制器直接与网关或CAN总线连接,车窗、转向灯等车身控制LIN网络则通过车身控制模块(BCM)接入车身控制CAN。随着无线网络技术发展,目前绝大多数车型已加装无线通讯模块,通过蓝牙(如胎压监测)、射频信号(如电子钥匙)等方式接入总线网络,车载中控电脑、远程控制Tbox等设备模块已经实现通过无线移动通信技术与外界网络互联。
传统车辆控制系统网络集成了大量个性化、定制化的总线形态、电子设备和应用系统,面临着网络协议攻击、重放攻击、逆向工程、漏洞注入、越权访问、物理端口非法接入等诸多安全风险。对于新兴的自动驾驶技术而言,其车辆控制网络的安全性更复杂、风险点更多、自主可控性更差,自动驾驶意味着车辆控制权一旦被恶意劫持,将直接威胁人身安全、交通安全甚至社会安全。目前,车辆控制系统网络安全风险主要体现在三个方面:1)网络防护设备缺失导致边界防护能力不足:车辆控制网络具有移动性、专用性、封闭性等特点,且考虑计算资源、设备功耗、性能衰减等限制因素,无法适配完善的防火墙、入侵防御、流量控制、接入认证等安全加固与防护设备,导致车辆控制网络边界防护能力有限;2)车辆控制网络协议设计本身存在安全漏洞:车辆控制网络采用公开的CAN等标准总线,缺乏完善的安全加密、安全认证和边界防护机制,部分电子设备与控制总线直连,基于蓝牙、射频信号等近场无线网络的电子钥匙、胎压监测(TPMS)等应用场景进一步增加了车辆控制网络被恶意入侵的风险。攻击者可通过OBD调试接口或总线节点轻易接入车辆控制网络,伪造控制信息并注入车辆控制网络,利用报文截获、协议解析等手段破解、篡改明文传输的车辆控制协议报文,进而对车辆控制网络实施控制或破坏;3)车辆控制系统网络安全检测方法亟待提高:传统车辆控制网络安全检测采用人工手动、逐个依序地通过OBD接口接入车辆控制总线,截取报文、破解协议、利用漏洞注入安全事件以验证车辆控制系统网络安全等级,安全事件注入检测全过程需要人工高度参与、自动化程度低,此外,攻击者行为没有一成不变的固定模式,现有非自主可控安全事件注入检测机制亦无法模拟更真实的攻击者攻击行为等场景。
从以上分析可知,目前车辆控制系统网络安全检测技术的不足主要是:由于车辆控制网络边界防护能力不足和协议设计本身存在的安全漏洞,现有车辆控制系统网络安全检测技术尚未实现自动化程度更高、安全事件注入检测机制更合理、检测场景更切合真实攻击行为、检测过程更加自主可控的检测目标。因此,为准确验证车辆控制系统网络安全等级,设计一种基于多级反馈队列的车辆控制系统网络安全检测系统是非常必要的,其好处是可以实现自动化程度更高,安全事件注入检测机制更合理、更高效、更精准,检测场景更切合真实攻击行为,安全检测全过程更加自主可控的车辆控制系统网络安全检测。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:针对车辆控制系统网络安全检测技术领域,如何克服现有技术不足,提供一种基于多级反馈队列的车辆控制系统网络安全检测系统。
(二)技术方案
为解决上述技术问题,本发明提供一种基于多级反馈队列的车辆控制系统网络安全检测系统,所述基于多级反馈队列的车辆控制系统网络安全检测系统包括安全事件匹配生成区和安全事件注入检测区;
其中,所述安全事件匹配生成区包括:车控网络拓扑探测模块、车控网络协议解析模块、车控网络设备漏洞扫描模块、安全漏洞与安全事件POC库、安全事件优先级排队模块、安全事件后备队列寄存模块;
所述安全事件注入检测区包括:安全事件注入检测模块和目标车辆控制系统网络;
(1)车控网络拓扑探测模块
所述车控网络拓扑探测模块包括:总线网络拓扑探测单元、车载无线通信设备探测单元、网络拓扑信息发送单元;
所述总线网络拓扑探测单元用于根据用户指令探测目标车辆控制系统网络的总线网络拓扑结构,并获取目标车辆控制系统网络的子网状态信息;
所述车载无线通信设备探测单元用于探测车载无线通信设备信息;
所述网络拓扑信息发送单元用于接收上述总线网络拓扑结构、子网状态信息和车载无线通信设备信息,并整合总线网络拓扑结构和子网状态信息发送给车控网络协议解析模块,整合总线网络拓扑结构和车载无线通信设备信息发送给车控网络设备漏洞扫描模块;
(2)车控网络协议解析模块
所述车控网络协议解析模块包括:协议数据报文存储单元、总线协议漏洞扫描单元、总线协议解析单元、总线协议比对单元、已知协议检测单元、未知协议检测单元、数据报文重放检测单元、网络协议解析信息发送单元;
所述协议数据报文存储单元用于接收网络拓扑信息发送单元发来的总线网络拓扑结构和子网状态信息,收集、存储总线网络中的协议数据报文;
所述总线协议漏洞扫描单元用于对协议数据报文进行总线协议漏洞扫描,生成总线协议漏洞扫描结果;
所述总线协议解析单元用于对协议数据报文进行总线协议解析,生成总线协议解析结果;
所述总线协议比对单元用于对协议数据报文进行总线协议比对,判断总线网络是否被非法篡改,生成总线协议比对结果;
所述已知协议检测单元用于对协议数据报文进行已知协议的安全性检测,生成已知协议检测结果;
所述未知协议检测单元用于对协议数据报文进行未知协议的安全性检测,生成未知协议检测结果;
所述数据报文重放检测单元用于将获取的协议数据报文进行重放,检测总线协议的抗重放攻击能力,生成数据报文重放检测结果;
所述网络协议解析信息发送单元用于将总线协议漏洞扫描结果、总线协议解析结果、总线协议比对结果、已知协议检测结果、未知协议检测结果和数据报文重放检测结果整合为车控网络协议解析结果信息发送给安全漏洞与安全事件POC库;
(3)车控网络设备漏洞扫描模块
所述车控网络设备漏洞扫描模块包括:总线网关固件安全检测单元、总线网关流量控制检测单元、OBD接口安全检测单元、漏洞扫描结果信息发送单元;
所述总线网关固件安全检测单元用于接收网络拓扑信息发送单元发来的总线网络拓扑结构和车载无线通信设备信息,检测总线网络网关固件安全性,检测固件是否存在逻辑漏洞、是否具备防非法升级篡改机制,生成总线网关固件安全检测结果;
所述总线网关流量控制检测单元用于根据总线网络拓扑结构检测网关能否对各子网进行流量控制,生成总线网关流量控制检测结果;
所述OBD接口安全检测单元用于根据总线网络拓扑结构检测OBD接口安全性,检测能否通过OBD接口获取全网报文,生成OBD接口安全检测结果;
所述漏洞扫描结果信息发送单元用于将总线网关固件安全检测结果、总线网关流量控制检测结果、OBD接口安全检测结果整合为车控网络设备漏洞扫描结果信息发送给安全漏洞与安全事件POC库;
(4)安全漏洞与安全事件POC库
所述安全漏洞与安全事件POC库包括:安全漏洞库、安全事件POC库、安全事件集生成单元、安全事件集发送单元;
所述安全漏洞库用于存储车控网络安全漏洞,漏洞包含CVE编号、漏洞名称、漏洞特征描述、漏洞威胁等级、关联安全事件标识五个属性;
所述安全事件POC库用于存储检测漏洞的安全事件,安全事件与安全漏洞库中的漏洞相互关联,安全事件POC库为每个安全事件配置一个属性状态控制表,属性状态控制表中包含安全事件的唯一标识、关联漏洞CVE_ID、安全事件优先级、注入检测过程调度状态信息、注入检测结果签章状态信息、检测标准时间周期以及检测未完成计数器;
所述安全事件集生成单元用于接收车控网络协议解析模块发来的车控网络协议解析结果信息与车控网络设备漏洞扫描模块发来的车控网络设备漏洞扫描结果信息,提取车控网络协议解析结果信息与车控网络设备漏洞扫描结果信息中每个漏洞的CVE编号、漏洞名称、漏洞特征描述信息,并根据以上三个漏洞属性信息与安全漏洞库中现存漏洞的对应属性相匹配,匹配完成后生成已发现漏洞集合,进一步根据漏洞属性中关联安全事件标识,查找并生成与全部所发现漏洞相关联的安全事件集合;
其中,所述安全事件集合包含安全事件及其属性状态控制表,属性状态控制表中的安全事件优先级根据其反向追踪对应漏洞的威胁等级进行赋值,漏洞威胁等级越高,安全事件优先级越高、数值越大;
所述安全事件集发送单元用于将生成的安全事件集合发送至安全事件优先级排队模块;
(5)安全事件优先级排队模块
所述安全事件优先级排队模块用于接收安全漏洞与安全事件POC库发来的安全事件集合,并根据安全事件的属性状态控制表中的安全事件优先级数值大小进行冒泡排序,生成以事件优先级数值最大的安全事件为队首、事件优先级数值最小的安全事件为队尾的安全事件后备队列,队列长度为Olen,最后将安全事件后备队列发送至安全事件后备队列寄存模块;
(6)安全事件后备队列寄存模块
所述安全事件后备队列寄存模块接收安全事件优先级排队模块发来的安全事件后备队列,并按序以队列形式存储安全事件后备队列,存储完成后,安全事件后备队列寄存模块向安全事件注入检测模块发送检测开始触发信号;
(7)安全事件注入检测模块
所述安全事件注入检测模块包括:安全事件就绪队列集、安全事件阻塞队列、就绪调度单元、阻塞调度单元、多级反馈调度单元、注入检测执行单元;
所述安全事件就绪队列集包括安全事件就绪队列R1,R2,…,Rk,k可自定义,队列长度均为Rlen,用于存储等待多级反馈调度单元调度的安全事件,调度优先级为R1>R2>…>Rk;
所述安全事件阻塞队列用于存储注入检测执行单元在注入检测过程中返回的需要重调度或不适用的安全事件,同时存储多级反馈调度单元在多级反馈调度过程中返回的置为不适用的安全事件,队列长度为Blen;
所述就绪调度单元用于持续监测是否收到检测开始触发信号,在收到检测开始触发信号的情况下,监测安全事件就绪队列R1、安全事件阻塞队列、安全事件后备队列的状态,根据就绪调度单元与阻塞调度单元调度规则与流程,将安全事件阻塞队列或安全事件后备队列中的安全事件调度到安全事件就绪队列R1中;
所述多级反馈调度单元用于从安全事件就绪队列Ri队首逐个取下安全事件,发送给注入检测执行单元用于执行安全检测,多级反馈调度单元实时监测注入检测执行单元检测状态,当注入检测执行单元中无正在实施检测的安全事件时,再调度下一个安全事件给注入检测执行单元;
所述注入检测执行单元用于在接收到多级反馈调度单元发来的安全事件后,将安全事件的属性状态控制表的注入检测过程调度状态信息置为“注入”,开始向目标车辆控制系统网络执行安全检测,并实时监测检测时间和结果,当注入检测执行单元中无正在实施检测的安全事件时,再接收多级反馈调度单元发来的下一个安全事件。
(三)有益效果
本发明针对车辆控制系统网络安全检测技术领域,克服现有技术不足,提供一种基于多级反馈队列的车辆控制系统网络安全检测系统,其通过模块控制的方式实现自动化程度更高,安全事件注入检测机制更合理、更高效、更精准,检测场景更切合真实攻击行为,安全检测全过程更加自主可控的车辆控制系统网络安全检测。
该方案依次通过针对车辆控制系统网络的拓扑探测、协议解析、漏洞扫描、安全事件匹配生成、优先级排队寄存等自动控制流程生成用于注入检测的安全事件队列,并采用多级反馈队列轮转调度机制注入检测安全事件,能够更加合理、高效、精准的定位车辆控制系统网络安全漏洞与脆弱点,从而达到自主可控的车辆控制系统网络安全检测目标。本方案具有自动化程度更高,安全事件注入检测机制更合理、更高效、更精准,检测场景更切合真实攻击行为,车辆控制系统网络安全检测全过程更加自主可控等优点。
具体而言,与现有技术相比较,本发明具备如下有益效果:
(1)本发明通过针对车辆控制系统网络的拓扑探测、协议解析、漏洞扫描、安全事件匹配生成、优先级排队寄存等自动控制流程,实现了针对特定车辆控制系统网络协议漏洞与设备漏洞的精准定位,实现了全自动化的、快速筛选、匹配生成最适合用于注入检测的安全事件集,大大提高了针对特定车辆控制系统网络安全检测事件生成的自动化程度与匹配程度。
(2)本发明采用基于多级反馈队列的轮转调度机制执行针对目标车辆控制系统网络的安全事件注入检测,实现了根据安全事件匹配程度及调度过程设置“就绪”、“注入”和“阻塞”三种调度状态,注入检测结果设置“已完成”、“未完成”、“重调度”、“不适用”四种签章状态,根据调度状态及签章状态变化及时自动调整注入检测策略,同时引入安全事件优先级、检测标准时间周期和未完成计数器等状态控制属性概念,实现了更合理、更高效的自动化安全事件注入检测机制,更切合真实入侵攻击场景,安全检测全过程更加自主可控。
因此,相比于传统的人工手动、逐个依序地通过OBD接口接入车辆控制总线进行安全检测,本发明大大提高了针对车辆控制系统网络安全检测的自动化程度、提供了一种更合理、更高效、更精准的安全事件注入检测机制,提供了一种更加切合真实入侵攻击场景、安全检测全过程更加自主可控的车辆控制系统网络安全检测系统。本发明可广泛应用于各型普通车辆、特种车辆以及自动驾驶车辆的车辆控制系统网络安全检测技术领域,特别是需要对车辆控制系统网络进行自动化的、自主可控安全检测等情形。
附图说明
图1为基于多级反馈队列的车辆控制系统网络安全检测系统原理示意图。
图2为基于多级反馈队列的车辆控制系统网络安全检测系统流程图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
针对现有技术问题,本发明提出一种基于多级反馈队列的车辆控制系统网络安全检测系统,以实现自动化程度更高,安全事件注入检测机制更合理、更高效、更精准,检测场景更切合真实攻击行为,安全检测全过程更加自主可控的车辆控制系统网络安全检测。
具体而言,本发明所提供的基于多级反馈队列的车辆控制系统网络安全检测系统,如图1所示,所述基于多级反馈队列的车辆控制系统网络安全检测系统包括安全事件匹配生成区和安全事件注入检测区;
其中,所述安全事件匹配生成区包括:车控网络拓扑探测模块、车控网络协议解析模块、车控网络设备漏洞扫描模块、安全漏洞与安全事件POC库、安全事件优先级排队模块、安全事件后备队列寄存模块;
所述安全事件注入检测区包括:安全事件注入检测模块和目标车辆控制系统网络;
如图2所示,各功能模块及其工作流程如下:
(1)车控网络拓扑探测模块
所述车控网络拓扑探测模块包括:总线网络拓扑探测单元、车载无线通信设备探测单元、网络拓扑信息发送单元;
所述总线网络拓扑探测单元用于根据用户指令探测目标车辆控制系统网络的总线网络拓扑结构,并获取目标车辆控制系统网络的子网状态信息;
所述车载无线通信设备探测单元用于探测车载无线通信设备信息;
所述网络拓扑信息发送单元用于接收上述总线网络拓扑结构、子网状态信息和车载无线通信设备信息,并整合总线网络拓扑结构和子网状态信息发送给车控网络协议解析模块,整合总线网络拓扑结构和车载无线通信设备信息发送给车控网络设备漏洞扫描模块;
(2)车控网络协议解析模块
所述车控网络协议解析模块包括:协议数据报文存储单元、总线协议漏洞扫描单元、总线协议解析单元、总线协议比对单元、已知协议检测单元、未知协议检测单元、数据报文重放检测单元、网络协议解析信息发送单元;
所述协议数据报文存储单元用于接收网络拓扑信息发送单元发来的总线网络拓扑结构和子网状态信息,收集、存储总线网络中的协议数据报文;
所述总线协议漏洞扫描单元用于对协议数据报文进行总线协议漏洞扫描,生成总线协议漏洞扫描结果;
所述总线协议解析单元用于对协议数据报文进行总线协议解析,生成总线协议解析结果;
所述总线协议比对单元用于对协议数据报文进行总线协议比对,判断总线网络是否被非法篡改,生成总线协议比对结果;
所述已知协议检测单元用于对协议数据报文进行已知协议的安全性检测,生成已知协议检测结果;
所述未知协议检测单元用于对协议数据报文进行未知协议的安全性检测,生成未知协议检测结果;
所述数据报文重放检测单元用于将获取的协议数据报文进行重放,检测总线协议的抗重放攻击能力,生成数据报文重放检测结果;
所述网络协议解析信息发送单元用于将总线协议漏洞扫描结果、总线协议解析结果、总线协议比对结果、已知协议检测结果、未知协议检测结果和数据报文重放检测结果整合为车控网络协议解析结果信息发送给安全漏洞与安全事件POC库;
(3)车控网络设备漏洞扫描模块
所述车控网络设备漏洞扫描模块包括:总线网关固件安全检测单元、总线网关流量控制检测单元、OBD接口安全检测单元、漏洞扫描结果信息发送单元;
所述总线网关固件安全检测单元用于接收网络拓扑信息发送单元发来的总线网络拓扑结构和车载无线通信设备信息,检测总线网络网关固件安全性,检测固件是否存在逻辑漏洞、是否具备防非法升级篡改机制,生成总线网关固件安全检测结果;
所述总线网关流量控制检测单元用于根据总线网络拓扑结构检测网关能否对各子网进行流量控制,生成总线网关流量控制检测结果;
所述OBD接口安全检测单元用于根据总线网络拓扑结构检测OBD接口安全性,检测能否通过OBD接口获取全网报文,生成OBD接口安全检测结果;
所述漏洞扫描结果信息发送单元用于将总线网关固件安全检测结果、总线网关流量控制检测结果、OBD接口安全检测结果整合为车控网络设备漏洞扫描结果信息发送给安全漏洞与安全事件POC库;
(4)安全漏洞与安全事件POC库
所述安全漏洞与安全事件POC库包括:安全漏洞库、安全事件POC库、安全事件集生成单元、安全事件集发送单元;
所述安全漏洞库用于存储车控网络安全漏洞,漏洞包含CVE编号(CVE_ID)、漏洞名称(Vul_Name)、漏洞特征描述(Vul_Description)、漏洞威胁等级(Vul_Threat_Level)、关联安全事件标识(Associated_POC_SID)五个属性;
所述安全事件POC库用于存储检测漏洞的安全事件,安全事件与安全漏洞库中的漏洞相互关联,建立双向追踪关系,安全事件POC库为每个安全事件配置一个属性状态控制表(PSCT),属性状态控制表(PSCT)中包含安全事件的唯一标识(SID)、关联漏洞CVE_ID(Associated_CVE_ID)、安全事件优先级(POC_Priority)、注入检测过程调度状态信息(Dispatch_Status)(包含就绪、注入、阻塞三种状态)、注入检测结果签章状态信息(Signature_Status)(包含已完成、未完成、重调度、不适用四种状态)、检测标准时间周期(Standard_Timeperiod)以及检测未完成计数器(Unfinished_Counter)(初始值为0);
所述安全事件集生成单元用于接收车控网络协议解析模块发来的车控网络协议解析结果信息与车控网络设备漏洞扫描模块发来的车控网络设备漏洞扫描结果信息,提取车控网络协议解析结果信息与车控网络设备漏洞扫描结果信息中每个漏洞的CVE编号(CVE_ID)、漏洞名称(Vul_Name)、漏洞特征描述(Vul_Description)信息,并根据以上三个漏洞属性信息与安全漏洞库中现存漏洞的对应属性相匹配,匹配完成后生成已发现漏洞集合,进一步根据漏洞属性中关联安全事件标识(Associated_POC_SID),查找并生成与全部所发现漏洞相关联的安全事件集合;
其中,所述安全事件集合包含安全事件及其属性状态控制表(PSCT),属性状态控制表(PSCT)中的安全事件优先级(POC_Priority)根据其反向追踪对应漏洞的威胁等级(Vul_Threat_Level)进行赋值,漏洞威胁等级(Vul_Threat_Level)越高,安全事件优先级(POC_Priority)越高、数值越大(正整数);
所述安全事件集发送单元用于将生成的安全事件集合发送至安全事件优先级排队模块;
(5)安全事件优先级排队模块
所述安全事件优先级排队模块用于接收安全漏洞与安全事件POC库发来的安全事件集合,并根据安全事件的属性状态控制表(PSCT)中的安全事件优先级(POC_Priority)数值大小进行冒泡排序,生成以事件优先级(POC_Priority)数值最大的安全事件为队首、事件优先级(POC_Priority)数值最小的安全事件为队尾的安全事件后备队列(OptionalQueue),队列长度为Olen(正整数),最后将安全事件后备队列发送至安全事件后备队列寄存模块;
(6)安全事件后备队列寄存模块
所述安全事件后备队列寄存模块接收安全事件优先级排队模块发来的安全事件后备队列,并按序以队列形式存储安全事件后备队列,存储完成后,安全事件后备队列寄存模块向安全事件注入检测模块发送检测开始触发信号;
(7)安全事件注入检测模块
所述安全事件注入检测模块包括:安全事件就绪队列集、安全事件阻塞队列、就绪调度单元、阻塞调度单元、多级反馈调度单元、注入检测执行单元;
所述安全事件就绪队列集(Ready Queue Set)包括安全事件就绪队列R1,R2,…,Rk,k可自定义,队列长度均为Rlen(正整数),用于存储等待多级反馈调度单元调度的安全事件,调度优先级为R1>R2>…>Rk;
所述安全事件阻塞队列(Blocking Queue)用于存储注入检测执行单元在注入检测过程中返回的需要重调度或不适用的安全事件,同时存储多级反馈调度单元在多级反馈调度过程中返回的置为不适用的安全事件,队列长度为Blen(正整数);
所述就绪调度单元用于持续监测是否收到检测开始触发信号,在收到检测开始触发信号的情况下,监测安全事件就绪队列R1、安全事件阻塞队列、安全事件后备队列的状态,根据就绪调度单元与阻塞调度单元调度规则与流程,将安全事件阻塞队列或安全事件后备队列中的安全事件调度到安全事件就绪队列R1中;
所述多级反馈调度单元用于从安全事件就绪队列Ri队首逐个取下安全事件,发送给注入检测执行单元用于执行安全检测,多级反馈调度单元实时监测注入检测执行单元检测状态,当注入检测执行单元中无正在实施检测的安全事件时,再调度下一个安全事件给注入检测执行单元;
所述注入检测执行单元用于在接收到多级反馈调度单元发来的安全事件后,将安全事件的属性状态控制表(PSCT)的注入检测过程调度状态信息(Dispatch_Status)置为“注入”,开始向目标车辆控制系统网络执行安全检测,并实时监测检测时间和结果,当注入检测执行单元中无正在实施检测的安全事件时,再接收多级反馈调度单元发来的下一个安全事件。
其中,所述总线网络拓扑结构包括:车载CAN总线网络拓扑结构、车载LIN总线网络拓扑结构。
其中,所述子网状态信息包括:目标车辆控制系统网络中各网络节点的运行状态、连通状态、固件型号及版本、软件系统版本、服务状态信息。
其中,所述车载无线通信设备信息包括:WIFI设备信息、蓝牙设备信息、射频设备信息和2G/3G/4G/5G设备信息。
其中,所述注入检测过程调度状态信息(Dispatch_Status)包含就绪、注入、阻塞三种状态。
其中,所述注入检测结果签章状态信息(Signature_Status)包含已完成、未完成、重调度、不适用四种状态。
其中,所述就绪调度单元与阻塞调度单元调度规则与流程如下:
1)若安全事件就绪队列R1不满且安全事件后备队列不空,就绪调度单元优先向安全事件后备队列寄存模块发送就绪调度信号,从安全事件后备队列队首逐个取下安全事件入队到R1队尾,并将安全事件的属性状态控制表(PSCT)的注入检测过程调度状态信息(Dispatch_Status)置为“就绪”;
2)若安全事件就绪队列R1不满且安全事件后备队列为空,就绪调度单元向阻塞调度单元发送就绪调度信号,阻塞调度单元收到就绪调度信号后向安全事件阻塞队列发送阻塞调度信号:若安全事件阻塞队列为空,则进入3)调度流程;若安全事件阻塞队列不空,阻塞调度单元从安全事件阻塞队列队首逐个取下安全事件,检查安全事件的属性状态控制表(PSCT)的注入检测结果签章状态信息(Signature_Status),分别按照a)、b)执行:
a)若该安全事件的属性状态控制表(PSCT)的注入检测结果签章状态信息(Signature_Status)为“重调度”,阻塞调度单元将该安全事件发送给就绪调度单元,就绪调度单元将安全事件入队到R1队尾,并安全事件的属性状态控制表(PSCT)的注入检测过程调度状态信息(Dispatch_Status)由“阻塞”置为“就绪”;
b)若该安全事件的属性状态控制表(PSCT)的注入检测结果签章状态信息(Signature_Status)为“不适用”,阻塞调度单元将该安全事件发送给安全漏洞与安全事件POC库,安全漏洞与安全事件POC库根据不适用安全事件的关联漏洞CVE_ID,重新匹配生成新的安全事件,重复执行安全漏洞与安全事件POC库的工作流程;
3)若安全事件就绪队列R1不满且安全事件后备队列和安全事件阻塞队列均为空,则就绪调度单元持续监测安全事件后备队列和安全事件阻塞队列状态,当监测到后备队列或阻塞队列入队安全事件时,根据上述规则进入1)或2)调度流程;
4)若安全事件就绪队列R1已满,就绪调度单元自动进入休眠状态并持续监测R1,监测到R1不满时,根据上述规则进入1)、2)或3)调度流程。
其中,多级反馈调度单元调度规则与流程如下:
1)若安全事件就绪队列R1不空,多级反馈调度单元从R1队首逐个取下安全事件,发送给注入检测执行单元;
2)当且仅当安全事件就绪队列R1~Ri-1均空时,多级反馈调度单元才发送多级反馈调度信号至安全事件就绪队列集,调度安全事件就绪队列集中存储的Ri中的安全事件给注入检测执行单元;
3)多级反馈调度单元接收注入检测执行单元返回的注入检测结果签章状态信息(Signature_Status)为“未完成”的安全事件,并根据安全事件的属性状态控制表(PSCT)中检测未完成计数器(Unfinished_Counter)的数值将其入队到安全事件就绪队列R2~Rk队尾,如安全事件的属性状态控制表(PSCT)中检测未完成计数器(Unfinished_Counter)的数值为i,则入队到Ri+1的队尾,若i+1>k,则多级反馈调度单元将该安全事件的属性状态控制表(PSCT)的注入检测结果签章状态信息(Signature_Status)置为“不适用”,注入检测过程调度状态信息(Dispatch_Status)置为“阻塞”,并发送给安全事件阻塞队列。
其中,所述注入检测执行单元调度规则与流程如下:
1)若执行安全检测成功完成,注入检测执行单元将该安全事件的属性状态控制表(PSCT)的注入检测结果签章状态信息(Signature_Status)置为“已完成”,并移除该安全事件;
2)若执行安全检测过程中存在不适用的安全事件,注入检测执行单元将该安全事件的属性状态控制表(PSCT)的注入检测结果签章状态信息(Signature_Status)置为“不适用”、注入检测过程调度状态信息(Dispatch_Status)置为“阻塞”,并将该安全事件返回给安全事件阻塞队列;
3)若执行安全检测过程中存在需要重调度的安全事件,注入检测执行单元将该安全事件的属性状态控制表(PSCT)的注入检测结果签章状态信息(Signature_Status)置为“重调度”、注入检测过程调度状态信息(Dispatch_Status)置为“阻塞”,并将该安全事件返回给安全事件阻塞队列;
4)若执行安全检测过程中存在超出检测标准时间周期(Standard_Timeperiod)而仍未检测完成的安全事件,注入检测执行单元将该安全事件的属性状态控制表(PSCT)的注入检测结果签章状态信息(Signature_Status)置为“未完成”、检测未完成计数器(Unfinished_Counter)的数值加1、注入检测过程调度状态信息(Dispatch_Status)置为“就绪”,并将该安全事件返回给多级反馈调度单元,多级反馈调度单元执行其内部调度流程。
其中,所述目标车辆控制系统网络是用于进行安全检测的被测车辆控制系统网络。
实施例1
本实施例采用一种基于多级反馈队列的车辆控制系统网络安全检测系统,实现了自动化程度更高,安全事件注入检测机制更合理、更高效、更精准,检测场景更切合真实攻击行为,安全检测全过程更加自主可控的车辆控制系统网络安全检测。
下面结合具体实施例详细阐述使用本发明方法对车辆控制系统网络安全进行检测。由此可延伸到更广泛的各型普通车辆、特种车辆以及自动驾驶车辆的车辆控制系统网络安全检测应用中。
首先搭建目标车辆控制系统网络,目标车辆控制系统网络使用车载CAN、LIN总线网络拓扑结构,通过网关集成动力总成、车身控制、底盘控制、诊断控制和商业信息五个CAN子网,每个CAN子网挂载相关下属子系统ECU,此外,车钥匙开关、定速巡航开关等部分车载控制器直接与网关或CAN总线连接,车窗、转向灯等车身控制LIN网络则通过车身控制模块(BCM)接入车身控制CAN。
本发明的一种基于多级反馈队列的车辆控制系统网络安全检测系统,包括:安全事件匹配生成区和安全事件注入检测区;其中,安全事件匹配生成区包括:车控网络拓扑探测模块、车控网络协议解析模块、车控网络设备漏洞扫描模块、安全漏洞与安全事件POC库、安全事件优先级排队模块、安全事件后备队列寄存模块;安全事件注入检测区包括:安全事件注入检测模块和目标车辆控制系统网络。
1、车控网络拓扑探测模块
11)总线网络拓扑探测单元用于根据用户指令探测目标车辆控制系统网络的总线网络拓扑结构network_topology_construction,获取目标车辆控制系统网络的子网状态信息subnet_status_info,包括各网络节点的运行状态run_status、连通状态connect_status、固件型号及版本firmware_type_version、软件系统版本software_system_version、服务状态信息service_status_info;
12)车载无线通信设备探测单元用于探测车载无线通信设备信息wireless_telecom_equipment_info,包括WIFI设备WIFI-1、蓝牙设备bluetooth-1、射频设备RF-1、2G/3G/4G/5G设备4G-1;
13)网络拓扑信息发送单元用于接收上述总线网络拓扑结构network_topology_construction、子网状态信息subnet_status_info和车载无线通信设备信息wireless_telecom_equipment_info,并整合总线网络拓扑结构network_topology_construction和子网状态信息subnet_status_info发送给车控网络协议解析模块,整合总线网络拓扑结构network_topology_construction和车载无线通信设备信息wireless_telecom_equipment_info发送给车控网络设备漏洞扫描模块。
2、车控网络协议解析模块
21)协议数据报文存储单元用于接收网络拓扑信息发送单元发来的总线网络拓扑结构network_topology_construction和子网状态信息subnet_status_info,收集、存储总线网络中的协议数据报文datagram;
22)总线协议漏洞扫描单元用于对协议数据报文datagram进行总线协议漏洞扫描,生成总线协议漏洞扫描结果Vul1、Vul2;
23)总线协议解析单元用于对协议数据报文datagram进行总线协议解析,生成总线协议解析结果protocol_analysis_result;
24)总线协议比对单元用于对协议数据报文datagram进行总线协议比对,判断总线网络是否被非法篡改,生成总线协议比对结果protocol_comparison_result;
25)已知协议检测单元用于对协议数据报文datagram进行已知协议的安全性检测,生成已知协议检测结果known_protocol_detection_result;
26)未知协议检测单元用于对协议数据报文datagram进行未知协议的安全性检测,生成未知协议检测结果unknown_protocol_detection_result;
27)数据报文重放检测单元用于将获取的协议数据报文datagram进行重放,检测总线协议的抗重放攻击能力,生成数据报文重放检测结果resistance_replay_detection_result;
28)网络协议解析信息发送单元用于将总线协议漏洞扫描结果Vul1、Vul2、总线协议解析结果protocol_analysis_result、总线协议比对结果protocol_comparison_result、已知协议检测结果known_protocol_detection_result、未知协议检测结果unknown_protocol_detection_result和数据报文重放检测结果resistance_replay_detection_result整合为车控网络协议解析结果信息network_protocol_analysis_result_info发送给安全漏洞与安全事件POC库。
3、车控网络设备漏洞扫描模块
31)总线网关固件安全检测单元用于接收网络拓扑信息发送单元发来的总线网络拓扑结构network_topology_construction和车载无线通信设备信息wireless_telecom_equipment_info,检测总线网络网关固件安全性safety/unsafety,检测固件是否存在逻辑漏洞Y/N、是否具备防非法升级篡改机制Y/N,检测出漏洞Vul3、Vul4,生成总线网关固件安全检测结果firmware_detection_result;
32)总线网关流量控制检测单元用于根据总线网络拓扑结构network_topology_construction检测网关能否对各子网进行流量控制Y/N,生成总线网关流量控制检测结果flow_control_detection_result;
33)OBD接口安全检测单元用于根据总线网络拓扑结构检测OBD接口安全性safety/unsafety,检测能否通过OBD接口获取全网报文Y/N,生成OBD接口安全检测结果OBD_port_detection_result;
34)漏洞扫描结果信息发送单元用于将总线网关固件安全检测结果firmware_detection_result、总线网关流量控制检测结果flow_control_detection_result、OBD接口安全检测结果OBD_port_detection_result整合为车控网络设备漏洞扫描结果信息device_vul_scanning_result_info发送给安全漏洞与安全事件POC库。
4、安全漏洞与安全事件POC库
41)安全漏洞库用于存储车控网络安全漏洞,漏洞包含已发现漏洞Vul1、Vul2、Vul3、Vul4的CVE编号(CVE_ID1、CVE_ID2、CVE_ID3、CVE_ID4)、漏洞名称(Vul_Name1、Vul_Name2、Vul_Name3、Vul_Name4)、漏洞特征描述(Vul_Description1、Vul_Description2、Vul_Description3、Vul_Description4)、漏洞威胁等级(Vul_Threat_Level1、Vul_Threat_Level2、Vul_Threat_Level3、Vul_Threat_Level4)、关联安全事件标识(Associated_POC_SID1、Associated_POC_SID2、Associated_POC_SID3、Associated_POC_SID4)五个属性;
42)安全事件POC库用于存储检测漏洞的安全事件,安全事件POC1、POC2、POC3、POC4与安全漏洞库中的漏洞Vul1、Vul2、Vul3、Vul4相互关联,建立双向追踪关系,安全事件POC库为每个POC1、POC2、POC3、POC4安全事件配置一个属性状态控制表(PSCT1、PSCT2、PSCT3、PSCT4),PSCT1、PSCT2、PSCT3、PSCT4中包含安全事件唯一标识(SID1、SID2、SID3、SID4)、关联漏洞CVE_ID(Associated_CVE_ID1、Associated_CVE_ID2、Associated_CVE_ID3、Associated_CVE_ID4)、安全事件优先级(POC_Priority1、POC_Priority2、POC_Priority3、POC_Priority4)、注入检测过程调度状态信息(Dispatch_Status1、Dispatch_Status2、Dispatch_Status3、Dispatch_Status4)(包含就绪、注入、阻塞三种状态)、注入检测结果签章状态信息(Signature_Status1、Signature_Status2、Signature_Status3、Signature_Status4)(包含已完成、未完成、重调度、不适用四种状态)、检测标准时间周期(Standard_Timeperiod1、Standard_Timeperiod2、Standard_Timeperiod3、Standard_Timeperiod4)以及检测未完成计数器(Unfinished_Counter1、Unfinished_Counter2、Unfinished_Counter3、Unfinished_Counter4)(初始值为0);
43)安全事件集生成单元用于接收车控网络协议解析模块与车控网络设备漏洞扫描模块发来的协议漏洞与设备漏洞扫描结果信息Vul1、Vul2、Vul3、Vul4,提取漏洞扫描结果信息中每个漏洞的CVE编号(CVE_ID1、CVE_ID2、CVE_ID3、CVE_ID4)、漏洞名称(Vul_Name1、Vul_Name2、Vul_Name3、Vul_Name4)、漏洞特征描述(Vul_Description1、Vul_Description2、Vul_Description3、Vul_Description4)信息,并根据以上三个漏洞属性信息与安全漏洞库中现存漏洞的对应属性相匹配,匹配完成后生成已发现漏洞集合,进一步根据漏洞属性中关联安全事件标识(Associated_POC_SID1、Associated_POC_SID2、Associated_POC_SID3、Associated_POC_SID4),查找并生成与全部所发现漏洞相关联的安全事件集合POC1、POC2、POC3、POC4;
44)安全事件集发送单元将生成的安全事件集合POC1、POC2、POC3、POC4发送至安全事件优先级排队模块。
本实施例涉及步骤43)中的安全事件集合包含安全事件及其PSCT1、PSCT2、PSCT3、PSCT4,PSCT1、PSCT2、PSCT3、PSCT4中的安全事件优先级(POC_Priority1、POC_Priority2、POC_Priority3、POC_Priority4)根据其反向追踪对应漏洞的威胁等级(Vul_Threat_Level1、Vul_Threat_Level2、Vul_Threat_Level3、Vul_Threat_Level4)进行赋值,漏洞威胁等级Vul_Threat_Level1>Vul_Threat_Level2>Vul_Threat_Level3>Vul_Threa t_Level4,安全事件优先级POC_Priority1>POC_Priority2>POC_Priority3>POC_Priority4。
5、安全事件优先级排队模块
51)安全事件优先级排队模块用于接收安全漏洞与安全事件POC库发来的安全事件集合POC1、POC2、POC3、POC4,并根据安全事件PSCT1、PSCT2、PSCT3、PSCT4属性中的安全事件优先级(POC_Priority1、POC_Priority2、POC_Priority3、POC_Priority4)数值大小进行冒泡排序,生成以POC_Priority1值最大的安全事件POC1为队首、POC_Priority4值最小的安全事件POC4为队尾、POC2和POC3为队中的安全事件后备队列(Optional Queue1),队列长度为Olen=4(正整数),最后将安全事件后备队列Optional Queue1发送至安全事件后备队列寄存模块。
6、安全事件后备队列寄存模块
61)安全事件后备队列寄存模块接收安全事件优先级排队模块发来的安全事件后备队列Optional Queue1,并按序以队列形式存储安全事件后备队列POC1、POC2、POC3、POC4,存储完成后,安全事件后备队列寄存模块向安全事件注入检测模块发送检测开始触发信号detection_start_signal。
7、安全事件注入检测模块
71)安全事件就绪队列集(Ready Queue Set1)包括安全事件就绪队列R1,R2,R3,R4,队列长度均为Rlen=10,用于存储等待多级反馈调度单元调度的安全事件,调度优先级为R1>R2>R3>R4
72)安全事件阻塞队列(Blocking Queue1)用于存储注入检测执行单元在注入检测过程中返回的需要重调度或不适用的安全事件,同时存储多级反馈调度单元在多级反馈调度过程中返回的置为不适用的安全事件,队列长度为Blen=20;
73)就绪调度单元用于持续监测是否收到检测开始触发信号detection_start_signal,在收到检测开始触发信号detection_start_signal的情况下,监测安全事件就绪队列R1、安全事件阻塞队列Blocking Queue1、安全事件后备队列Optional Queue1的状态,根据就绪调度单元与阻塞调度单元调度规则与流程,将安全事件阻塞队列BlockingQueue1或安全事件后备队列Optional Queue1中的安全事件调度到安全事件就绪队列R1中;此时,安全事件后备队列Optional Queue1存在安全事件POC1、POC2、POC3、POC4待调度,因此,就绪调度单元优先调度POC1、POC2、POC3、POC4到安全事件就绪队列R1中;
其中,所述就绪调度单元与阻塞调度单元调度规则与流程如下:
73.1)若安全事件就绪队列R1不满且安全事件后备队列不空,就绪调度单元优先向安全事件后备队列寄存模块发送就绪调度信号ready_dispatch_signal,从安全事件后备队列队首逐个取下安全事件POC1、POC2、POC3、POC4入队到R1队尾,并将安全事件PSCT1、PSCT2、PSCT3、PSCT4的调度状态置为“就绪”;
73.2)若安全事件就绪队列R1不满且安全事件后备队列为空,就绪调度单元向阻塞调度单元发送就绪调度信号ready_dispatch_signal,阻塞调度单元收到就绪调度信号后向安全事件阻塞队列发送阻塞调度信号block_dispatch_signal:若安全事件阻塞队列为空,则进入73.3)调度流程;若安全事件阻塞队列存在POC2、POC3,阻塞调度单元从安全事件阻塞队列队首逐个取下安全事件POC2、POC3,检查安全事件PSCT2、PSCT3的签章状态,分别按照73.2.1)、73.2.2)执行:
73.2.1)若该安全事件PSCT3的签章状态为“重调度”,阻塞调度单元将该安全事件POC3发送给就绪调度单元,就绪调度单元将安全事件POC3入队到R1队尾,并将安全事件PSCT3的调度状态由“阻塞”置为“就绪”;
73.2.2)若该安全事件PSCT2的签章状态为“不适用”,阻塞调度单元将该安全事件POC2发送给安全漏洞与安全事件POC库,安全漏洞与安全事件POC库根据不适用安全事件POC2的关联漏洞CVE_ID2,重新匹配生成新的安全事件,重复上述流程;
73.3)若安全事件就绪队列R1不满且安全事件后备队列和安全事件阻塞队列均为空,则就绪调度单元持续监测安全事件后备队列和安全事件阻塞队列状态,当监测到后备队列或阻塞队列入队安全事件时,根据上述规则进入73.1)或73.2)调度流程;
73.4)若安全事件就绪队列R1已满,就绪调度单元自动进入休眠状态并持续监测R1,监测到R1不满时,根据上述规则进入73.1)、73.2)或73.3)调度流程;
74)多级反馈调度单元用于从安全事件就绪队列Ri队首逐个取下安全事件,发送给注入检测执行单元用于执行安全检测,多级反馈调度单元实时监测注入检测执行单元检测状态,当注入检测执行单元中无正在实施检测的安全事件时,再调度下一个安全事件给注入检测执行单元;
其中,多级反馈调度单元调度规则与流程如下:
74.1)若安全事件就绪队列R1不空,多级反馈调度单元从R1队首逐个取下安全事件POC1、POC2、POC3、POC4,发送给注入检测执行单元;
74.2)当且仅当安全事件就绪队列R1空时,多级反馈调度单元才通过发送多级反馈调度信号multi-stage_feedback_dispatch_signal调度R2中的安全事件POC4给注入检测执行单元;
74.3)多级反馈调度单元接收注入检测执行单元返回的PSCT4签章状态为“未完成”的安全事件POC4,并根据安全事件PSCT4中检测未完成计数器数值1将其入队到安全事件就绪队列R2队尾,如安全事件PSCT中检测未完成计数器为i,则入队到Ri+1的队尾,若i+1>4,则多级反馈调度单元将该安全事件PSCT的签章状态置为“不适用”,调度状态置为“阻塞”,并发送给安全事件阻塞队列;
75)注入检测执行单元用于在接收到多级反馈调度单元发来的安全事件POC1、POC2、POC3、POC4后,将安全事件PSCT1、PSCT2、PSCT3、PSCT4的调度状态置为“注入”,开始向目标车辆控制系统网络执行安全检测,并实时监测检测时间和结果,当注入检测执行单元中无正在实施检测的安全事件时,再接收多级反馈调度单元发来的下一个安全事件;
其中,注入检测执行单元调度规则与流程如下:
75.1)若POC1执行安全检测成功完成,注入检测执行单元将该安全事件PSCT1的签章状态置为“已完成”,并移除该安全事件POC1;
75.2)若执行安全检测过程中存在不适用的安全事件POC2,注入检测执行单元将该安全事件PSCT2的签章状态置为“不适用”、调度状态置为“阻塞”,并将该安全事件POC2返回给安全事件阻塞队列;
75.3)若执行安全检测过程中存在需要重调度的安全事件POC3,注入检测执行单元将该安全事件PSCT3的签章状态置为“重调度”、调度状态置为“阻塞”,并将该安全事件POC3返回给安全事件阻塞队列;
75.4)若执行安全检测过程中存在超出检测标准时间周期而仍未检测完成的安全事件POC4,注入检测执行单元将该安全事件PSCT4的签章状态置为“未完成”、检测未完成计数器加1、调度状态置为“就绪”,并将该安全事件POC4返回给多级反馈调度单元,多级反馈调度单元执行其内部调度流程。
8、目标车辆控制系统网络
81)目标车辆控制系统网络是用于进行安全检测的被测车辆控制系统网络。
综上,本实施例所提出的一种基于多级反馈队列的车辆控制系统网络安全检测系统,相比于传统的人工手动、逐个依序地通过OBD接口接入车辆控制总线进行安全检测,本发明大大提高了针对车辆控制系统网络安全检测的自动化程度、提供了一种更合理、更高效、更精准的安全事件注入检测机制,提供了一种更加切合真实入侵攻击场景、安全检测全过程更加自主可控的车辆控制系统网络安全检测系统。本发明可广泛应用于各型普通车辆、特种车辆以及自动驾驶车辆的车辆控制系统网络安全检测技术领域,特别是需要对车辆控制系统网络进行自动化的、自主可控安全检测等情形。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (10)

1.一种基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,所述基于多级反馈队列的车辆控制系统网络安全检测系统包括安全事件匹配生成区和安全事件注入检测区;
其中,所述安全事件匹配生成区包括:车控网络拓扑探测模块、车控网络协议解析模块、车控网络设备漏洞扫描模块、安全漏洞与安全事件POC库、安全事件优先级排队模块、安全事件后备队列寄存模块;
所述安全事件注入检测区包括:安全事件注入检测模块和目标车辆控制系统网络;
(1)车控网络拓扑探测模块
所述车控网络拓扑探测模块包括:总线网络拓扑探测单元、车载无线通信设备探测单元、网络拓扑信息发送单元;
所述总线网络拓扑探测单元用于根据用户指令探测目标车辆控制系统网络的总线网络拓扑结构,并获取目标车辆控制系统网络的子网状态信息;
所述车载无线通信设备探测单元用于探测车载无线通信设备信息;
所述网络拓扑信息发送单元用于接收上述总线网络拓扑结构、子网状态信息和车载无线通信设备信息,并整合总线网络拓扑结构和子网状态信息发送给车控网络协议解析模块,整合总线网络拓扑结构和车载无线通信设备信息发送给车控网络设备漏洞扫描模块;
(2)车控网络协议解析模块
所述车控网络协议解析模块包括:协议数据报文存储单元、总线协议漏洞扫描单元、总线协议解析单元、总线协议比对单元、已知协议检测单元、未知协议检测单元、数据报文重放检测单元、网络协议解析信息发送单元;
所述协议数据报文存储单元用于接收网络拓扑信息发送单元发来的总线网络拓扑结构和子网状态信息,收集、存储总线网络中的协议数据报文;
所述总线协议漏洞扫描单元用于对协议数据报文进行总线协议漏洞扫描,生成总线协议漏洞扫描结果;
所述总线协议解析单元用于对协议数据报文进行总线协议解析,生成总线协议解析结果;
所述总线协议比对单元用于对协议数据报文进行总线协议比对,判断总线网络是否被非法篡改,生成总线协议比对结果;
所述已知协议检测单元用于对协议数据报文进行已知协议的安全性检测,生成已知协议检测结果;
所述未知协议检测单元用于对协议数据报文进行未知协议的安全性检测,生成未知协议检测结果;
所述数据报文重放检测单元用于将获取的协议数据报文进行重放,检测总线协议的抗重放攻击能力,生成数据报文重放检测结果;
所述网络协议解析信息发送单元用于将总线协议漏洞扫描结果、总线协议解析结果、总线协议比对结果、已知协议检测结果、未知协议检测结果和数据报文重放检测结果整合为车控网络协议解析结果信息发送给安全漏洞与安全事件POC库;
(3)车控网络设备漏洞扫描模块
所述车控网络设备漏洞扫描模块包括:总线网关固件安全检测单元、总线网关流量控制检测单元、OBD接口安全检测单元、漏洞扫描结果信息发送单元;
所述总线网关固件安全检测单元用于接收网络拓扑信息发送单元发来的总线网络拓扑结构和车载无线通信设备信息,检测总线网络网关固件安全性,检测固件是否存在逻辑漏洞、是否具备防非法升级篡改机制,生成总线网关固件安全检测结果;
所述总线网关流量控制检测单元用于根据总线网络拓扑结构检测网关能否对各子网进行流量控制,生成总线网关流量控制检测结果;
所述OBD接口安全检测单元用于根据总线网络拓扑结构检测OBD接口安全性,检测能否通过OBD接口获取全网报文,生成OBD接口安全检测结果;
所述漏洞扫描结果信息发送单元用于将总线网关固件安全检测结果、总线网关流量控制检测结果、OBD接口安全检测结果整合为车控网络设备漏洞扫描结果信息发送给安全漏洞与安全事件POC库;
(4)安全漏洞与安全事件POC库
所述安全漏洞与安全事件POC库包括:安全漏洞库、安全事件POC库、安全事件集生成单元、安全事件集发送单元;
所述安全漏洞库用于存储车控网络安全漏洞,漏洞包含CVE编号、漏洞名称、漏洞特征描述、漏洞威胁等级、关联安全事件标识五个属性;
所述安全事件POC库用于存储检测漏洞的安全事件,安全事件与安全漏洞库中的漏洞相互关联,安全事件POC库为每个安全事件配置一个属性状态控制表,属性状态控制表中包含安全事件的唯一标识、关联漏洞CVE_ID、安全事件优先级、注入检测过程调度状态信息、注入检测结果签章状态信息、检测标准时间周期以及检测未完成计数器;
所述安全事件集生成单元用于接收车控网络协议解析模块发来的车控网络协议解析结果信息与车控网络设备漏洞扫描模块发来的车控网络设备漏洞扫描结果信息,提取车控网络协议解析结果信息与车控网络设备漏洞扫描结果信息中每个漏洞的CVE编号、漏洞名称、漏洞特征描述信息,并根据以上三个漏洞属性信息与安全漏洞库中现存漏洞的对应属性相匹配,匹配完成后生成已发现漏洞集合,进一步根据漏洞属性中关联安全事件标识,查找并生成与全部所发现漏洞相关联的安全事件集合;
其中,所述安全事件集合包含安全事件及其属性状态控制表,属性状态控制表中的安全事件优先级根据其反向追踪对应漏洞的威胁等级进行赋值,漏洞威胁等级越高,安全事件优先级越高、数值越大;
所述安全事件集发送单元用于将生成的安全事件集合发送至安全事件优先级排队模块;
(5)安全事件优先级排队模块
所述安全事件优先级排队模块用于接收安全漏洞与安全事件POC库发来的安全事件集合,并根据安全事件的属性状态控制表中的安全事件优先级数值大小进行冒泡排序,生成以事件优先级数值最大的安全事件为队首、事件优先级数值最小的安全事件为队尾的安全事件后备队列,队列长度为Olen,最后将安全事件后备队列发送至安全事件后备队列寄存模块;
(6)安全事件后备队列寄存模块
所述安全事件后备队列寄存模块接收安全事件优先级排队模块发来的安全事件后备队列,并按序以队列形式存储安全事件后备队列,存储完成后,安全事件后备队列寄存模块向安全事件注入检测模块发送检测开始触发信号;
(7)安全事件注入检测模块
所述安全事件注入检测模块包括:安全事件就绪队列集、安全事件阻塞队列、就绪调度单元、阻塞调度单元、多级反馈调度单元、注入检测执行单元;
所述安全事件就绪队列集包括安全事件就绪队列R1,R2,…,Rk,k可自定义,队列长度均为Rlen,用于存储等待多级反馈调度单元调度的安全事件,调度优先级为R1>R2>…>Rk
所述安全事件阻塞队列用于存储注入检测执行单元在注入检测过程中返回的需要重调度或不适用的安全事件,同时存储多级反馈调度单元在多级反馈调度过程中返回的置为不适用的安全事件,队列长度为Blen
所述就绪调度单元用于持续监测是否收到检测开始触发信号,在收到检测开始触发信号的情况下,监测安全事件就绪队列R1、安全事件阻塞队列、安全事件后备队列的状态,根据就绪调度单元与阻塞调度单元调度规则与流程,将安全事件阻塞队列或安全事件后备队列中的安全事件调度到安全事件就绪队列R1中;
所述多级反馈调度单元用于从安全事件就绪队列Ri队首逐个取下安全事件,发送给注入检测执行单元用于执行安全检测,多级反馈调度单元实时监测注入检测执行单元检测状态,当注入检测执行单元中无正在实施检测的安全事件时,再调度下一个安全事件给注入检测执行单元;
所述注入检测执行单元用于在接收到多级反馈调度单元发来的安全事件后,将安全事件的属性状态控制表的注入检测过程调度状态信息置为“注入”,开始向目标车辆控制系统网络执行安全检测,并实时监测检测时间和结果,当注入检测执行单元中无正在实施检测的安全事件时,再接收多级反馈调度单元发来的下一个安全事件。
2.如权利要求1所述的基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,所述总线网络拓扑结构包括:车载CAN总线网络拓扑结构、车载LIN总线网络拓扑结构。
3.如权利要求1所述的基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,所述子网状态信息包括:目标车辆控制系统网络中各网络节点的运行状态、连通状态、固件型号及版本、软件系统版本、服务状态信息。
4.如权利要求1所述的基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,所述车载无线通信设备信息包括:WIFI设备信息、蓝牙设备信息、射频设备信息和2G/3G/4G/5G设备信息。
5.如权利要求1所述的基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,所述注入检测过程调度状态信息包含就绪、注入、阻塞三种状态。
6.如权利要求1所述的基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,所述注入检测结果签章状态信息包含已完成、未完成、重调度、不适用四种状态。
7.如权利要求1所述的基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,所述就绪调度单元与阻塞调度单元调度规则与流程如下:
1)若安全事件就绪队列R1不满且安全事件后备队列不空,就绪调度单元优先向安全事件后备队列寄存模块发送就绪调度信号,从安全事件后备队列队首逐个取下安全事件入队到R1队尾,并将安全事件的属性状态控制表的注入检测过程调度状态信息置为“就绪”;
2)若安全事件就绪队列R1不满且安全事件后备队列为空,就绪调度单元向阻塞调度单元发送就绪调度信号,阻塞调度单元收到就绪调度信号后向安全事件阻塞队列发送阻塞调度信号:若安全事件阻塞队列为空,则进入3)调度流程;若安全事件阻塞队列不空,阻塞调度单元从安全事件阻塞队列队首逐个取下安全事件,检查安全事件的属性状态控制表的注入检测结果签章状态信息,分别按照a)、b)执行:
a)若该安全事件的属性状态控制表的注入检测结果签章状态信息为“重调度”,阻塞调度单元将该安全事件发送给就绪调度单元,就绪调度单元将安全事件入队到R1队尾,并安全事件的属性状态控制表的注入检测过程调度状态信息由“阻塞”置为“就绪”;
b)若该安全事件的属性状态控制表的注入检测结果签章状态信息为“不适用”,阻塞调度单元将该安全事件发送给安全漏洞与安全事件POC库,安全漏洞与安全事件POC库根据不适用安全事件的关联漏洞CVE_ID,重新匹配生成新的安全事件,重复执行安全漏洞与安全事件POC库的工作流程;
3)若安全事件就绪队列R1不满且安全事件后备队列和安全事件阻塞队列均为空,则就绪调度单元持续监测安全事件后备队列和安全事件阻塞队列状态,当监测到后备队列或阻塞队列入队安全事件时,根据上述规则进入1)或2)调度流程;
4)若安全事件就绪队列R1已满,就绪调度单元自动进入休眠状态并持续监测R1,监测到R1不满时,根据上述规则进入1)、2)或3)调度流程。
8.如权利要求1所述的基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,多级反馈调度单元调度规则与流程如下:
1)若安全事件就绪队列R1不空,多级反馈调度单元从R1队首逐个取下安全事件,发送给注入检测执行单元;
2)当且仅当安全事件就绪队列R1~Ri-1均空时,多级反馈调度单元才发送多级反馈调度信号至安全事件就绪队列集,调度安全事件就绪队列集中存储的Ri中的安全事件给注入检测执行单元;
3)多级反馈调度单元接收注入检测执行单元返回的注入检测结果签章状态信息为“未完成”的安全事件,并根据安全事件的属性状态控制表中检测未完成计数器的数值将其入队到安全事件就绪队列R2~Rk队尾,如安全事件的属性状态控制表中检测未完成计数器的数值为i,则入队到Ri+1的队尾,若i+1>k,则多级反馈调度单元将该安全事件的属性状态控制表的注入检测结果签章状态信息置为“不适用”,注入检测过程调度状态信息置为“阻塞”,并发送给安全事件阻塞队列。
9.如权利要求1所述的基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,所述注入检测执行单元调度规则与流程如下:
1)若执行安全检测成功完成,注入检测执行单元将该安全事件的属性状态控制表的注入检测结果签章状态信息置为“已完成”,并移除该安全事件;
2)若执行安全检测过程中存在不适用的安全事件,注入检测执行单元将该安全事件的属性状态控制表的注入检测结果签章状态信息置为“不适用”、注入检测过程调度状态信息置为“阻塞”,并将该安全事件返回给安全事件阻塞队列;
3)若执行安全检测过程中存在需要重调度的安全事件,注入检测执行单元将该安全事件的属性状态控制表的注入检测结果签章状态信息置为“重调度”、注入检测过程调度状态信息置为“阻塞”,并将该安全事件返回给安全事件阻塞队列;
4)若执行安全检测过程中存在超出检测标准时间周期而仍未检测完成的安全事件,注入检测执行单元将该安全事件的属性状态控制表的注入检测结果签章状态信息置为“未完成”、检测未完成计数器的数值加1、注入检测过程调度状态信息置为“就绪”,并将该安全事件返回给多级反馈调度单元,多级反馈调度单元执行其内部调度流程。
10.如权利要求1所述的基于多级反馈队列的车辆控制系统网络安全检测系统,其特征在于,所述目标车辆控制系统网络是用于进行安全检测的被测车辆控制系统网络。
CN201910863386.1A 2019-09-12 2019-09-12 基于多级反馈队列的车辆控制系统网络安全检测系统 Active CN110430223B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910863386.1A CN110430223B (zh) 2019-09-12 2019-09-12 基于多级反馈队列的车辆控制系统网络安全检测系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910863386.1A CN110430223B (zh) 2019-09-12 2019-09-12 基于多级反馈队列的车辆控制系统网络安全检测系统

Publications (2)

Publication Number Publication Date
CN110430223A true CN110430223A (zh) 2019-11-08
CN110430223B CN110430223B (zh) 2021-07-02

Family

ID=68418156

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910863386.1A Active CN110430223B (zh) 2019-09-12 2019-09-12 基于多级反馈队列的车辆控制系统网络安全检测系统

Country Status (1)

Country Link
CN (1) CN110430223B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112866248A (zh) * 2021-01-18 2021-05-28 恒大新能源汽车投资控股集团有限公司 车辆网络安全控制系统、方法以及车辆

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103970603A (zh) * 2014-05-21 2014-08-06 哈尔滨工程大学 一种基于多级反馈队列的事件注入引擎的任务调度方法
CN104394163A (zh) * 2014-12-05 2015-03-04 浪潮电子信息产业股份有限公司 一种基于Web应用的安全检测方法
CN106201689A (zh) * 2016-07-07 2016-12-07 哈尔滨工程大学 一种具有时序控制的多队列事件注入装置和方法
US20170171229A1 (en) * 2015-12-09 2017-06-15 Checkpoint Software Technologies Ltd. System and method for determining summary events of an attack
CN108737417A (zh) * 2018-05-16 2018-11-02 南京大学 一种面向工业控制系统的脆弱性检测方法
CN109245904A (zh) * 2018-10-17 2019-01-18 南京航空航天大学 一种基于puf的轻量级车联网系统安全认证方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103970603A (zh) * 2014-05-21 2014-08-06 哈尔滨工程大学 一种基于多级反馈队列的事件注入引擎的任务调度方法
CN104394163A (zh) * 2014-12-05 2015-03-04 浪潮电子信息产业股份有限公司 一种基于Web应用的安全检测方法
US20170171229A1 (en) * 2015-12-09 2017-06-15 Checkpoint Software Technologies Ltd. System and method for determining summary events of an attack
CN106201689A (zh) * 2016-07-07 2016-12-07 哈尔滨工程大学 一种具有时序控制的多队列事件注入装置和方法
CN108737417A (zh) * 2018-05-16 2018-11-02 南京大学 一种面向工业控制系统的脆弱性检测方法
CN109245904A (zh) * 2018-10-17 2019-01-18 南京航空航天大学 一种基于puf的轻量级车联网系统安全认证方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
曾润: ""车载CAN总线网络异常数据检测技术研究与实现"", 《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112866248A (zh) * 2021-01-18 2021-05-28 恒大新能源汽车投资控股集团有限公司 车辆网络安全控制系统、方法以及车辆
CN112866248B (zh) * 2021-01-18 2022-07-26 恒大新能源汽车投资控股集团有限公司 车辆网络安全控制系统、方法以及车辆

Also Published As

Publication number Publication date
CN110430223B (zh) 2021-07-02

Similar Documents

Publication Publication Date Title
CN110445810A (zh) 基于多级反馈队列的车辆控制系统网络安全检测方法
CN107135093B (zh) 一种基于有限自动机的物联网入侵检测方法及检测系统
CN102624677B (zh) 一种网络用户行为监控方法及服务器
CN106817363B (zh) 基于神经网络的智能电表异常检测方法
CN110069941A (zh) 一种接口访问鉴权方法、装置及计算机可读介质
CN107948172A (zh) 一种基于人工智能行为分析的车联网入侵攻击检测方法和系统
CN109117637A (zh) 基于攻击树的智能网联车辆信息安全事件发生概率评估方法与系统
CN107229854B (zh) 应用程序的注册方法、装置、电子设备和存储介质
CN105516177B (zh) 基于sdn和nfv的5g网络多级攻击缓解方法
CN103986743A (zh) 用于在物联网中采集数据的方法、装置和系统
CN110740077B (zh) 基于网络抓包的拟态系统异构性测试系统、方法及装置
CN109543411A (zh) 应用程序监控方法、装置、电子设备及可读存储介质
Huang et al. On the security of in-vehicle hybrid network: Status and challenges
CN109218170A (zh) 一种基于ip地址的邮件异常登录检测方法及系统
CN106713229A (zh) 一种基于用户行为的智能电网终端可信接入系统和方法
CN108062475A (zh) 一种恶意代码识别装置及方法
Rathi et al. Security challenges & controls in cyber physical system
CN110430223A (zh) 基于多级反馈队列的车辆控制系统网络安全检测系统
CN111447167A (zh) 车载系统安全防护方法及装置
CN106780860B (zh) 一种挑战型车辆开锁/关锁的控制方法及系统
CN108965251A (zh) 一种云端结合的安全手机防护系统
CN107360120B (zh) 虚拟网络功能的审计方法和装置
CN110099041A (zh) 一种物联网防护方法及设备、系统
CN103546484B (zh) 报文解析装置和报文解析方法
CN103916365B (zh) 导出和验证恶意代码的网络行为特征的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant