CN115776383A - 基于时间分析的车辆网络攻击防护方法及相应装置 - Google Patents

基于时间分析的车辆网络攻击防护方法及相应装置 Download PDF

Info

Publication number
CN115776383A
CN115776383A CN202211085952.9A CN202211085952A CN115776383A CN 115776383 A CN115776383 A CN 115776383A CN 202211085952 A CN202211085952 A CN 202211085952A CN 115776383 A CN115776383 A CN 115776383A
Authority
CN
China
Prior art keywords
messages
nodes
message
check
node
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.)
Pending
Application number
CN202211085952.9A
Other languages
English (en)
Inventor
C·罗萨迪尼
S·基亚雷利
W·内希
S·萨波纳拉
A·加格里亚蒂
P·迪尼
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.)
Marilyn Europe
Original Assignee
Marilyn Europe
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 Marilyn Europe filed Critical Marilyn Europe
Publication of CN115776383A publication Critical patent/CN115776383A/zh
Pending legal-status Critical Current

Links

Images

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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/146Tracing the source of attacks

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)
  • Power Engineering (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Electric Propulsion And Braking For Vehicles (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)

Abstract

本文描述了一种用于保护车辆的通信网络,特别是CAN(控制器局域网),使其免受网络攻击的方法,该网络包括:通信总线,特别是CAN总线,以及多个节点,其以信号交换关系与所述通信总线相关联,并且至少部分地与用于控制车辆功能的控制单元相关联,所述节点交换在所述多个节点的节点之间传递的消息,以及所述消息由各自的消息标识符标识,所述方法包括,在与所述通信总线相关联的控制节点处:从所述节点之间交换的所述消息中,选择具有传输周期的周期性消息,根据各自的周期将所述周期性消息分组至各自的分组,以及执行对交换所述接收到的周期性消息的所述节点的消息的分析过程。

Description

基于时间分析的车辆网络攻击防护方法及相应装置
技术领域
本发明涉及用于保护车辆的通信网络,特别是CAN(控制器局域网),网络攻击防护技术,该网络包括总线,特别是CAN总线,以及以信号交换关系与所述总线相关联、并且至少部分与用于车辆的控制功能的控制单元相关的多个节点。
背景技术
作为机动车中的通信总线,CAN总线是一种串行和多主站类型的通信方式,其中,连接到总线上的每个主站(也称为节点)能够发送、接收,以及解决多个节点在传输中同时访问的冲突的问题。
图1示意性地示出了CAN总线10,包括多个节点11。图1所示为三个节点111,...,113。如图1所示,节点11,其能够在CAN总线10上进行通信,通常包括:
-CAN收发器12,其通过传输线TT和接收线TR与CAN总线10相关联,并且被配置为用于管理CAN总线所特有的电平(OSI模型的物理层);
-CAN控制器13,其通过传输线CT和接收线CR连接到CAN收发器12,并且被配置为用于管理CAN总线10的逻辑电平和序列化(OSI模型的数据链路层);以及
-微控制器14,其包含发送和接收消息的逻辑(高于数据链路层的OSI层的管理)。
总线10包括两条线。用10H表示的是CAN总线10的高线,或称为CAN-high,而用10L表示低线,或称为CAN-low。在总线10的两端,10H和10L这两条线由终端电阻10R端接。在图1中,传输线TT被耦合到高线10H,而接收线TR被耦合到低线10L。
因此,CAN总线10是差分总线,并因此具有两条线的结构,被称为“CAN-high”10H和“CAN-low”10L。
在连接多个节点(例如电子控制单元(ECU))的CAN总线中识别恶意消息的方法,其旨在确定什么消息是恶意的,但最重要的是其来自哪个节点或ECU,以便能够追踪攻击的来源本身并采取必要的措施。目前在车辆上实施的入侵检测系统能够确定网络攻击的存在,但没有配备攻击者识别系统。
表1中提供了根据CAN协议的消息结构;特别是,数据类型的消息由连续比特的多个S部段组成,如下所示。
Figure BDA0003835055930000021
表1
消息中感兴趣的字段主要是仲裁字段S2和ACK(确认)字段S6。仲裁字段由消息ID(IDentifier)构成,其确定消息的优先级并识别消息。二进制值越小,优先级越高。ACK位,其最初为隐性(因此为1),被正确接收消息的ECU或节点11用显性位覆盖。通过这种方式,每个节点都会识别消息的完整性。
对于上述仲裁字段S2,节点11的CAN控制器13根据到达它的逻辑信号(其显然与CAN收发器12检测到的物理层一致),重构消息的标识符ID,而节点11内的微控制器14本身将上述消息与到达的“时间变量”(称为时间戳)相关联。连接到网络10的每个CAN节点11都被配置有一组其可以传输的标识符ID,其中该组中的每个标识符ID可以对应于传感器的参数,或者对应于特定功能(诊断等)。上述消息标识符ID,尽管对于不同的节点11来说是不同的,但如果可能的攻击者获得对网络中某个节点的控制权,那么消息标识符ID就可以被可能的攻击者克隆。此外,通过CAN10发送的消息可能具有周期性,从而其在一个精确的周期内传输,或者具有非周期性,从而在事件发生时传输。
因此,基于时间漂移的技术是已知的,这些技术针对的是原则上被认为是周期性的消息。因此,利用时间变量,有可能估计出具有相同标识符ID的两个连续消息之间的周期。如果消息是周期性的,则它与特定的时间戳(接收时间)相关联,但在任何情况下这个时间戳都在该周期内保持不变。因此,假设的是,不管代表两个节点11的两个不同的ECU可能是多么的相似,即使它们可能由相同的制造商生产,甚至使用相同的电路组件,它们也具有两个不同的时间漂移。实际上,每个ECU都可以通过各自的时钟信号运行,即使两个ECU可以使用相同频率的时钟运行,但实际上这会导致两个信号之间在周期内的随机漂移,这会对CAN消息的传输产生影响。因此,上述偏差实际上代表了每个ECU节点固有的不可复制的因素,其可以应用某些技术来进行估计。
下面介绍一些典型的攻击场景。
一种类型的攻击被称为“伪造攻击”。通过被以强攻击方式入侵的车载ECU,攻击者伪造并注入带有伪造ID(标识符)、DLC(数据长度代码)和数据的消息。这种攻击的目的是覆盖由合法的安全关键ECU发送的任何周期性消息,从而使其接收方ECU被扰乱或变得无法操作。例如,攻击者以给定的ID,例如0xB0(这通常是由合法的ECU发送的),高频率地注入各种恶意消息。因此,正常接收消息0xB0的其他节点被迫比合法的消息更频繁地接收伪造的攻击消息。在这种情况下,攻击者ECU正在对消息0xB0及其原始发送者(即合法ECU)进行伪造攻击。
另一种类型的攻击称为“暂停攻击”。要进行暂停攻击,攻击者只需要一个受到弱攻击的ECU。与拒绝服务(DoS)攻击的情况一样,这种攻击的目的在于停止/暂停受到弱攻击的ECU的传输,从而阻止在CAN上传递/传播由其他ECU获取的信息,其原因是某些ECU必须从其他ECU接收特定的信息才能正常运行。因此,暂停攻击不仅会损坏遭受弱攻击的ECU,还会损坏其他接收器ECU。
另一种类型的攻击称为“伪装攻击”。要发起伪装攻击,攻击者需要入侵两个ECU,一个作为强攻击者,另一个作为弱攻击者。这种攻击的目的是操纵ECU,同时掩盖该ECU被入侵的状况。攻击者监视并了解其弱攻击者发送了哪些消息以及以什么频率发送,直至给定的伪装时刻;例如,弱攻击者每20毫秒发送一次消息0xB0。由于大多数网络消息是周期性和广播的,例如通过CAN,因此很容易了解它们的标识符(ID)和传输间隔。一旦攻击者知道了消息的ID和频率,在伪装时刻,攻击者停止其弱攻击者的传输,并利用其强攻击者伪造并注入ID=0xB0的攻击消息。停止弱攻击者的传输并利用强攻击者传输恶意消息,其目的是克服弱攻击者无法注入消息的问题。在伪装时刻之后,0xB0的原始发送者,即弱攻击者,不发送该消息,而是由强攻击者以其原始频率发送该消息。因此,当观察总线(例如CAN总线)的流量时,消息0xB0的频率保持不变,而其发送器已经改变。
从上面的例子可以看出,设法分辨出攻击到底来自哪个ECU是多么重要,特别是在伪装攻击的情况下。在这点上,可以注意到诸如CAN总线之类的总线的缺点是没有MAC地址,而MAC地址可以直接追踪到在精准时刻在总线上发送消息的电子控制单元/设备11,这与例如以太网协议不同,因为在以太网协议中MAC地址是存在的。
发明内容
本发明的目的是提供一种监控方法,该方法可以识别发送消息(尤其是与攻击相关的消息)的电子控制单元。
根据本发明,上述目的通过一种防护方法以及相应的防护装置得以实现,该防护方法具有在所附权利要求中具体提及的特征。
附图说明
本发明将参考附图进行描述,这些附图仅以非限制性示例的方式提供,其中:
-图1已经在前面描述过,示意性地示出了CAN总线10;
-图2表示示出了实现本文所述方法的装置的示意图;
-图3表示示出了在本文描述的方法的上下文中通过通信网络传输的消息的时序图;
-图4表示示出了代表该方法的操作步骤的流程图;
-图5表示示出了通过该方法的上述操作步骤计算出的线性演变的图表;
-图6A和图6B表示通过上述方法的操作步骤在不同操作条件下计算出的相关函数的示意图;
-图7是示意性地示出本文所述方法的实施例的示意图;以及
-图8是示意性地示出本文所述的方法的步骤的示意图。
具体实施例
根据本文所述的解决方案,设想在车辆网络10内,特别是CAN总线内,插入一个或多个网络攻击防护装置,其实施本文所述网络攻击防护方法。该网络攻击防护装置可以是现有网络拓扑的附加装置,或者可以包含在现有的其中一个节点中,特别是通过配置微控制器14。
上述设备中的每一个可以负责分析车辆网络10的有限数量的节点的数据流量,其通常描述整个通信架构的子网络。例如,子网络可以有最多18个节点。
本文所描述的方法和装置的目的在于确保对应于特定子网络的CAN总线上的通信不会出现诸如前面所述的异常情况。
通常,本文描述的网络攻击防护方法设想的是,对于每个车辆网络10,控制节点(装置20)将被提供或可访问表1中指示的类型的消息标识符ID列表,以进行分析,所述列表包含哪些消息是周期性的、以及因此哪些消息实际上是由该方法分析的信息。
属于预先提供的消息列表的周期性消息将根据其周期性而被分组在一起,以防止由于某些具有不同周期和标识符ID(以及相同的起源节点)的消息的时间漂移可能是相同的而导致分类错误。因此,在分析时间漂移本身之前,首先要执行按周期分组或聚类的第一操作。
换言之,本文提供了一种用于保护车辆的通信网络,特别是CAN(控制器局域网),使其免受网络攻击的方法,该方法包括:通信总线,特别是CAN总线,以及多个节点,其以信号交换关系与所述通信总线相关联,并且至少部分地与用于车辆的控制功能的控制单元相关联,所述节点交换在所述多个节点的节点之间传递的消息,以及所述消息由各自的消息标识符标识,所述方法包括,在与所述通信总线相关联的控制节点处:从节点之间交换的消息中选择具有传输周期的周期性消息,根据各自的周期将所述周期性消息分组至各自的分组中,以及执行对交换所述接收到的周期性消息的节点的消息的分析过程,对于每组传输周期,该分析过程包括:获取具有相同消息标识符的一组周期性消息在各自节点处的到达时间,作为所述到达时间的函数,计算接收到的消息的所述分组中的给定数量的消息的连续子集上的平均偏移值,相对于每个连续子集,为每个标识符累积所述平均偏移值,以获得每个连续子集和各自的标识符的累积偏移值,通过对每个连续的子集和各自的标识符的所述累积偏移值进行回归计算,识别线性参数,所述计算包括计算回归的角度系数或斜率,以及截距或识别误差,基于在计算连续子集的平均偏移值作为所述到达时间的函数的步骤中而获得的平均偏移值,计算被识别为来自同一节点的消息对的平均偏移值的相关系数,执行第一检查,以检查相关系数是否高于第一给定阈值,执行第二检查,以检查具有相同标识符的两个连续消息之间的角度系数是否高于第二给定阈值,执行第三检查,以检查两个连续消息之间的截距是否高于第三给定阈值,以及将所述第一检查、所述第二检查和所述第三检查的结果提供给消息分类操作,其被配置为根据发送节点和消息标识符提供消息分类的确认或作为上述结果的函数提供分类错误指示。
更详细地,图2因此示出了攻击防护装置20,其与节点11(即,用于分析通过网络10交换的消息的控制节点)一起,连接到CAN总线10。如上所述,装置20是网络的控制节点,其具有可用的或可访问的如表1中所示的类型的消息标识符ID列表,以进行分析。装置20包括表示聚类操作的框200和表示消息分析过程的框300,该消息分析过程包括指纹识别过程310,即根据各自的唯一指纹,特别是从各自的时间漂移得到的指纹,而识别节点的过程,以及异常检测过程320,该过程根据节点的识别,检测是否有异常、特别是攻击正在进行中。
如上所述,优选地,上述攻击防护装置20被包含在具有类似于节点11的结构的节点中,因此包括CAN收发器12和包括在微控制器14中的CAN控制器13。在图2中,这些元素没有被详细显示;装置20在内部通过框示意性地表示,这些框说明了本文描述的攻击防护方法的操作或过程。如上所述,上述方法可由微控制器14执行,微控制器14被配置为在收发器12接收消息之后和控制器13的操作(例如,CAN总线10的逻辑电平和序列化的管理)之后执行上述方法。
因此,在装置20中执行的方法包括,一旦例如通过模块12和13接收到消息,执行上述在框200中的初步分组或聚类操作。具体地,根据所接收到的消息的标识符ID以及消息标识符ID和对应周期T的列表(装置20可以获得这些信息),将所接收到的消息根据周期T1,...,Tn划分为各自的分组或聚类。
然后,在框300中,对于对应于各自周期T1,...,Tn的每个分组,在装置20处接收到的每条消息都被处理,以便将时间漂移纳入考虑。
对于车辆上的CAN 10中的每个ECU,即,对于每个节点11,每个周期性消息的传输时刻是基于由存在于节点11中的具有石英晶体的时钟定义的时钟信号来确定的。按照NTP(网络时间协议)的惯例,在此用Ctrue表示“真实的”时钟信号,它代表每个时刻的真实时间变量,并用Ci表示另一个“不真实”的时钟,以用于定义时钟偏移、时钟频率和时钟偏斜等术语,如下所示:
时钟偏移:这是指时间变量Ci和Ctrue之间的差异;特别是,我们将“相对偏移”定义为两个连续Ci的之间的差异;
时钟频率:这是不真实的时钟信号Ci的变化率;从分析角度,它只不过是不真实时钟信号Ci的时间导数;以及
时钟偏斜:这是与不真实的时钟信号Ci相关的频率和与Ctrue相关的频率之间的差异;特别的,相对偏斜被定义为与连续的Ci相关的两个频率之间的差异。
如果两个时钟信号的相对偏移和偏斜为0,那么我们说它们是同步的。否则,它们被认为是不同步的。由于CAN总线,例如总线10,缺少在各自节点11中的时钟信号的同步,所以其被认为是不同步的。非同步节点的时钟偏移和偏斜完全取决于它们的本地时钟;因此,它们与其他节点不同。
特别地,每个ECU 11所特有的时间戳的特征在于其自身的时钟偏斜。通过对每个ECU 11的偏斜的深入分析,可以对具有多个节点的CAN 10中的各种ECU进行分类。
如图3所示,考虑以周期T发送消息M0,...,M3的ECU A,这里假设T还指示T毫秒的值,以及接收器ECU R,其周期性地接收上述消息M0,...,M3,从接收器ECU R的角度来看,由于只有它的时间戳可用,它的时钟被认为是“真实的”时钟,Ctrue。考虑到时钟的不对称性,周期性消息M0,...,M3是在与理想值(例如,T、2T、3T、...)略有偏差的时刻发送的。为简单起见,假设时间t=0是由ECU A发送第一条消息M0的时刻,而Oi是ECU A从t=0开始到发送第i个消息Mi时的时钟偏移。关于图3,索引指示接收到的消息。因此,在经过网络延迟di之后,接收器ECU R接收到该消息,并将其与到达的时间戳iT+Oi+di+ni相关联,其中,ni是接收器ECUR的时间戳量化的噪声。因此,每个到达时间戳之间的间隔为Trx,i=T+ΔOi+Δdi+Δni,其中由ΔXi指定为在步骤i和步骤i-1之间的数量X的差异,例如Oi或者ni或者di,并且O0=0。
工作假设是在一个时间步内的偏移量Oi的变化可以忽略不计,噪声ni是具有平均值为零的高斯噪声项,因此到达时间戳的间隔的期望值
Figure BDA0003835055930000091
可以被估计为:
Figure BDA0003835055930000092
由于CAN周期性消息的数据长度,即DLC(数据长度代码)在时间上是恒定的,因此目前认为E[Δdi]=0,即延迟di的差异的平均值被认为是零。根据第一条消息到达的时间戳,d0+n0,以及时间戳间隔的平均值,
Figure BDA0003835055930000093
第i个消息的预估到达时刻被推算出来并确定为
Figure BDA0003835055930000094
而实际测量的到达时间为iT+Oi+di+ni。由于我们正在估计随后的到达时间,因此期望值
Figure BDA0003835055930000095
是由先前的测量值给出的。假设周期T在时间上是恒定的,因此期望值
Figure BDA0003835055930000096
也是近似于周期T,预估时间和测量时间之间的平均差异由以下公式
Figure BDA0003835055930000097
给出。也就是说,从消息的周期性来看,我们可以估计出时钟的平均偏移,E[Oi],在实际中,不同的发射器会有不同的偏移。
为了估计时钟偏斜,到达的消息按照大小为N(例如,N=20)的批次分批处理,在此基础上计算第k批次的平均偏移,Oavg[k]。这一计算通过以下方程以封闭形式表示:
Figure BDA0003835055930000098
其中,μT[k-1]是先前批次的平均到达时间,方括号中的数量[ai-(a1+(i-1)μT[k-1])]是测量的到达时间ai和第i条消息的预计到达时间(a1+(i-1)μT[k-1])之间的差值。当从当前批次k中计算出平均偏移值时,根据下面定义的递归方程,将其绝对值添加到累积偏移Oacc[k]中:
Oacc[k]=Oacc[k-1]+|Oacc[k]| (2)
也可以使用不同的平均时钟偏移的公式,如以下方程3所示:
Figure BDA0003835055930000101
其中,a0是已分析的最后一批(即,在第k-1步)消息的测量时间戳。这使得重新定义表示累积时钟偏移Oacc[k]的演变的递归方程成为可能,如以下方程(4):
Oacc[k]=Oacc[k-1]+N|Oavg[k]| (4)
再次参考图6中示意性表示的情况,如果ECU R要为每N条收到的消息确定时钟的平均偏移,由于其是参考(N条消息中的)第一条消息得出的,其将仅表示最近的偏移量的平均值。因此,为了获得持续的偏移总量,累积的时钟偏移Oacc[k]、平均时钟偏移Oavg[k]的绝对值必须加在一起,而平均时钟偏移Oavg[k]的绝对值预先乘以批次数N的值,然后再在计算过程的第k-1步骤中添加到累积偏移量的先前值上。
累积时钟偏移Oacc[k]的斜率因此表示时钟偏斜,它实际上是恒定的(技术上是显然的)。这使得可以根据到达时间戳估计时钟偏斜,从而识别消息发送器以检测入侵行为。对于给定的消息标识符ID,可以获得到达时间戳的累积时钟偏移。由于时钟偏斜是恒定的,因此累积时钟偏移的动态是线性的,因此可以使用线性回归模型进行递归估计。线性回归的问题可以用下面的方程5表示:
Oacc[k]=S[k]t[k]+e[k] (5)
在计算过程的第k个通用步骤中,Oacc[k]是所分析的第k批次的N个消息的累积偏移量,S[k]是回归参数,t[k]是已经经过的时间,e[k]是识别误差。回归参数S[k]表示线性模型的斜率,因此表示预估的时钟偏斜。识别误差e[k]表示未被模型解释的残差(截距)。在计算参数Oacc的过程中,S,t,O,μ和e每隔N条消息就会更新一次,也就是说,到第k步要检查k·N条消息。为了确定未知参数,回归参数S,使用“瞬时”递归最小二乘(RLS)算法,该算法使用残差作为目标函数,以最小化建模误差的平方和。
如图4的流程图所示,其详细表示了指纹识别过程310,方程(1)-(5)定义了通过“瞬时”递归最小二乘(RLS)算法执行指纹识别操作310,其中,在对应于执行方程(1)的步骤312中,设想为N个接收到的消息的一个或多个间隔计算平均偏移值Oavg[k]。接下来,在对应于执行方程(2)的步骤314中,设想通过将在先前时刻k-1计算的先前值与在当前间隔k上的平均偏移值Oavg[k]乘以接收到的消息的数量N的累积值相加,计算当前的累积偏移值Oacc[k]。
这样一来,由Oacc[k]所指示的时间漂移或时钟偏移得以累积。
通过如方程3所示的累积时钟偏移的值,存在时钟偏移的增量,即累计时钟偏移量Oacc[k],其基本上是线性的,因此以图形方式描述为一条直线,对于作为周期T的函数计算的每个群的每个消息标识符而言,其基本上是唯一的。
因此,在步骤316中,通过特别是计算与在先前的步骤中获得累积时钟偏移值Oacc[k]相对应的回归参数S和识别误差e,解决了方程(5)中的回归问题。
以下提供用于递归计算和更新线性模型参数的伪代码示例。在第23点和第24点出现的分别是被输入到消息分析过程300中的计算累积时钟偏移的方程(1)和(2)(步骤312至314)。函数SKEWUPDATE(t,e)更新偏斜值(S[k]);在该函数中,步骤3至5对应于RLS算法。步骤7至21对应于根据到达时间an-an-1计算时间戳间隔Tnn,步骤22对应于计算平均间隔。在步骤25中,识别误差(k)计算为累积偏移和在步骤k-1处具有偏斜S[k-1]的斜率的直线之间的差值。与偏斜S[k]或回归参数相关的是函数SKEWUPDATE(t,e)的最小二乘值。
Figure BDA0003835055930000111
Figure BDA0003835055930000121
如图6所示是示出了在累积时钟偏移方面所获得的结果,其示意性地示出了这样一个事实:对于每个ECU h、j、l,存在与周期性消息一样多的直线,即标识符ID,这些消息预期由各自的ECU在通信总线上发送。鉴于每个周期性都以与其他周期性分开的方式单独进行分析(在这个意义上,周期T为10毫秒的消息与周期为20毫秒或其他周期性的消息是单独分析的),从时钟偏移的分析中可以得到下文示意性描述的结果。在图6中,通过将符号
Figure BDA0003835055930000122
理解为先前描述的通过RLS构造的直线,对应于由第h个ECU以周期性Ti发送的第r个标识符ID,即,由聚类操作200以周期性Ti分配至聚类或分组。为了防止在直线彼此过于靠近的情况下出现任何错误的分类,因此在决定成员组时可能存在一些歧义,就以下而言采用了相关分析(通过皮尔逊Pearson系数):有技术证据表明,即使累积的时钟偏移可能彼此非常接近,时间漂移持续存在的变化性对于该特定的ECU仍然是独一无二的。
如图4所示,该过程310还包括在步骤318中计算消息的平均延迟Oavg的相关性指数ρ。在这方面,图6A示出了一个图表,其中,出现在横坐标上的是由ECU h发送的带有标识符IDj的消息的平均延迟Oavg,以及出现在纵坐标上的是由不同的ECU k发送的具有不同标识符IDi、但具有相同的周期的消息的平均偏移Oavg。在两条消息具有相同的周期,但来自不同的ECU的情况下,即使它们实际上关联了相似的时钟偏移,它们在任何情况下都可以通过计算平均偏移Oavg的相关性指数ρ来区分,只要相关性的绝对值是低的。相反,来自同一个设备/节点/ECU的消息,如图6B所示,其中标识符IDi、IDj是不同的,周期是相同的,ECU是相同的,即ECU h,这些消息具有非常相似的累积时钟偏移和非常高的相关性指数ρ(实验证据表明其值高于0.8)。
因此,在步骤318中计算的是具有相似周期的消息对的相关性指数ρ,这些消息因此属于从聚类操作200中获得的同一个聚类,具有不同的标识符IDi、IDj,在接收中发现它们来自同一个ECU或节点11(例如,图6B中的ECU h),以及在步骤312中计算得到相应的平均偏移Oavg
随后的异常检测过程320基于在步骤316中提供的对直线
Figure BDA0003835055930000131
的斜率(即S[k])和截距(即e[k])的变化的分析,其实际上是对应于先前描述的异常/攻击。特别地,斜率S[k]的变化对应于具有该特定标识符ID的消息的周期性的变化,即对于直线
Figure BDA0003835055930000132
是来自节点或ECU h的周期为Ti的分组中的消息Mr。如果周期增加(发送的频率降低),那么斜率S[k]就会减小(直线变得不那么“倾斜”)。相反,如果周期减小(并且频率增加),则直线的斜率S[k]更加陡峭。
对时钟偏移的累积、直线的斜率S[k]和截距e[k](由步骤316提供),以及显然具有相同来源的消息之间的相关性指数ρ的联合分析,使得既可以了解通信网络是否受到攻击,这与之前的异常定义一致,也可以了解具有特定标识符IDr的特定消息来自哪个ECU(节点11),其中r是消息标识符的索引,特别是在装置20允许访问的标识符列表中,每个r值对应不同的标识符。
因此,图7示出了上述方法的一个实施例的示意图。
框100指示的是白名单步骤,即,应用白名单过滤器,该过滤器亦即仅允许列表中所指示的元素通过的过滤器,即白名单,作为步骤200和300的预备步骤。该过滤器可以仅接受与控制节点相关联的白名单中有效存在的消息标识符ID。不属于该列表的标识符ID的类型可以被丢弃,记录在特殊的数据结构中,并可能通过特定信号上报给用户。
然后,由200指定的是聚类或分组步骤,根据周期对消息进行分离,以获得消息的分组
Figure BDA0003835055930000141
上述消息的分组被提供给消息分析过程300,该过程包括指纹识别过程310和异常检测过程320。
图8更详细地显示了上述消息分析过程300。
如前所述,过程310从消息分组
Figure BDA0003835055930000142
的到达时间ai中,通过方程(1)-(2)(或者可选地(3)和(4)方程)和方程(5)的回归计算,获得各自的斜率S[k]和截距e[k]。
在异常检测过程320中,接下来设想在聚类过程200和白名单过程100之后,基于在接收到的消息上计算的斜率S[k]和截距e[k]的值以及相关性值ρ,执行分类,例如通过三级决策逻辑分类器执行分类。
因此,过程320包括对属于同一分组消息
Figure BDA0003835055930000143
的消息进行相关性分析的步骤350。如图6A和6B所示,在上述相关性分析中,计算出具有相同周期Ti的消息分组中来自同一控制单元h的消息对的平均偏移Oavg之间的相关性指数ρ。
一旦在步骤350中获得了相关性ρ的值,则在测试步骤355中,进行检查以验证相关性指数ρ的值是否高于优选地可以设置的值,例如0.8。提供给分类器360的是关于测试步骤355是否产生了肯定结果或否定结果(例如,是/否,或通过/失败)的信息。
过程320还包括步骤330,其比较与属于同一分组消息
Figure BDA0003835055930000151
的连续消息相关联的斜率S[k]。特别地,在步骤330中选择的是两个连续消息的斜率值。然后,在步骤335中,进行检查以验证它们的差是否大于设置的斜率阈值STH。
提供给分类器360的是关于测试步骤335是否产生了肯定结果或否定结果(例如,是/否,或通过/失败)的信息。
过程320还包括步骤340,即比较与属于同一分组消息
Figure BDA0003835055930000152
的连续消息相关联的截距e[k]的值。
特别地,在步骤340中选择的是接收到的两个连续消息的误差或截距e[k]的值;然后,在测试步骤345中进行检查,以验证它们的差是否大于设置的斜率阈值ETH。
提供给分类器360的是关于测试步骤345是否产生了肯定结果或否定结果(例如,是/否,或通过/失败)的信息。
分类器360是启发式的并且例如通过IF、...、THEN类型的逻辑规则来配置。模式识别分类器的其他替代实施例,包括神经网络,是可能的。在替代实施例中,分类器360可以包括一个或多个进一步的输入量或信息数据。
在一个优选的实施例中,提供给分类器360的首先是对相关性指数的测试355的结果,然后是其他两个测试335和345的结果,优选地首先是测试335,然后是测试345。已经发现,这种测试顺序在分类准确性方面具有优势,但很明显,在不同的实施例中,有可能以不同的方式对测试进行排序。
因此,例如,如果相关性分析350至355产生否定结果,或者如果名义上属于同一ECU的两条直线的斜率非常不同(步骤330至335),则分类器360记录分类错误。这种分类错误可以通过特定的信号报告给用户,或者记录在数据结构中以生成其他类型的事件。
因此,设想到可以将所述第一检查350、所述第二检查330和所述第三检查340的结果提供给由分类器360执行的消息分类操作,其被配置为提供结果RC,结果RC包括根据发送节点11(例如ECU h)和消息标识符ID的消息分类的确认,或作为所述结果的函数的分类错误的指示。
如果检查350中的相关性系数ρ高于第一给定阈值,则分类操作指示正在发送消息的节点对应于标称节点;如果低于第一给定阈值,则记录分类错误并指示发送节点与标称节点不同。
如果第二检查330产生否定结果,即斜率发生变化,则分类操作360将结果RC指示为伪装攻击。
如果第三检查340产生否定结果,则分类操作360将结果RC指示为伪造攻击。
如前所述,优选地,上述分类操作360是决策逻辑判别的操作,其中首先评估第一检查350的结果,即相关性系数ρ是否高于第一给定阈值,以及如果第一检查的结果是肯定的,则评估第二检查的结果和/或者第三检查的结果。
因此,所描述的方法利用了先验的已知信息来检查属于同一ECU或节点11的标识符ID之间的相关性。所谓先验的已知信息,只要其存储在装置20中或在任何情况下可对其进行访问,可以理解为有关网络拓扑、ECU数量,或者更一般地,发送节点11的信息以及由这些ECU中的每一个发送的标识符ID的数量和类型的信息。
因此,从上面的描述可以清楚地看出所提出的解决方案的优点。
所描述的解决方案的优点包括可以作为虚拟MAC来执行,从自身通过网络总线发送的周期性消息的时间漂移出发,识别特定设备的行为。

Claims (9)

1.一种用于保护车辆的通信网络,特别是CAN(控制器局域网),使其免受网络攻击的方法,包括:
通信总线(10),特别是CAN总线,以及
多个节点(11),其以信号交换关系与所述通信总线(10)相关联,并且至少部分地与用于控制车辆功能的控制单元相关联,
所述节点(11)交换在所述多个节点(11)的节点之间传递的消息(M),以及
所述消息(M)由各自的消息标识符(ID)标识,
所述方法包括,在与所述通信总线(10)相关联的控制节点(20)处:
从所述节点之间交换的所述消息(M)中,选择具有传输周期的周期性消息,
根据各自的周期(Ti)将所述周期性消息分组(200)至各自的分组,以及
执行对交换所述接收到的周期性消息的所述节点(11)的消息的分析过程(300),其中对于每组传输周期,所述分析过程包括:
获取具有相同消息标识符(ID)的一组周期性消息在各自节点(11)处的到达时间(ai),
作为所述到达时间(ai)的函数,计算(312)接收到的消息的所述分组中的给定数量(N)的消息的连续子集上的平均偏移值(Oavg),
相对于每个连续子集,为每个标识符(ID)累积(314)所述平均偏移值(Oavg),以获得每个连续的子集和各自的标识符(ID)的累积偏移值(Oacc[k]),
通过对每个连续的子集和各自的标识符(ID)的所述累积偏移值(Oacc[k])进行回归计算,识别(316)线性参数(e[k],S[k]),所述计算包括计算回归的角度系数或斜率,以及截距或识别误差,
基于在计算(312)连续子集上的平均偏移值作为所述到达时间(ai)的函数的步骤中而获得的平均偏移值(Oavg),计算(318)被识别为来自同一个节点的消息对的所述平均偏移值(Oavg)的相关系数(ρ),
执行第一检查(350),以检查所述相关系数(ρ)是否高于第一给定阈值,
执行第二检查(330),以检查具有相同标识符的两个连续消息之间的角度系数(S[k])是否高于第二给定阈值,
执行第三检查(340),以检查两个连续消息之间的截距(e[k])是否高于第三给定阈值,以及
将所述第一检查(350)、所述第二检查(330)和所述第三检查(340)的结果提供给消息分类操作(360),所述消息分类操作被配置为根据发送节点(11)和消息标识符(ID)提供(RC)消息分类的确认或作为所述结果的函数提供分类错误指示。
2.根据权利要求1所述的方法,其中,如果所述相关系数(ρ)高于第一给定阈值,则所述分类操作指示正在发送消息的节点与标称节点相对应;如果低于第一给定阈值,则指示分类错误,并指示发送节点与标称节点不同。
3.根据前述权利要求中任一项所述的方法,其中,如果所述第二检查(330)具有否定输出,则所述分类操作(360)指示伪装攻击。
4.根据前述权利要求中任一项所述的方法,其中,如果所述第三检查(340)具有否定输出,则所述分类操作(360)指示伪造攻击。
5.根据前述权利要求中任一项所述的方法,其中,所述分类操作(360)是决策逻辑判别的操作,其中,首先评估关于相关系数(ρ)是否高于第一给定阈值的所述第一检查(350)的结果,并且如果所述第一检查的结果是肯定的,则评估所述第二检查的结果和/或所述第三检查的结果。
6.根据前述权利要求中任一项所述的方法,其中,关于网络的拓扑结构和/或发送节点(11)和/或由每个所述节点发送的所述消息的标识符(ID)的数量和类型的先验已知信息是可访问的,以用于执行所述方法的操作。
7.根据前述权利要求中任一项所述的方法,其包括使用白名单进行过滤的操作,所述操作仅接受与所述控制节点相关联的所述白名单中实际存在的消息标识符(ID)。
8.根据前述权利要求中任一项所述的方法,其中,所述测量到达时间的操作是通过获取所述消息到达的时间戳来执行的。
9.一种用于保护车辆的通信网络,特别是CAN(控制器局域网),以使其免受网络攻击的装置(20),所述网络包括:
通信总线(10),特别是CAN总线,以及
多个节点(11),其以信号交换关系与所述通信总线(10)相关联,并且至少部分地与用于控制车辆功能的控制单元相关联,
所述节点(11)交换在所述多个节点(11)的节点之间传递的消息(M),以及
所述消息(M)由各自的消息标识符(ID)标识,
所述装置的特征在于,其被配置为根据权利要求1至8中的一项或多项所述的方法进行操作。
CN202211085952.9A 2021-09-06 2022-09-06 基于时间分析的车辆网络攻击防护方法及相应装置 Pending CN115776383A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IT102021000022919 2021-09-06
IT102021000022919A IT202100022919A1 (it) 2021-09-06 2021-09-06 Procedimento di protezione da attacchi informatici a un veicolo basato su analisi temporale e corrispondente dispositivo

Publications (1)

Publication Number Publication Date
CN115776383A true CN115776383A (zh) 2023-03-10

Family

ID=79019215

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211085952.9A Pending CN115776383A (zh) 2021-09-06 2022-09-06 基于时间分析的车辆网络攻击防护方法及相应装置

Country Status (4)

Country Link
US (1) US20230080521A1 (zh)
EP (1) EP4145765A1 (zh)
CN (1) CN115776383A (zh)
IT (1) IT202100022919A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116700110A (zh) * 2023-06-30 2023-09-05 中汽院新能源科技有限公司 基于多模块划分的分布式驱动新能源汽车控制方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117240602B (zh) * 2023-11-09 2024-01-19 北京中海通科技有限公司 一种身份认证平台安全防护方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11044260B2 (en) * 2016-04-01 2021-06-22 The Regents Of The University Of Michigan Fingerprinting electronic control units for vehicle intrusion detection

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116700110A (zh) * 2023-06-30 2023-09-05 中汽院新能源科技有限公司 基于多模块划分的分布式驱动新能源汽车控制方法
CN116700110B (zh) * 2023-06-30 2024-03-26 中汽院新能源科技有限公司 基于多模块划分的分布式驱动新能源汽车控制方法

Also Published As

Publication number Publication date
US20230080521A1 (en) 2023-03-16
IT202100022919A1 (it) 2023-03-06
EP4145765A1 (en) 2023-03-08

Similar Documents

Publication Publication Date Title
KR102601578B1 (ko) 사이버 공격에 대한 네트워크 보호 방법
Cho et al. Fingerprinting electronic control units for vehicle intrusion detection
CN115776383A (zh) 基于时间分析的车辆网络攻击防护方法及相应装置
CN110275508B (zh) 车载can总线网络异常检测方法及系统
JP6956624B2 (ja) 情報処理方法、情報処理システム、及びプログラム
US10713106B2 (en) Communication device, communication method and non-transitory storage medium
Popa et al. Ecuprint—physical fingerprinting electronic control units on can buses inside cars and sae j1939 compliant vehicles
US20200021611A1 (en) Fraud detection method, fraud detection device, and recording medium
CN109257358B (zh) 一种基于时钟偏移的车载网络入侵检测方法及系统
US12052371B2 (en) Method for monitoring a network
Ji et al. Investigating the effects of attack detection for in-vehicle networks based on clock drift of ECUs
US20220394045A1 (en) Method For Protection From Cyber Attacks To A Vehicle, And Corresponding Device
US20210105292A1 (en) Detector, detection method, and detection program
JP2022545639A (ja) コントローラ・エリア・ネットワーク母線に対する侵入を検知かつ無効にする方法および装置
Hafeez et al. State of the art survey on comparison of physical fingerprinting-based intrusion detection techniques for in-vehicle security
Lee et al. TTIDS: Transmission-resuming time-based intrusion detection system for controller area network (CAN)
Tian et al. Advanced Temperature‐Varied ECU Fingerprints for Source Identification and Intrusion Detection in Controller Area Networks
CN101917732B (zh) 无线流量判别方法
Lee et al. ErrIDS: An enhanced cumulative timing error-based automotive intrusion detection system
Boumiza et al. An efficient hidden Markov model for anomaly detection in can bus networks
Stabili et al. A Benchmark Framework for CAN IDS.
CN108965234B (zh) 用于保护网络防止网络攻击的方法
Hafeez A robust, reliable and deployable framework for in-vehicle security
Ohira et al. Divider: Delay-time based sender identification in automotive networks
EP4224790A1 (en) Method for protection from cyber attacks to a vehicle based upon time analysis, and corresponding device

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