CN112583786A - 用于警报的方法、发送器设备和接收器设备 - Google Patents
用于警报的方法、发送器设备和接收器设备 Download PDFInfo
- Publication number
- CN112583786A CN112583786A CN202011040346.6A CN202011040346A CN112583786A CN 112583786 A CN112583786 A CN 112583786A CN 202011040346 A CN202011040346 A CN 202011040346A CN 112583786 A CN112583786 A CN 112583786A
- Authority
- CN
- China
- Prior art keywords
- frame
- node
- inter
- attack event
- communication bus
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/627—Controller area network [CAN] identifiers
Abstract
公开了用于警报的方法、发送器设备和接收器设备。该发送器设备可以包括发送器和一个或更多个处理器。该一个或更多个处理器可以被配置成经由通信总线向一个或更多个接收器设备发送帧。该一个或更多个处理器可以被配置成检测通信总线上的复制的帧,并且基于检测到复制的帧来识别攻击事件。该一个或更多个处理器可以被配置成基于识别出攻击事件来确定帧间发送时间的序列,其中,帧间发送时间的序列是基于与一个或更多个接收器设备相关联的共享秘密来被确定的。该一个或更多个处理器可以被配置成根据帧间发送时间的序列而发送一系列警报帧,以允许向一个或更多个接收器设备通知攻击事件。
Description
技术领域
本发明涉及通信领域,并且具体涉及控制器局域网络中的报警。
背景技术
控制器局域网络(CAN)是一个或更多个通信总线的网络,这些通信总线将特定系统的节点互连。单个节点可以包括由系统用于执行功能的传感器、致动器、控制器和/或其他设备。在交通工具系统中,节点可以对应于与交通工具的功能相关联的传感器、致动器和/或电子控制单元(ECU)(例如,发动机控制模块(ECM)、动力总成控制模块(PCM)、变速器控制模块(TCM)、制动控制模块(BCM)、中央控制模块(CCM)、中央定时模块(CTM)、通用电子模块(GEM)、车身控制模块(BCM)、悬架控制模块(SCM)等)。CAN内的节点使用根据基于消息的通信协议串行发送和/或接收的位串或帧经由CAN总线彼此通信。尽管CAN总线通常用于交通工具(例如,公路交通工具、越野交通工具、海上交通工具、飞行器等),但是CAN总线也可以用于其他应用(例如,工业系统、医疗系统、机器人系统等)。
发明内容
根据一些实现方式,一种方法可以包括:通过发送器设备经由CAN总线向一个或更多个接收器设备发送帧,其中,帧包括标识符字段和有效载荷字段;在发送帧之后通过发送器设备检测CAN总线上的复制的帧,复制的帧包括帧的标识符字段或有效载荷字段中的一个或更多个;通过发送器设备基于复制的帧识别攻击事件;以及基于识别出攻击事件通过发送器设备发送一系列警报帧,一系列警报帧是根据基于与发送器设备相关联的共享秘密确定的帧间发送时间的序列发送的,其中,发送一系列警报帧允许基于帧间发送时间的序列向一个或更多个接收器设备通知攻击事件。
根据一些实现方式,一种发送器设备可以包括:发射器;以及一个或更多个处理器,一个或更多个处理器被配置成:使用发射器经由通信总线向一个或更多个接收器设备发送帧,其中,帧包括标识符字段和有效载荷字段;检测通信总线上的复制的帧,其中,复制的帧包括帧的标识符字段或有效载荷字段中的一个或更多个;根据检测到复制的帧来识别攻击事件;基于识别出攻击事件来确定帧间发送时间的序列,其中,基于与一个或更多个接收器设备相关联的共享秘密来确定帧间发送时间的序列;以及使用发射器根据帧间发送时间的序列发送一系列警报帧,以允许基于根据帧间发送时间的序列发送的一系列警报帧向一个或更多个接收器设备通知攻击事件。
根据一些实现方式,一种接收器设备可以包括:接收器;以及一个或更多个处理器,一个或更多个处理器被配置成:经由通信总线使用接收器从发送器设备接收一系列警报帧,其中,在相应的到达时间接收警报帧;基于相应的到达时间确定与一系列警报帧相关联的帧间到达时间;评估与发送器设备相关联的共享秘密,其中,共享秘密包括与帧间到达时间的参考序列相关的信息,以及其中,帧间到达时间的参考序列对应于由发送器设备检测到的攻击事件;基于确定帧间到达时间对应于帧间到达时间的参考序列识别攻击事件的通知;以及使得结合攻击事件执行动作。
附图说明
图1是其中可以实现本文描述的系统和/或方法的示例环境的图。
图2A至图2C是本文描述的警报系统的示例实现方式的图。
图3A至图3C是本文描述的警报系统的示例实现方式的图。
图4是其中可以实现本文描述的系统和/或方法的示例环境的图。
图5是用于发送与通信总线内的攻击事件相关的警报消息的示例处理的流程图。
图6是用于接收在通信总线内的攻击事件的通知的示例处理的流程图。
具体实施方式
以下示例实现方式的详细描述参照附图。不同附图中的相同附图标记可以标识相同或相似的元件。
如上所述,CAN可以包括一个或更多个通信总线的网络,通信总线将系统(例如,交通工具系统、工业系统、医疗系统、机器人系统等)的节点互连。节点可以包括用于执行相关联的系统的功能的传感器、致动器、控制器和/或其他设备。例如,在交通工具中,节点可以对应于与交通工具的节气门功能、转向功能、制动功能、档位选择功能和/或其他功能相关联的传感器、致动器和/或ECU。节点可以经由根据基于消息的通信协议串行发送和/或接收的帧(例如,位串)与CAN总线上的其他节点通信。例如,节点可以发送显性(dominant)位和/或隐性(recessive)位的帧,显性位和/或隐性位的帧可以被另一节点解释为经由传感器提供的信息、用于控制致动器的信息、操作参数、操作条件等。根据通信协议,可以在具有较低优先级(例如,具有隐性前导位(recessive leading bit))的帧之前发送具有较高优先级(例如,具有显性前导位(dominant leading bit))的帧。可以以多主机布置来提供CAN总线的节点,其中经由CAN总线传输的信息可用于任何寻求该信息的连接节点。
越来越多的系统(例如,交通工具系统)依靠电气控制而不是机械控制来进行操作,这导致对CAN总线的依赖性增加,以支持与时间敏感和关键功能相关的信息(例如,与节气门有关的信息功能、转向功能、制动功能、档位选择功能等)。此外,越来越多的系统提供网络连接性和/或包括半自主功能和/或自主功能。这样的因素的组合在维持经由CAN总线交换的信息的安全性和/或完整性方面可能带来挑战。在一些情况下,例如在交通工具系统中,受损的CAN总线可能会导致潜在的安全隐患。例如,恶意行为者可能危害交通工具的CAN总线的现有节点或将未经授权的节点引入CAN总线,以试图覆盖或以其他方式破坏交通工具的潜在关键功能。由于CAN总线的多主机配置,连接至CAN总线的恶意行为者可能能够观察到未被检测到的经由CAN总线传输的消息,在不适当的时间引入一些位(例如,显性位)以修改和/或破坏传输的消息,和/或发起攻击(例如,延迟攻击、重放攻击、模拟攻击、欺骗攻击等)。
在延迟攻击中,恶意行为者可能以引入不必要的延迟或以其他方式破坏CAN总线的时间敏感操作的方式来破坏本来有效的消息(例如,用于时钟同步的消息和/或另一类型的消息)。在重放攻击中,恶意行为者可能会复制先前由CAN总线的节点发送的消息(例如,用于时钟同步的消息和/或另一类型的消息),并发送复制的消息以破坏CAN总线的操作。在模拟攻击中,恶意行为者可能会复制先前由节点发送的消息,并发送将该节点错误地识别为发送器的复制的消息,以破坏由CAN总线管理的操作。在欺骗攻击中,恶意行为者可能会伪造将CAN总线的节点错误地识别为发送器的消息,并发送伪造的消息来破坏CAN总线的操作。在一些情况下,恶意行为者可能会发起攻击,攻击是延迟攻击、重放攻击、模拟攻击、欺骗攻击和/或其他类型的恶意攻击的组合。由于CAN总线支持的某些功能的时间敏感性和/或关键性并且易受这样的恶意攻击,因此这些恶意攻击可能会干扰操作、浪费资源并导致不良后果。
本文描述的一些实现方式提供了一种警报系统,其可以识别CAN总线内的攻击事件,并有助于采取纠正措施以有效的方式解决攻击事件。例如,警报系统可以使得发送器节点能够经由CAN总线检测复制的帧(例如,复制先前由发送器节点发送并由恶意行为者复制的有效帧),并基于复制的帧识别攻击事件,并发送一系列警报帧以向CAN总线的一个或更多个接收器节点通知警报事件。发送器节点可以根据基于与发送器节点和/或一个或更多个接收器节点相关联的共享秘密而确定的帧间发送时间的序列来发送警报帧。相应地,警报系统可以使得接收器节点能够接收一系列警报帧,确定与一系列警报帧相关联的帧间到达时间,评估包括与帧间到达时间的参考序列相关的信息的共享秘密,基于确定帧间到达时间对应于帧间到达时间的参考序列来接收与攻击事件相关的通知。在一些示例中,警报系统可以使得发送器节点和/或接收器节点能够使得结合攻击事件执行动作(例如,减少、规避和/或以其他方式解决攻击事件)。
以这种方式,警报系统可以使由恶意行为者引起的对基于CAN的操作的破坏最小化。例如,警报系统通过根据在CAN总线的节点之间共享的帧间时间的秘密序列广播警报消息来向CAN总线内的节点迅速地通知已识别的攻击事件。通过根据帧间时间而不是仅通过消息内容来保护警报消息,警报系统限制了恶意行为者解释、破坏和/或损坏警报消息的能力。此外,通过向节点迅速通知已识别的攻击事件,警报系统使得基于CAN的系统能够快速实现纠正措施,以减少、规避和/或解决攻击事件。因此,警报系统有助于进一步限制可能由恶意行为者造成的破坏和/或损坏。例如,在交通工具系统中,警报系统可以使对节气门功能、转向功能、制动功能、档位选择功能和/或其他时间敏感和/或关键功能的破坏最小化。此外,警报系统可以在CAN的数据链路层上进行操作,该CAN的数据链路层更接近于CAN的物理层(例如,根据开放系统互连(OSI)七层模型)操作,以使得相对于可能在应用层操作的其他解决方案能够更快地检测和/或响应攻击事件。
图1是可以实现本文描述的系统和/或方法的示例环境100的图。如图1所示,环境100可以对应于具有节点、通信总线(例如,CAN总线)和终端电阻器的CAN。节点(例如,节点1、节点2或节点3)可以包括被配置成执行相关联的系统的功能的相关联的系统的传感器、致动器和/或控制器。在交通工具系统中,例如,节点可以对应于与节气门功能、转向功能、制动功能、档位选择功能和/或用于操作交通工具的其他功能相关联的传感器、致动器和/或ECU。如图1中的示例所示,通信总线可以包括两个总线端子(例如,高总线端子和低总线端子)。节点可以选择性地跨总线端子施加直流(DC)电压信号,以传输显性位或隐性位。例如,节点可以通过将高总线端子驱动至高电压(例如5VDC)并通过将低总线端子驱动至低电压(例如,0VDC)来发送显性位(例如,逻辑“0”位),并通过不驱动总线端子来发送隐性位(例如,逻辑“1”位)。总线端子可以在节点之间延伸并启用在节点之间交换的信息(例如,经由传感器提供的信息、用于控制致动器的信息、操作参数、操作条件等)。终端电阻器可以包括被配置成限制节点之间的信号反射的电阻器。
在一些实现方式中,通信总线可以对应于另一类型的网络(例如,具有灵活数据速率的控制器局域网络(CAN FD)、超大型控制器局域网络(CAN XL)、CANopen、本地互连网络(LIN)、FlexRay网络、以太网网络等)的通信总线。尽管示出为具有两个总线端子,但是通信总线可以使用不同数量的总线端子以及/或者使用将不同布置的节点互连的不同布置的总线端子来互连节点。在一些示例中,可以以多主机布置来设置通信总线,在多主机布置中,经由通信总线传输的信息对于连接至通信总线的任何节点都是可用的。在一些示例中,可以以环形拓扑的形式(例如,在环形拓扑中,通信总线的端部电耦接至单个主机单元)布置通信总线。另外地或可替选地,通信总线可以包括多个通信总线和/或与一个或更多个另外的通信总线选择性通信。尽管CAN总线通常用于交通工具(例如,公路交通工具、越野交通工具、海上交通工具、空中交通工具等),但是CAN总线也可以用于其他应用(例如,工业系统、医疗系统、机器人系统等)。
在一些实现方式中,通信总线的节点可以根据基于消息的通信协议彼此通信。例如,发送器节点可以发送作为被串行地引入到通信总线中并且被通信总线的接收器节点串行地接收的位的帧的消息。帧通常可以包括提供与帧中包括的消息有关的不同类型的信息的一个或更多个指定字段。如图1中的示例所示,帧可以包括帧起始(SOF)字段、标识符字段、有效载荷字段、循环冗余校验(CRC)字段、帧结束(EOF)字段等。SOF字段可以包括指定新消息的开始的一个或更多个位。标识符字段可以包括一个或更多个位,所述一个或更多个位识别帧的优先级、帧中包含的内容的类型、发送器节点的唯一标识符、接收器节点的唯一标识符和/或可以由接收器节点用于识别消息的预期接收的其他信息。有效载荷字段可以包括与消息的基础内容相关的一个或更多个位。CRC字段可以包括被配置成使得接收器节点能够确定接收到的消息与发送的消息之间的一致性的一个或更多个位。EOF字段可以包括指定消息的结束的一个或更多个位。在一些示例中,与所示出的字段相比,帧可以包括另外的字段、更少的字段和/或不同布置的字段。
在一些实现方式中,通信总线可能遭受由恶意行为者(例如,节点X)发起的攻击。例如,恶意行为者可能损坏通信总线的现有节点或将未经授权的节点引入通信总线,以试图覆盖或以其他方式破坏相关联的系统(例如,交通工具系统等)的功能。如上所述,获得对通信总线的访问的恶意行为者可能能够观察到未被检测到的经由通信总线交换的消息。在一些情况下,恶意行为者可能不会根据通信总线的通信协议进行操作,并且在不适当的时间(例如,在其他消息的传输期间)引入位。恶意行为者因此可以破坏本来有效的消息、破坏消息的定时、使节点之间的时钟同步偏移、使通信总线拥塞、调用服务拒绝和/或以其他方式破坏连接至通信总线的一个或更多个节点的操作。在一些示例中,如上所述,恶意行为者可以发起延迟攻击、重放攻击、模拟攻击、欺骗攻击和/或其组合。在交通工具中,恶意攻击可能导致对时间敏感和/或关键的交通工具功能(例如,节气门功能、转向功能、制动功能、档位选择功能和/或交通工具的其他功能)的破坏。
提供了图1所示的设备和网络的数量和布置作为一个或更多个示例。实际上,与图1所示的设备和/或网络相比,可以存在附加的设备和/或网络、更少的设备和/或网络、不同的设备和/或网络、或不同布置的设备和/或网络。此外,图1所示的两个或更多个设备可以在单个设备内实现,或者图1所示的单个设备可以实现为多个分布式设备。另外地或可替选地,环境100的一组设备(例如,一个或更多个设备)可以执行被描述为由环境100的另一组设备执行的一个或更多个功能。
图2A至图2C是本文描述的警报系统的示例实现方式200的图。参照图2A至图2C,示例实现方式200可以包括经由通信总线(例如,CAN总线)互连的第一节点(例如,节点1)和第二节点(例如,节点2)。图2A至图2C呈现了可以由第一节点和/或第二节点执行的一个或更多个功能,以识别由连接至通信总线的恶意行为者(例如,节点X)发起的攻击事件,并致使减少、规避和/或以其他方式解决攻击事件。在一些示例中,第一节点和/或第二节点可以包括传感器、致动器、控制器和/或相关联的系统的其他设备。例如,第一节点和/或第二节点可以执行与交通工具系统的节气门功能、转向功能、制动功能、档位选择功能和/或其他功能相关联的操作。在一些示例中,第一节点和/或第二节点可以执行与工业系统、医疗系统、机器人系统和/或其他基于CAN的系统相关联的操作。一个或更多个被描述为由第一节点执行的功能可以由第二节点和/或通信总线的另一节点来执行,并且一个或更多个被描述为由第二节点执行的功能可以由第一节点和/或通信总线的另一节点来执行。
如图2A中所示,并且通过附图标记202所示,第一节点可以经由通信总线发送旨在用于第二节点的消息(例如,与该消息相对应的位的帧)。在一些示例中,该消息可以用于执行与第二节点的单向时钟同步。第一节点可以发送具有标识符字段和有效载荷字段的帧,标识符字段具有识别第一节点的信息,有效载荷字段具有识别该帧的发送时间和/或时间戳的信息。例如,有效载荷字段可以包括如下信息:所述信息可以由第二节点用于确定第一节点与第二节点之间的传输延迟(例如,延迟1→2),并且基于该传输延迟来同步第二节点的内部时钟。在一些示例中,该消息可以与其他类型的信息(例如,与节气门功能、转向功能、制动功能、档位选择功能和/或交通工具系统的其他功能有关的信息)有关。在这样的情况下,对应的帧可以包括标识符字段和有效载荷字段,标识符字段具有识别第一节点的信息,有效载荷字段具有识别内容的信息(例如,经由传感器提供的信息、用于控制致动器的信息、操作参数、操作条件等)。
如图2A进一步所示,并通过附图标记204所示,恶意行为者可能破坏由第一节点发送并旨在用于第二节点的消息。例如,恶意行为者可能获得对通信总线的现有节点的控制,或者将未经授权的节点引入通信总线,以获得对在通信总线内交换的消息的访问。一旦连接至通信总线,恶意行为者就可以尝试覆盖或以其他方式破坏与第一节点和/或第二节点相关联的操作。例如,在帧的传输期间(例如,在通信总线的节点将不按照通信协议传输位时),恶意行为者可能将显性位(例如,逻辑“0”)引入通信总线(例如,通过将高总线端子驱动到5VDC并将低总线端子驱动到0VDC)。通过在帧的传输期间引入显性位,恶意行为者可能会修改帧的位并破坏消息。如果该消息与时钟同步消息有关,则恶意行为者可能以发起延迟攻击的方式(例如,延迟时钟同步消息的传递并使第一节点与第二节点之间的时钟同步偏移)来修改帧的位。
如图2A进一步所示,并且通过附图标记206所示,第二节点可能由于错误而丢弃消息。在一些示例中,第二节点可能由于包含在相关联的帧中的CRC字段(例如,CRC值,诸如由第一节点计算的校验和值)指示的错误而丢弃消息。例如,第二节点可以计算接收到的消息的帧的CRC值(例如,校验和值),并且将该CRC值与CRC字段中包括的CRC值进行比较以验证消息的完整性。由于被恶意行为者修改的位,因此第二节点计算出的CRC值可能与由第一节点提供的CRC字段中包括的CRC值不同。如果该CRC值与CRC字段中包括的CRC值不对应,则第二节点可以确定消息已被破坏并丢弃该消息。如果消息与时钟同步消息有关,则第二节点可以丢弃本来有效的同步信息(例如,与由第一节点发送的消息的发送时间和/或时间戳有关的信息)。在一些示例中,该消息可以涉及与交通工具系统的功能有关的其他类型的信息。在这样的情况下,第二节点和/或通信总线的其他节点可能丢弃操作交通工具的时间敏感和/或关键功能所需的信息。
如图2A进一步所示,并通过附图标记208所示,恶意行为者可以复制由第一节点发送的原始消息。例如,在破坏原始消息并使第二节点丢弃该消息之后,恶意行为者可以发起重放攻击(例如,复制与原始消息相对应的未修改的帧,并在一段时间之后经由通信总线发送复制的帧)。另外地或可替选地,恶意行为者可以发起模拟攻击(例如,复制未修改的帧的标识符字段,并且经由通信总线发送复制的帧,复制的帧错误地将第一节点识别为发送器)。由于复制的帧不包含被恶意行为者修改的位,因此第二节点可能接收复制的帧并将其不正确地接受为有效帧。如果复制的消息涉及时钟同步消息,则第二节点可以基于不准确的传输延迟(例如延迟攻击和延迟X→2)而不是第一节点与第二节点之间的实际传输延迟(例如延迟1→2)来使内部时钟同步。如果复制的消息涉及与交通工具系统的功能有关的信息,则第二节点和/或通信总线的其他节点可能不正确地接受复制的消息作为有效消息,并且无意中破坏了交通工具功能。
如图2A进一步所示,并且通过附图标记210所示,第一节点可以基于复制的消息和对应的复制的帧来识别攻击事件。例如,第一节点可以观察到由恶意行为者经由通信总线重放的复制的帧,观察到复制的帧的标识符字段,并且识别出标识符字段错误地将第一节点识别为复制的帧的发送器。第一节点由此可以确定复制的帧是延迟攻击、重放攻击和/或模拟攻击的结果。在一些示例中,如果复制的消息与时钟同步消息有关,则第一节点可以基于可能包括在相关联的帧的有效载荷字段中的发送时间和/或时间戳中的不一致性来识别攻击事件。在一些示例中,恶意行为者可以发起欺骗攻击(例如,伪造消息并且将伪造的消息作为由第一节点发送的消息而发送)。在这样的情况下,第一节点可以类似地经由相关联的帧的标识符字段识别欺骗攻击。在一些示例中,恶意行为者可以发起攻击,攻击是延迟攻击、重放攻击、模拟攻击和/或欺骗攻击的组合。另外地或可替选地,第二节点和/或通信总线的另一节点可以识别由恶意行为者发送的帧的标识符字段中的不一致性,并且基于不一致性来识别攻击事件。
如图2B所示,并且通过附图标记212所示,第一节点可以根据共享秘密来发送一系列警报消息,以向其他节点通知所识别的攻击事件。例如,第一节点可以评估和/或参考在第一节点、第二节点和/或通信总线的其他节点之间共享的共享秘密(例如,密钥、代码、表、索引、映射和/或其他参考)(例如,在经由通信总线开始进行通信之前,在经由密钥交换协议进行的通信建立过程期间,等等)。第一节点可以基于共享秘密确定用于发送警报消息的帧间发送时间的唯一序列(例如,T1、T2、T3、…和Tn)。帧间发送时间的序列可以指定警报消息的发送时间、警报消息之间的间隔时间和/或用于发送警报消息的其他模式。帧间发送时间的序列可以对应于可由第二节点和/或能够访问共享密钥的通信总线的其他节点识别的帧间到达时间的序列。帧间发送时间的序列可以允许向第二节点和/或接收一系列警报消息的其他节点通知攻击事件。由于帧间发送时间的序列是基于共享秘密确定的,因此恶意行为者可能无法检测到帧间发送时间的序列。
在一些实现方式中,共享秘密可以在通信总线的节点之间被普遍共享,并且可以被通信总线的节点访问。在一些示例中,共享秘密对于通信总线的不同节点或节点组可以是不同的。如果共享秘密对于不同节点是不同的,则第一节点可以识别被通知攻击事件的节点,评估与那些节点相关联的共享秘密,并基于共享秘密确定要使用的帧间发送时间的适当序列。在一些示例中,共享秘密可以是固定的(例如,在制造时设置),周期性地重置和/或间歇性地重置(例如,在交通工具系统中的每个驾驶周期)。另外地或可替选地,第一节点可以基于共享秘密和新鲜度值来确定帧间发送时间的序列。新鲜度值可以指定持续时间阈值、计数阈值和/或确定帧间发送时间序列的有效性的其他阈值。在一些示例中,可以基于新鲜度值的到期来重置和/或刷新共享秘密和/或帧间发送时间的序列。新鲜度值由此可以限制恶意行为者学习帧间发送时间序列、识别未来警报消息、破坏未来警报消息、复制警报消息和/或以其他方式恶意地响应警报消息的能力。
在一些实现方式中,第一节点可以不考虑内容而发送一系列警报消息。例如,由于可以基于帧间发送时间的序列来传达攻击事件的通知,因此第一节点可以生成不具有包含在标识符字段、有效载荷字段等中的特定信息的警报消息的帧。然而,在一些情况下,可能会根据帧间发送时间的序列无意地发送消息(例如,不是警报消息的消息)。为了防止错误通知攻击事件,第一节点可以生成一系列警报帧,以包括用信号传送攻击事件的信息。例如,第一节点可以生成警报消息的帧,以在该帧的标识符字段中包括专用警报标识符(例如,ID1、ID2、ID3、…和IDn)作为攻击事件的附加指示。在一些示例中,专用警报标识符可以包括被配置成指示攻击事件同时防止恶意节点篡改警报消息的显性位的串(例如,逻辑“0”位的串)。另外地或可替选地,第一节点可以在警报消息的相应的帧的标识符字段、有效载荷字段和/或其他字段中包括另一类型的专用警报标识符。
如图2B进一步所示,并且通过附图标记214所示,可以基于由第一节点发送的一系列警报消息向第二节点通知攻击事件。例如,第二节点可以基于在第一节点、第二节点和/或通信总线的另一节点之间共享的共享秘密来确定帧间到达时间的参考序列。第二节点可以监控经由通信总线接收的消息的帧间到达时间的序列(例如,T1、T2、T3、…和Tn),并且如果帧间到达时间的序列对应于帧间到达时间的参考序列,则识别攻击事件的通知。在一些示例中,例如当共享秘密对于不同节点是不同的时,第二节点可以基于警报消息的帧中包括的标识符字段来识别第一节点,并且基于标识符字段来评估与第一节点相关联的共享秘密。第二节点可以基于共享秘密来确定要使用的帧间到达时间的适当参考序列。在一些示例中,如上所述,警报消息的帧可以包括专用警报标识符(例如,ID1、ID2、ID3、…和IDn)。在这样的情况下,如果帧间到达时间的序列对应于帧间到达时间的参考序列,并且如果警报消息的帧包括专用警报标识符,则第二节点可以识别攻击事件的通知。
如图2C所示,并且通过附图标记216所示,第一节点或第二节点可以使得执行与攻击事件有关的动作。在一些示例中,第二节点可以生成攻击事件的记录和/或通知。例如,记录和/或通知可以包括与以下相关的信息:第一节点和/或发送警报消息的另一节点的标识、第二节点的标识、通信总线的标识(例如,在具有多个通信总线的系统中)、攻击事件的估计时间、警报消息的相应的到达时间、由第一节点检测到的复制的消息的发送时间等。在一些示例中,第二节点可以将记录和/或通知发送至第一节点、通信总线的其他节点和/或另一通信总线上的其他节点。第二节点可以以安全格式(例如,使用根据共享秘密的帧间发送时间的序列)发送记录和/或通知。在一些示例中,第二节点可以重复从第一节点接收的警报消息达阈值持续时间、阈值计数和/或另一阈值。
在一些实现方式中,第二节点可以使通信总线、第一节点、第二节点和/或通信总线的另一节点响应于攻击事件而被暂时禁用和/或限制功能。例如,在交通工具系统中,第二节点可以使交通工具在跛行模式、安全模式和/或被配置成减少和/或规避来自恶意行为者的进一步攻击的另一操作模式下操作。在一些示例中,第二节点可以使通信总线被禁用,并且使不同的通信总线被启用。例如,第二节点可以使被恶意节点损坏的经由通信总线交换的新消息被转发至另一可用通信总线。在一些示例中,第二节点可以致使通信总线的增强的安全性。例如,第二节点可以使消息认证、加密和/或另一补充安全措施被启用。在一些示例中,第二节点可以使共享秘密被锁定、限制、重置和/或修改。另外地或可替选地,第一节点可以使一个或更多个被描述为由第二节点引起的动作在检测到复制的消息时、在发送警报消息时和/或在从第二节点接收到攻击事件的通知时被执行。
如上所示,仅提供图2A至图2C作为示例。其他示例是可能的,并且可以与关于图2A至图2C描述的示例不同。
图3A至图3C是本文描述的警报系统的示例实现方式300的图。参照图3A至图3C,示例实现方式300可以包括经由通信总线(例如,CAN总线)互连的第一节点(例如,节点1)和第二节点(例如,节点2)。图3A至图3C呈现了可以由第一节点和/或第二节点执行的一个或更多个功能,以识别由连接至通信总线的恶意行为者(例如,节点X)发起的攻击事件,并致使减少、规避和/或以其他方式解决攻击事件。在一些示例中,第一节点和/或第二节点可以包括传感器、致动器、控制器和/或相关联的系统的其他设备。例如,第一节点和/或第二节点可以执行与交通工具系统的节气门功能、转向功能、制动功能、档位选择功能和/或其他功能相关联的操作。在一些示例中,第一节点和/或第二节点可以执行与工业系统、医疗系统、机器人系统和/或其他基于CAN的系统相关联的操作。一个或更多个被描述为由第一节点执行的功能可以由第二节点和/或通信总线的另一节点来执行,并且一个或更多个被描述为由第二节点执行的功能可以由第一节点和/或通信总线的另一节点来执行。
如图3A中所示,并且通过附图标记302所示,第一节点可以经由通信总线发送旨在用于第二节点的第一消息(例如,与第一消息相对应的位的第一帧)。在一些示例中,第一消息可以用于执行与第二节点的双向时钟同步。第一节点可以发送具有标识符字段和有效载荷字段的第一帧,该标识符字段具有识别第一节点的信息,该有效载荷字段具有识别第一帧的发送时间和/或时间戳的信息。例如,有效载荷字段可以包括如下信息:所述信息可以由第二节点用于确定第一节点与第二节点之间的传输延迟(例如,延迟1→2),并且基于该传输延迟来同步第二节点的内部时钟。在一些示例中,第一消息可以对应于其他类型的信息(例如,与节气门功能、转向功能、制动功能、档位选择功能和/或交通工具系统的其他功能有关的信息)的请求。在这样的情况下,第一帧可以包括标识符字段和有效载荷字段,标识符字段具有识别第一节点的信息,有效载荷字段具有识别请求的信息(例如,对经由传感器提供的信息、用于控制致动器的信息、操作参数、操作条件等的请求)。
如图3A所示,并且通过附图标记304所示,第二节点可以经由通信总线发送旨在用于第一节点的第二消息。在一些示例中,第二消息可以旨在完成与第一节点的双向时钟同步。第二节点可以发送具有标识符字段和有效载荷字段的第二帧,标识符字段具有识别第二节点的信息,有效载荷字段具有识别第二帧的发送时间和/或时间戳的信息。例如,有效载荷字段可以包括由第一节点发送的第一消息的到达时间、传输延迟(例如,延迟1→2)、由第二节点发送的第二消息的发送时间和/或可以有第一节点用于确定第二消息的发送延迟的其他信息。在一些示例中,第二消息可以对应于对包含在第一消息中的请求的响应的另一类型的响应(例如,与交通工具系统的功能相关的信息)。在这样的情况下,第二帧可以包括标识符字段和有效载荷字段,标识符字段具有识别第二节点的信息,有效载荷字段具有识别第一节点所请求的内容或信息的信息(例如,经由传感器提供的信息、用于控制致动器的信息、操作参数、操作条件等)。
如图3A进一步所示,并通过附图标记306所示,恶意行为者可能破坏由第二节点发送并旨在用于第一节点的第二消息。例如,恶意行为者可以获得对通信总线的现有节点的控制,或者向通信总线引入未授权节点以获得对通信总线内交换的消息的访问。一旦连接至通信总线,恶意行为者就可以尝试覆盖或以其他方式破坏与第一节点和/或第二节点相关联的操作。例如,在第二帧的传输期间(例如,在通信总线的节点不按照通信协议传输位时),恶意行为者可能将显性位(例如,逻辑“0”)引入通信总线(例如,通过将高总线端子驱动到5VDC并将低总线端子驱动到0VDC)。通过在第二帧的传输期间引入显性位,恶意行为者可能会修改第二帧的位并破坏第二消息。如果第二消息与时钟同步消息有关,则恶意行为者可能以发起延迟攻击的方式(例如,延迟时钟同步消息的传递并使第一节点与第二节点之间的时钟同步偏移)来修改第二帧的位。
如图3A进一步所示,并且通过附图标记308所示,第一节点可能由于错误而丢弃第二消息。在一些示例中,第一节点可能由于包含在第二帧中的CRC字段(例如,CRC值,诸如由第二节点计算的校验和值)指示的错误而丢弃消息。例如,第一节点可以计算第二帧的CRC值(例如,校验和值),并且将CRC值与包括在CRC字段中的CRC值进行比较以验证第二消息的完整性。由于被恶意行为者修改的位,因此第一节点计算出的CRC值可能与由第二节点提供的CRC字段中包括的CRC值不同。如果该CRC值与CRC字段中包括的CRC值不对应,则第一节点可以确定消息已被破坏并丢弃第二消息。如果第二消息与时钟同步消息有关,则第一节点可以丢弃本来有效的同步信息(例如,与由第二节点发送的第二消息的发送时间和/或时间戳有关的信息)。在一些示例中,第二消息可能涉及与交通工具系统的功能有关的其他类型的信息。在这样的情况下,第一节点和/或通信总线的其他节点可能丢弃操作交通工具的时间敏感和/或关键功能所需的信息。
如图3A进一步所示,并通过附图标记310所示,恶意行为者可以复制由第二节点发送的第二消息。例如,在破坏第二消息并使第一节点丢弃第二消息之后,恶意行为者可以发起重放攻击(例如,复制未修改的第二帧,并在一段时间之后经由通信总线发送复制的帧)。另外地或可替选地,恶意行为者可以发起模拟攻击(例如,复制未修改的第二帧的标识符字段,并且经由通信总线发送复制的帧,复制的帧错误地将第二节点识别为发送器)。由于复制的帧不包含被恶意行为者修改的位,因此第一节点可能会接收复制的帧并将其不正确地接受为有效帧。如果复制的消息涉及时钟同步消息,则第一节点可以基于不准确的传输延迟(例如延迟攻击和延迟X→1)而不是第二节点与第一节点之间的实际传输延迟(例如延迟2→1)来使内部时钟同步。如果复制的消息涉及与交通工具系统的功能有关的信息,则第一节点和/或通信总线的其他节点可能不正确地接受复制的消息作为有效消息,并且无意中破坏了交通工具功能。
如图3A进一步所示,并且通过附图标记312所示,第二节点可以基于复制的消息和相对应的复制的帧来识别攻击事件。例如,第二节点可以观察到恶意行为者经由通信总线重放的复制的帧,观察到复制的帧的标识符字段,并且识别出标识符字段错误地将第二节点识别为复制的帧的发送器。第二节点由此可以确定复制的帧是延迟攻击、重放攻击和/或模拟攻击的结果。在一些示例中,如果复制的消息与时钟同步消息有关,则第二节点可以基于可能包括在复制的帧的有效载荷字段中的发送时间和/或时间戳中的不一致性来识别攻击事件。在一些示例中,恶意行为者可以发起欺骗攻击(例如,伪造消息并且将伪造的消息作为由第二节点发送的消息而发送)。在这样的情况下,第二节点可以类似地经由相关联的帧的标识符字段识别欺骗攻击。在一些示例中,恶意行为者可以发起攻击,攻击是延迟攻击、重放攻击、模拟攻击和/或欺骗攻击的组合。另外地或可替选地,第一节点和/或通信总线的另一节点可以识别由恶意行为者发送的帧的标识符字段中的不一致性,并且基于不一致性来识别攻击事件。
如图3B所示,并且通过附图标记314所示,第二节点可以根据共享秘密来发送一系列警报消息,以向其他节点通知所识别的攻击事件。例如,第二节点可以评估和/或参考在第一节点、第二节点和/或通信总线的另一节点之间共享的共享秘密(例如,密钥、代码、表、索引、映射和/或另一参考)。基于共享秘密,第二节点可以确定用于发送警报消息的帧间发送时间的唯一序列(例如,T1、T2、T3、…和Tn)。帧间发送时间的序列可以指定警报消息的发送时间、警报消息之间的间隔时间和/或用于发送警报消息的其他模式。帧间发送时间的序列可以对应于可由第一节点和/或能够访问共享密钥的通信总线的其他节点识别的帧间到达时间的序列。帧间发送时间的序列可以允许向第一节点和/或接收一系列警报消息的其他节点通知攻击事件。由于帧间发送时间的序列是基于共享秘密确定的,因此恶意行为者可能无法检测到帧间发送时间的序列。
在一些实现方式中,共享秘密可以在通信总线的节点之间被普遍共享,并且可以被通信总线的节点访问。在一些示例中,共享秘密对于通信总线的不同节点或节点组可以是不同的。如果共享秘密对于不同节点是不同的,则第二节点可以识别要被通知攻击事件的节点,评估与那些节点相关联的共享秘密,并基于共享秘密确定要使用的帧间发送时间的适当序列。在一些示例中,共享秘密可以是固定的(例如,在制造时设置),周期性地重置和/或间歇性地重置(例如,在交通工具系统中的每个驾驶周期)。另外地或可替选地,第二节点可以基于共享秘密和新鲜度值来确定帧间发送时间的序列。新鲜度值可以指定持续时间阈值、计数阈值和/或确定帧间发送时间序列的有效性的其他阈值。在一些示例中,可以基于新鲜度值的到期来重置和/或刷新共享秘密和/或帧间发送时间的序列。新鲜度值由此可以限制恶意行为者学习帧间发送时间序列、识别未来警报消息、破坏未来警报消息、复制警报消息和/或以其他方式恶意地响应警报消息的能力。
在一些实现方式中,第二节点可以不考虑内容而发送一系列警报消息。例如,由于可以基于帧间发送时间的序列来传达攻击事件的通知,因此第二节点可以生成不具有包含在标识符字段、有效载荷字段等中的特定信息的警报消息的帧。然而,在一些情况下,可能会根据帧间发送时间的序列无意地发送消息(例如,不是警报消息的消息)。为了防止错误通知攻击事件,第二节点可以生成一系列警报帧,以包括用信号传送攻击事件的信息。例如,第二节点可以生成警报消息的帧,以在该帧的标识符字段中包括专用警报标识符(例如,ID1、ID2、ID3、…和IDn)作为攻击事件的附加指示。在一些示例中,专用警报标识符可以包括被配置成指示攻击事件同时防止恶意节点篡改警报消息的显性位的串(例如,逻辑“0”位的串)。另外地或可替选地,第二节点可以在警报消息的相应的帧的标识符字段、有效载荷字段和/或其他字段中包括另一类型的专用警报标识符。
如图3B进一步所示,并且通过附图标记316所示,可以基于由第二节点发送的一系列警报消息向第一节点通知攻击事件。例如,第一节点可以基于在第一节点、第二节点和/或通信总线的另一节点之间共享的共享秘密来确定帧间到达时间的参考序列。第一节点可以监控经由通信总线接收的消息的帧间到达时间的序列(例如,T1、T2、T3、…和Tn),并且如果帧间到达时间的序列对应于帧间到达时间的参考序列,则识别攻击事件的通知。在一些示例中,例如当共享秘密对于不同节点是不同的时,第一节点可以基于警报消息的帧中包括的标识符字段来识别第二节点,并且基于标识符字段来评估与第二节点相关联的共享秘密。第一节点可以基于共享秘密来确定要使用的帧间到达时间的适当参考序列。在一些示例中,如上所述,警报消息的帧可以包括专用警报标识符(例如,ID1、ID2、ID3、…和IDn)。在这样的情况下,如果帧间到达时间的序列对应于帧间到达时间的参考序列,并且如果警报消息的帧包括专用警报标识符,则第一节点可以识别攻击事件的通知。
如图3C所示,并且通过附图标记318所示,第一节点或第二节点可以使得结合攻击事件执行动作。在一些示例中,第一节点可以生成攻击事件的记录和/或通知。例如,记录和/或通知可以包括与以下相关的信息:第二节点和/或发送警报消息的另一节点的标识、第一节点的标识、通信总线的标识(例如,在具有多个通信总线的系统中)、攻击事件的估计时间、警报消息的相应的到达时间、由第二节点检测到的复制的消息的发送时间等。在一些示例中,第一节点可以将记录和/或通知发送至第二节点、通信总线的其他节点和/或另一通信总线上的其他节点。第一节点可以以安全格式(例如,使用根据共享秘密的帧间发送时间的序列)发送记录和/或通知。在一些示例中,第一节点可以重复从第二节点接收的警报消息达阈值持续时间、阈值计数和/或另一阈值。
在一些实现方式中,第一节点可以使通信总线、第一节点、第二节点和/或通信总线的另一节点响应于攻击事件而被暂时禁用和/或限制功能。例如,在交通工具系统中,第一节点可以使交通工具在跛行模式、安全模式和/或被配置成减少和/或规避来自恶意行为者的进一步攻击的另一操作模式下操作。在一些示例中,第一节点可以使通信总线被禁用,并且使不同的通信总线被启用。例如,第一节点可以使被恶意节点损坏的经由通信总线交换的新消息被转发至另一可用通信总线。在一些示例中,第一节点可以致使通信总线的增强的安全性。例如,第一节点可以使消息认证、加密和/或另一补充安全措施被启用。在一些示例中,第一节点可以使共享秘密被锁定、限制、重置和/或修改。另外地或可替选地,第二节点可以使一个或更多个被描述为由第一节点引起的动作在检测到复制的消息时、在发送警报消息时和/或在从第一节点接收到攻击事件的通知时被执行。
如上所示,仅提供图3A至图3C作为示例。其他示例是可能的,并且可以与关于图3A至图3C描述的示例不同。
图4是其中可以实现本文中描述的系统和/或方法的示例环境400的图。如图4所示,环境400可以包含节点402,该节点402包括处理器404和连接至通信总线408(例如CAN总线)的收发器406(例如,Tx/Rx)。
节点402包括一个或更多个设备,所述一个或更多个设备与基于例如以下数据来控制一个或更多个电气系统和/或电子系统相关联:经由节点402的传感器接口部件(未示出)连接至节点402的传感器所提供的传感器数据、用于控制经由节点的致动器接口部件(未示出)连接至节点402的致动器的控制数据等。在交通工具系统中,例如,节点402可以包括ECU、ECM、PCM、TCM、BCM、CCM、CTM、GEM、BCM、SCM或另一类型的交通工具的电气系统或电子系统。
处理器404包括用作提供与节点402相关联的控制功能的嵌入式系统的设备(例如,一个或更多个集成电路)。例如,处理器404包括一个或更多个中央处理单元(CPU)、存储器和/或可编程输入/输出(I/O)外围设备,这些外围设备使得处理器404能够用作嵌入式系统。在一些示例中,处理器404可以向收发器406发送信息和/或从收发器406接收信息。
收发器406包括节点402可以经由其发送和接收信息的部件。例如,收发器406可以包括差分线收发器或类似类型的部件。在一些示例中,收发器406包括使得节点402能够经由通信总线408发送信息(例如,至另一节点)的发送(Tx)部件,和/或使得节点402能够经由通信总线408(从类似于节点402的另一节点)接收信息的接收(Rx)部件。在一些示例中,收发器406可以包括用于在给定时间启用Tx部件(以发送信息)或Rx部件(以接收信息)的线路驱动器。在一些示例中,收发器406可以是LIN收发器、CAN收发器、FlexRay收发器、以太网收发器或与另一类型的通信总线系统相关联的另一类型的收发器。在一些示例中,节点402可以包括不同类型的多个收发器406。
通信总线408包括用于从节点402传送信息或向节点402传送信息的总线。在一些示例中,通信总线408可以包括多个节点402经由其彼此连接的连接件(例如,包括一个或更多个端子、线和/或连接器)。在一些示例中,通信总线408可以包括一组连接件,每个连接件与一个或更多个节点402相关联。在一些示例中,通信总线408可以是CAN总线、CAN FD总线、CAN XL总线、CANopen总线、LIN总线、FlexRay总线、以太网总线和/或另一类型的总线。在一些示例中,节点402的每个收发器406可以连接至相关联的通信总线408。
提供了图4所示的装置的数量和布置作为示例。实际上,与图4所示的设备和/或部件相比,可以存在附加的设备和/或部件、更少的设备和/或部件、不同的设备和/或部件、或不同布置的设备和/或部件。例如,在一些实现方式中,环境400可以包括多个节点402,每个节点经由一个或更多个相关联的通信总线408连接。此外,图4所示的两个或更多个设备/部件可以在单个设备/部件内实现,或者图4所示的单个设备/部件可以实现为多个分布式设备和/或部件。另外地或可替选地,图4的一组设备/部件(例如,一个或更多个设备/部件)可以执行被描述为由图4的另一组设备/部件执行的一个或更多个功能。
图5是用于发送在通信总线内与攻击事件相关的警报消息的示例处理500的流程图。在一些实现方式中,图5的一个或更多个处理块可以由通信总线(例如,CAN总线)的节点(例如,节点402、发送器设备等)执行。在一些实现方式中,图5的一个或更多个处理块可以由通信总线的单个节点、一组节点或节点的子集来执行。
如图5所示,处理500可以包括经由通信总线向一个或更多个接收器设备发送帧,其中,帧包括标识符字段和有效载荷字段(块502)。例如,如上所述,节点(例如,使用处理器404、收发器406等)可以经由通信总线向一个或更多个接收器设备发送帧。在一些实现方式中,帧可以包括标识符字段和有效载荷字段。
如图5进一步所示,处理500可以包括检测通信总线上的复制的帧,其中,复制的帧包括帧的标识符字段或有效载荷字段中的一个或更多个(块504)。例如,如上所述,节点(例如,使用处理器404、收发器406等)可以检测通信总线上的复制的帧。在一些实现方式中,复制的帧可以包括帧的标识符字段或有效载荷字段中的一个或更多个。
如图5进一步所示,处理500可以包括基于检测到复制的帧来识别攻击事件(块506)。例如,如上所述,节点(例如,使用处理器404,收发器406等)可以基于检测到复制的帧来识别攻击事件。
如图5进一步所示,处理500可以包括基于识别到攻击事件来确定帧间发送时间的序列,其中,基于与一个或更多个接收器设备相关联的共享秘密来确定帧间发送时间的序列(块508)。例如,如上所述,节点(例如,使用处理器404,收发器406等)可以基于识别到攻击事件来确定帧间发送时间的序列。在一些实现方式中,可以基于与一个或更多个接收器设备相关联的共享秘密来确定帧间发送时间的序列。
如图5进一步所示,处理500可以包括根据帧间发送时间的序列发送一系列警报帧,以允许基于根据帧间发送时间的序列发送的一系列警报帧向一个或更多个接收器设备通知攻击事件(块510)。例如,如上所述,节点(例如,使用处理器404、收发器406等)可以根据帧间发送时间的序列来发送一系列警报帧,以允许基于根据帧间发送时间的序列发送的一系列警报帧向一个或更多个接收器设备通知攻击事件。
处理500可以包括附加的实现方式,例如以下描述的和/或结合本文其他地方描述的一个或更多个其他处理的任何单个实现方式或实现方式的任何组合。
在第一实现方式中,检测复制的帧可以包括:确定由另一节点发送的通信总线上的后续帧的标识符字段;以及基于确定后续帧的标识符字段对应于该节点将后续帧识别为复制的帧。
在第二实现方式中,单独地或与第一实现方式组合,确定帧间发送时间的序列可以包括基于共享秘密和新鲜度值来确定帧间发送时间的序列。
在第三实现方式中,单独地或与第一实现方式和第二实现方式中的一个或更多个实现方式组合,处理500还可以包括生成警报帧以包括相应的标识符字段。在一些实现方式中,相应的标识符字段可以包括专用警报标识符。在一些实现方式中,专用警报标识符可以包括被配置成指示攻击事件的显性位的串。在一些实现方式中,发送一系列警报帧可以包括根据帧间发送时间的序列并且利用专用警报标识符来发送一系列警报帧。
在第四实现方式中,单独地或与第一实现方式至第三实现方式中的一个或更多个实现方式组合,处理500还可以包括生成攻击事件的记录或通知,该记录或通知包括与以下相关的信息:节点的标识、一个或更多个接收器设备的标识、通信总线的标识、复制的帧的发送时间或攻击事件的估计时间。
尽管图5示出了处理500的示例块,但是在一些实现方式中,处理500可以包括与图5所描绘的那些块相比附加的块、更少的块、不同的块或不同布置的块。另外地或可替选地,可以并行执行处理500的两个或更多个块。
图6是用于接收在通信总线内的攻击事件的通知的示例处理600的流程图。在一些实现方式中,图6的一个或更多个处理块可以由通信总线(例如,CAN总线)的节点(例如,节点402、接收器设备等)执行。在一些实现方式中,图6的一个或更多个处理块可以由通信总线的单个节点、一组节点或节点的子集来执行。
如图6所示,处理600可以包括经由通信总线从发送器设备接收一系列警报帧,其中,在相应的到达时间接收警报帧(块602)。例如,如上所述,节点(例如,使用处理器404、收发器406等)可以经由通信总线从发送器设备接收一系列警报帧。在一些实现方式中,可以在相应的到达时间接收警报帧。
如图6进一步所示,处理600可以包括基于相应的到达时间来确定与一系列警报帧相关联的帧间到达时间(块604)。例如,如上所述,节点(例如,使用处理器404、收发器406等)可以基于相应的到达时间来确定与一系列警报帧相关联的帧间到达时间。
如图6进一步所示,处理600可以包括评估与发送器设备相关联的共享秘密,其中,共享秘密包括与帧间到达时间的参考序列相关的信息,并且其中,帧间到达时间的参考序列对应于由发送器设备检测到的攻击事件(块606)。例如,如上所述,节点(例如,使用处理器404、收发器406等)可以评估与发送器设备相关联的共享秘密。在一些实现方式中,共享秘密可以包括与帧间到达时间的参考序列相关的信息。在一些实现方式中,帧间到达时间的参考序列可以对应于由发送器设备检测到的攻击事件。
如图6进一步所示,处理600可以包括基于确定帧间到达时间对应于帧间到达时间的参考序列来识别攻击事件的通知(块608)。例如,如上所述,节点(例如,使用处理器404、收发器406等)可以基于确定帧间到达时间对应于帧间到达时间的参考序列来识别攻击事件的通知。
如图6进一步所示,处理600可以包括使得结合攻击事件执行动作(块610)。例如,如上所述,节点(例如,使用处理器404、收发器406等)可以使得结合攻击事件执行动作。
处理600可以包括附加的实现方式,例如以下描述的和/或结合本文其他地方描述的一个或更多个其他处理的任何单个实现方式或实现方式的任何组合。
在第一实现方式中,确定帧间到达时间可以包括确定警报帧的相应到达时间之间的间隔,以及基于该间隔来确定帧间到达时间。
在第二实现方式中,单独地或与第一实现方式中的一个或更多个实现方式组合,评估共享秘密可以包括基于一个或更多个警报帧中包括的标识符字段来识别发送器设备,并基于标识符字段来评估与发送器设备相关联的共享秘密。
在第三实现方式中,单独地或与第一实现方式和第二实现方式中的一个或更多个实现方式组合,帧间到达时间的参考序列可以与新鲜度值相关联。在一些实现方式中,可以基于确定新鲜度值满足新鲜度限制来重置帧间到达时间的参考序列。
在第四实现方式中,单独地或与第一实现方式至第三实现方式中的一个或更多个实现方式组合,使得要执行的动作可以包括生成攻击事件的记录或通知,该记录或通知包括与以下相关的信息:发送器设备的标识、节点的标识、通信总线的标识、一系列警报帧的相应到达时间中的一个或更多个、或由发送器设备检测到的攻击事件的估计时间。
在第五实现方式中,单独地或与第一实现方式至第四实现方式中的一个或更多个实现方式组合,使得要执行的动作可以包括使节点、发送器设备或通信总线中的一个或更多个被禁用。
在第六实现方式中,单独地或与第一实现方式至第五实现方式中的一个或更多个实现方式组合,使得要执行的动作可以包括使该通信总线被禁用,并且使不同的通信总线被启用。
在第七实现方式中,单独地或与第一实现方式至第六实现方式中的一个或更多个实现方式组合,处理600还可以包括确定一个或更多个警报帧的标识符字段,将包括在标识符字段中的信息与专用警报标识符进行比较,以及还基于确定标识符字段对应于专用警报标识符来识别攻击事件的通知。在一些实现方式中,专用警报标识符可以包括被配置成指示由发送器设备检测到的攻击事件的显性位的串。
尽管图6示出了处理600的示例块,但是在一些实现方式中,处理600可以包括与图6所描绘的那些块相比附加的块、更少的块、不同的块或不同布置的块。另外地或可替选地,可以并行执行处理600的两个或更多个块。
前述公开内容提供了说明和描述,但并非旨在是穷举的或将实现方式限制于所公开的精确形式。鉴于以上公开内容,可以进行修改和变型,或者可以从实现方式的实践中获得修改和变型。
如本文所使用的,术语部件旨在被广义地解释为硬件、固件或硬件和软件的组合。
将明显的是,本文所描述的系统和/或方法可以以不同形式的硬件、固件、或硬件和软件的组合来实现。用于实现这些系统和/或方法的实际的专用控制硬件或软件代码并不限制这些实现方式。因此,本文中不参考特定软件代码而描述系统和/或方法的操作和行为,应当理解,软件和硬件可以被设计为实现基于本文的描述的系统和/或方法。
尽管在权利要求中记载了和/或在说明书中公开了特征的特定组合,但是这些组合并不旨在限制可能实现方式的公开内容。实际上,这些特征中的许多特征可以以未在权利要求中具体记载和/或未在说明书中公开的方式组合。尽管以下列出的每个从属权利要求可以直接引用仅一个权利要求,但是可能的实现方式的公开内容包括与权利要求书中的每个其他权利要求组合的每个从属权利要求。
除非明确说明,否则在本文中使用的元件、动作或指令都不应被解释为是关键的或必要的元件、动作或指令。此外,如本文所使用的,冠词“一个”旨在包括一个或更多个项,并且可以与“一个或更多个”互换使用。此外,如本文所使用的,术语“组”旨在包括一个或更多个项(例如,相关项、不相关项、相关项和不相关项的组合等),并且可以与“一个或更多个”互换使用。在仅有一个项的情况下,使用术语“一个”或类似表达。此外,如本文所使用的,术语“具有”、“包括”、“含有”等旨在是开放式术语。此外,除非另有明确说明,否则词语“基于”旨在意味着“至少部分地基于”。
Claims (20)
1.一种用于警报的方法,包括:
经由控制器局域网CAN总线、通过发送器设备向一个或更多个接收器设备发送帧,其中,所述帧包括标识符字段和有效载荷字段;
在发送所述帧之后,通过所述发送器设备检测所述CAN总线上的复制的帧,所述复制的帧包括所述帧的所述标识符字段或所述有效载荷字段中的一个或更多个;
通过所述发送器设备基于所述复制的帧识别攻击事件;以及
基于识别出所述攻击事件通过所述发送器设备发送一系列警报帧,所述一系列警报帧是根据基于与所述发送器设备相关联的共享秘密所确定的帧间发送时间的序列而被发送的,
其中,所述一系列警报帧的发送允许基于所述帧间发送时间的序列而向所述一个或更多个接收器设备通知所述攻击事件。
2.根据权利要求1所述的方法,其中,检测所述复制的帧包括:
确定由其他发送器设备在所述CAN总线上发送的后续帧的标识符字段中的信息;以及
基于确定所述后续帧的标识符字段中的信息对应于所述发送器设备,将所述后续帧标识为所述复制的帧。
3.根据权利要求1所述的方法,还包括:
生成所述一系列警报帧以包括相应的标识符字段,
其中,所述相应的标识符字段包括专用警报标识符,以及
其中,所述专用警报标识符包括被配置成指示所述攻击事件的显性位串。
4.根据权利要求1所述的方法,还包括:
基于识别出所述攻击事件,使得对所述共享秘密的访问被限制,以免进一步访问。
5.根据权利要求1所述的方法,还包括:
基于识别出所述攻击事件,使所述共享秘密被重置。
6.根据权利要求1所述的方法,其中,还包括:
基于识别出所述攻击事件,使所述一个或更多个接收器设备、所述发送器设备或所述CAN总线中的一个或更多个被禁用。
7.根据权利要求1所述的方法,还包括:
基于识别出所述攻击事件,使所述CAN总线被禁用;并且
使另外的CAN总线被启用。
8.一种发送器设备,包括:
发送器;以及
一个或更多个处理器,所述一个或更多个处理器被配置成:
使用所述发送器经由通信总线向一个或更多个接收器设备发送帧,其中,所述帧包括标识符字段和有效载荷字段,
检测所述通信总线上的复制的帧,其中,所述复制的帧包括所述帧的所述标识符字段或所述有效载荷字段中的一个或更多个,
根据检测到所述复制的帧来识别攻击事件,
基于识别出所述攻击事件来确定帧间发送时间的序列,其中,基于与所述一个或更多个接收器设备相关联的共享秘密来确定所述帧间发送时间的序列,以及
使用所述发送器根据所述帧间发送时间的序列来发送一系列警报帧,以允许基于根据所述帧间发送时间的序列所发送的一系列警报帧来向所述一个或更多个接收器设备通知所述攻击事件。
9.根据权利要求8所述的发送器设备,其中,所述一个或更多个处理器被配置成在检测到所述复制的帧时:
确定由其他发送器设备在所述通信总线上发送的后续帧的标识符字段,以及
基于确定所述后续帧的标识符字段对应于所述发送器设备,将所述后续帧标识为所述复制的帧。
10.根据权利要求8所述的发送器设备,其中,所述一个或更多个处理器被配置成在确定所述帧间发送时间的序列时:
基于所述共享秘密和新鲜度值而确定所述帧间发送时间的序列。
11.根据权利要求8所述的发送器设备,其中,所述一个或更多个处理器还被配置成生成包括相应的标识符字段的警报帧,
其中,所述相应的标识符字段包括专用警报标识符,以及
其中,所述专用警报标识符包括被配置成指示所述攻击事件的显性位串;以及
其中,所述一个或更多个处理器被配置成在发送所述一系列警报帧时,根据所述帧间发送时间的序列并利用所述专用警报标识符来发送所述一系列警报帧。
12.根据权利要求8所述的发送器设备,其中,所述一个或更多个处理器还被配置成:
生成所述攻击事件的记录或通知,所述记录或通知包括与以下相关的信息:所述发送器设备的标识、所述一个或更多个接收器设备的标识、所述通信总线的标识、所述复制的帧的发送时间、或所述攻击事件的估计时间。
13.一种接收器设备,包括:
接收器;以及
一个或更多个处理器,所述一个或更多个处理器被配置成:
使用所述接收器经由通信总线从发送器设备接收一系列警报帧,其中,所述警报帧在相应的到达时间被接收;
基于所述相应的到达时间,确定与所述一系列警报帧相关联的帧间到达时间;
评估与所述发送器设备相关联的共享秘密,
其中,所述共享秘密包括与帧间到达时间的参考序列相关的信息,以及
其中,所述帧间到达时间的参考序列对应于由所述发送器设备检测到的攻击事件;
基于确定与所述一系列警报帧相关联的帧间到达时间对应于所述帧间到达时间的参考序列,识别所述攻击事件的通知;以及
使得与所述攻击事件有关的动作被执行。
14.根据权利要求13所述的接收器设备,其中,所述一个或更多个处理器被配置成在确定与所述一系列警报帧相关联的帧间到达时间时:
确定所述警报帧的相应到达时间之间的时间间隔,以及
基于所述时间间隔确定与所述一系列警报帧相关联的帧间到达时间。
15.根据权利要求13所述的接收器设备,其中,所述一个或更多个处理器被配置成在评估所述共享秘密时:
基于所述警报帧中的一个或更多个警报帧中包括的标识符字段来识别所述发送器设备,以及
基于所述标识符字段来评估与所述发送器设备相关联的共享秘密。
16.根据权利要求13所述的接收器设备,其中,所述帧间到达时间的参考序列与新鲜度值相关联,以及
其中,基于确定所述新鲜度值满足新鲜度限制,重置所述帧间到达时间的参考序列。
17.根据权利要求13所述的接收器设备,其中,所述一个或更多个处理器被配置成在使所述动作被执行时:
生成所述攻击事件的记录或通知,所述记录或通知包括与以下相关的信息:所述发送器设备的标识、所述接收器设备的标识、所述通信总线的标识、所述一系列警报帧的相应到达时间中的一个或更多个到达时间、或者由所述发送器设备检测到的所述攻击事件的估计时间。
18.根据权利要求13所述的接收器设备,其中,所述一个或更多个处理器被配置成在使所述动作被执行时:
使所述接收器设备、所述发送器设备或所述通信总线中的一个或更多个被禁用。
19.根据权利要求13所述的接收器设备,其中,所述一个或更多个处理器被配置成在使所述动作被执行时:
使所述通信总线被禁用,并且
使另外的通信总线被启用。
20.根据权利要求13所述的接收器设备,其中,所述一个或更多个处理器还被配置成:
确定所述警报帧中的一个或更多个警报帧的标识符字段;
将所述标识符字段中包括的信息与专用警报标识符进行比较,
其中,所述专用警报标识符包括被配置成指示由所述发送器设备检测到的所述攻击事件的显性位串;以及
还基于确定所述标识符字段对应于所述专用警报标识符而识别所述攻击事件的通知。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/588,528 | 2019-09-30 | ||
US16/588,528 US11165794B2 (en) | 2019-09-30 | 2019-09-30 | Alert system for controller area networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112583786A true CN112583786A (zh) | 2021-03-30 |
CN112583786B CN112583786B (zh) | 2022-12-02 |
Family
ID=74872791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011040346.6A Active CN112583786B (zh) | 2019-09-30 | 2020-09-28 | 用于警报的方法、发送器设备和接收器设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11165794B2 (zh) |
CN (1) | CN112583786B (zh) |
DE (1) | DE102020125262A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11677829B2 (en) * | 2021-02-11 | 2023-06-13 | Renesas Electronics Corporation | Data processing device and data processing system |
EP4285264A1 (en) * | 2021-04-09 | 2023-12-06 | Google LLC | Secure chip-wide communication |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100150176A1 (en) * | 2008-12-16 | 2010-06-17 | Nec Electronics Corporation | CAN node, and communication method of communication system including CAN node |
CN102075516A (zh) * | 2010-11-26 | 2011-05-25 | 哈尔滨工程大学 | 一种网络多步攻击识别和预测方法 |
WO2017127639A1 (en) * | 2016-01-20 | 2017-07-27 | The Regents Of The University Of Michigan | Exploiting safe mode of in-vehicle networks to make them unsafe |
CN107113087A (zh) * | 2014-09-02 | 2017-08-29 | 罗伯特·博世有限公司 | 将帧经由总线系统从发送器串行传输至至少一个接收器的方法和用于总线系统的参与站 |
CN107454107A (zh) * | 2017-09-15 | 2017-12-08 | 中国计量大学 | 一种检测注入式攻击的控制器局域网汽车总线报警网关 |
CN109768952A (zh) * | 2018-10-29 | 2019-05-17 | 四川大学 | 一种基于可信模型的工控网络异常行为检测方法 |
CN110149345A (zh) * | 2019-06-11 | 2019-08-20 | 北京航空航天大学 | 一种基于报文序列预测的车载网络入侵检测方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6832514B2 (en) * | 2002-01-14 | 2004-12-21 | Siemens Vdo Automotive Corporation | Tire pressure monitoring system with transition from stationary vehicle to moving vehicle conditions |
DE112012006879B4 (de) * | 2012-09-05 | 2022-01-20 | GM Global Technology Operations LLC | Neuer Ansatz zum Handhaben eines Controller-Area-Network Bus-Off |
JP6382724B2 (ja) * | 2014-01-06 | 2018-08-29 | アーガス サイバー セキュリティ リミテッド | グローバル自動車安全システム |
CN110406485B (zh) * | 2014-04-17 | 2023-01-06 | 松下电器(美国)知识产权公司 | 非法检测方法及车载网络系统 |
CN110696746B (zh) * | 2014-05-08 | 2023-03-24 | 松下电器(美国)知识产权公司 | 不正常应对方法、车载网络系统及电子控制单元 |
-
2019
- 2019-09-30 US US16/588,528 patent/US11165794B2/en active Active
-
2020
- 2020-09-28 CN CN202011040346.6A patent/CN112583786B/zh active Active
- 2020-09-28 DE DE102020125262.5A patent/DE102020125262A1/de active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100150176A1 (en) * | 2008-12-16 | 2010-06-17 | Nec Electronics Corporation | CAN node, and communication method of communication system including CAN node |
CN102075516A (zh) * | 2010-11-26 | 2011-05-25 | 哈尔滨工程大学 | 一种网络多步攻击识别和预测方法 |
CN107113087A (zh) * | 2014-09-02 | 2017-08-29 | 罗伯特·博世有限公司 | 将帧经由总线系统从发送器串行传输至至少一个接收器的方法和用于总线系统的参与站 |
WO2017127639A1 (en) * | 2016-01-20 | 2017-07-27 | The Regents Of The University Of Michigan | Exploiting safe mode of in-vehicle networks to make them unsafe |
CN107454107A (zh) * | 2017-09-15 | 2017-12-08 | 中国计量大学 | 一种检测注入式攻击的控制器局域网汽车总线报警网关 |
CN109768952A (zh) * | 2018-10-29 | 2019-05-17 | 四川大学 | 一种基于可信模型的工控网络异常行为检测方法 |
CN110149345A (zh) * | 2019-06-11 | 2019-08-20 | 北京航空航天大学 | 一种基于报文序列预测的车载网络入侵检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112583786B (zh) | 2022-12-02 |
DE102020125262A1 (de) | 2021-04-01 |
US11165794B2 (en) | 2021-11-02 |
US20210099469A1 (en) | 2021-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3148154B1 (en) | Controller area network (can) device and method for controlling can traffic | |
EP3206361A1 (en) | Controller area network (can) message filtering | |
WO2016185514A1 (ja) | 攻撃検出装置 | |
CN109104352B (zh) | 车辆网络操作协议和方法 | |
US11677779B2 (en) | Security module for a can node | |
US11888866B2 (en) | Security module for a CAN node | |
CN112347021B (zh) | 用于串行通信装置的安全模块 | |
CN112583786B (zh) | 用于警报的方法、发送器设备和接收器设备 | |
WO2019187350A1 (ja) | 不正検知方法、不正検知装置及びプログラム | |
JP2014236248A (ja) | 電子制御装置、電子制御システム | |
US11394726B2 (en) | Method and apparatus for transmitting a message sequence over a data bus and method and apparatus for detecting an attack on a message sequence thus transmitted | |
US20200036738A1 (en) | Method and device for detecting anomalies in a computer network | |
JP6573236B2 (ja) | 通信装置、および受信装置 | |
CN116266803A (zh) | 用于控制器局域网的设备 | |
CN113328918B (zh) | 发送器设备、接收器设备和通信方法 | |
US20230013980A1 (en) | Frame invalidation in bus system via receive line | |
EP4068721B1 (en) | Controller area network device | |
US20220321583A1 (en) | Frame invalidation in the bus system including intrusion detection system | |
Galletti | CANguru: a reliable intrusion detection system for CAN and CAN FD networks | |
CN116471139A (zh) | 控制器局域网模块和用于所述模块的方法 | |
CN117749555A (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 |