CN112929150A - 一种can总线入侵防御电路与方法 - Google Patents
一种can总线入侵防御电路与方法 Download PDFInfo
- Publication number
- CN112929150A CN112929150A CN201911238974.2A CN201911238974A CN112929150A CN 112929150 A CN112929150 A CN 112929150A CN 201911238974 A CN201911238974 A CN 201911238974A CN 112929150 A CN112929150 A CN 112929150A
- Authority
- CN
- China
- Prior art keywords
- bus
- level
- intrusion prevention
- resistor
- voltage regulator
- 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
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/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- 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/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/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/004—Countermeasures against attacks on cryptographic mechanisms for fault attacks
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明涉及一种CAN总线入侵防御电路与方法,其中,该电路包括微处理器MCU、NPN三极管Q1、Q2和Q3、耦合电容C1和C2、限流电阻R3、R4、R5、R6、R7、R8、R9和R10、3.5V稳压管D2、2.5V稳压管D3以及1.5V稳压管D4,微处理器MCU具有用于接收启动入侵防御功能的指令的板级通信接口O1以及用于输出PWM信号的PWM引脚,PWM信号的频率大于所接入CAN总线的波特率十倍或以上并且其高电平不低于3.3V、占空比不低于0.9。本发明根据CAN链路层协议的特点,可在检测到异常CAN总线数据的同时,即刻发动入侵防御,达到主动屏蔽非法或受劫持等攻击设备,防御总线安全的目的。
Description
技术领域
本发明涉及汽车互联网领域,具体地涉及一种CAN总线入侵防御电路与方法。
背景技术
现代汽车联网化趋势越来越强,许多车辆开始通过移动通信网络或短距离无线通信网络接入互联网。汽车的互联网化引入了信息安全问题,恶意攻击者可能通过互联网络发起攻击引起车辆异常。而要达到该目的,互联网上的攻击者最终需要将攻击行为落地到汽车内部CAN总线上。因为执行汽车控制的众多ECU(电子控制单元)是通过CAN总线网络进行实时的信息和控制指令交换的,一旦往CAN总线上注入非法数据,很可能就会引起车辆控制的异常。
目前已有许多研究来检测汽车CAN上的异常注入数据。例如,专利CN105046148B利用车辆轮速数据在时域上的相关性,检测是否被异常插入数据;专利CN109688152A通过报文周期和周期稳定性,判断总线是否遭受注入攻击;专利CN107454107A利用请求响应时间、数据周期和数据值域,判断是否有假冒数据注入总线并发出报警。这些的特点是,都只能用于被动“检测”是否存在恶意攻击或数据,最多发出安全报警引起人为注意,而无法主动进行“防御”来阻断攻击源或攻击数据。
发明内容
本发明旨在提供一种CAN总线入侵防御电路与方法,以解决上述问题。为此,本发明采用的具体技术方案如下:
根据本发明的一方面,提供了一种CAN总线入侵防御电路,其中,该电路包括微处理器MCU、NPN三极管Q1、Q2和Q3、耦合电容C1和C2、限流电阻R3、R4、R5、R6、R7、R8、R9和R10、3.5V稳压管D2、2.5V稳压管D3以及1.5V稳压管D4,其中微处理器MCU具有用于接收启动入侵防御功能的指令的板级通信接口O1以及用于输出PWM信号的PWM引脚,PWM信号的频率大于所接入CAN总线的波特率十倍或以上并且其高电平不低于3.3V、占空比不低于0.9;三极管Q1的基极串接电阻R3接PWM引脚,集电极接三极管Q2的基极和电阻R5的一端,发射极接电阻R6、R9的一端、三极管Q2的发射极和稳压管D3的负极;电阻R6的另一端接+5V,稳压管D3的正极接地;三极管Q2的集电极接电阻R7的一端;三极管Q3的基极串接电阻R8接PWM引脚,集电极接电阻R9的一端,发射极接电阻R10的一端和稳压管D4的负极;电阻R10的另一端接+5V,稳压管D4的正极接地;稳压管D2的正极接地,负极接电阻R4的一端和R5、R7的另一端,电阻R4的另一端接+5V;电容C1串接在三极管Q2的集电极和CAN高线CAN_H之间,电容C2串接在三极管Q3的集电极和CAN低线CAN_L之间。
进一步地,电容C1和C2的截止频率与PWM信号的频率基本一致。
进一步地,电阻R7和R9的阻值大于1兆欧。
进一步地,板级通信接口O1为IO口、I2C、SPI或485等常用的板级通信接口。
根据本发明的另一面,提供了一种CAN总线入侵防御方法,其中,该方法包括以下步骤:
在原有ECU电路上通过板级通信加入如权利要求1-3中任一项所述的CAN总线入侵防御电路;
ECU正常接收总线数据,如果发现接收的总线报文ID与本ECU发送ID重复,则立即用板级通信接口通知CAN总线入侵防御电路,开启防御;
CAN总线入侵防御电路干扰后续CAN报文数据域的发送,以较大概率强制发出显性电平,当攻击设备的数据域内有隐性电平时,会被显性电平覆盖,此时攻击设备的CAN控制器自己会判断出现发送错误帧,从而停止继续发送该帖报文,并且由于攻击设备的CAN控制器检测到发送电平与实际发送数据不一致,会开始往自身错误计数器累加;
当错误计算器累加到一定值时,攻击设备进入静默;
板级通信接口向MCU发送关闭总线防御的信号,此时MCU控制PWM引脚输出占空比为0的信号。
本发明采用上述技术方案,具有的有益效果是:本发明根据CAN链路层协议的特点,可在检测到异常CAN总线数据的同时,即刻发动入侵防御,达到主动屏蔽非法或受劫持等攻击设备,防御总线安全的目的。
附图说明
为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。图中的组件并未按比例绘制,而类似的组件符号通常用来表示类似的组件。
图1是本发明的CAN总线入侵防御电路图;
图2是基于图1所示的CAN总线入侵防御电路的防御方法的原理图。
具体实施方式
现结合附图和具体实施方式对本发明进一步说明。
先对CAN总线的特性做如下说明:
1、显性电平:CAN_H为3.5V,CAN_L为1.5V,显性电平代表在总线上传输二进制信号0。
2、隐性电平:CAN_H,CAN_L的电平均为2.5V,隐性电平代表在总线上传输二进制信号1。
3、显性覆盖隐性:在CAN总线中,显性电平是强驱动,隐性电平时弱驱动,因此当有的节点发送显性电平有的节点发送隐性电平时,总线上呈现的是强驱动的显性状态,也就是说显性平可以覆盖隐性电平。
4、CAN收发器:一般是采用单独芯片,也有部分CAN收发器与CAN控制器结合在一起。接收CAN信号时用于将总线的显、隐差分电平信号,转换为串行的RX信号给控制器。反之发送数据时,用于将TX串行比特流转换为CAN总线的显、隐性差分电平信号。
5、CAN控制器:一般在ECU内部,根据CAN总线协议控制数据帧的发送和接收;有发送缓冲区可以存储一个完整的CAN报文,并通过TX线把报文发送到CAN收发器;当接收一个报文时,将收发器通过RX线上的串行位流数据转换位并行数据,然后交给接收过虑模块进行识别,决定该报文是否为主微处理器所要求的报文。
6、错误检测:往总线发送数据的同时,CAN控制器会同时监控总线电平,判断是否发送错误。如果发送数据为1,但检测到电平为显性电平,则总线控制器判断发送出现错误,在控制器内的错误计数器会进行错误次数累加。总线控制根据CAN通信协议,当连续错误达到一定次数时,该总线控制器就会进入静默状态,即使ECU不断往总线控制器发送缓存发数据,总线控制器也不会将数据往总线上发送。
7、总线仲裁(竞争):CAN总线允许多设备同时接收数据,但某一时刻只允许一个设备点用总线发送报文,因此针对当前报文的防御干扰,不会影响其它设备发送报文。当多个ECU同时发送报文时,要通过CAN ID进行逐位总线仲裁。由于显性电平会覆盖隐性电平,因此如果一个设备A往总线上发出CAN ID位时为隐性电平,但是检测回来发现总线是显性电平,则说明有其它设备的CAN ID位为显性,覆盖了设备A的隐性电平,此时设备A总线仲裁失败,其CAN控制器会遵守CAN通信协议退出数据发送,待监听到仲裁成功的设备发完数据,总线空闲之后,再发送数据。
如图1所示,一种CAN总线入侵防御电路可包括微处理器MCU、NPN三极管Q1、Q2和Q3、耦合电容C1和C2、限流电阻R3、R4、R5、R6、R7、R8、R9和R10、3.5V稳压管D2、2.5V稳压管D3以及1.5V稳压管D4。微处理器MCU用于控制启动或关闭总线防御功能。O1为MCU上的一个板级通信接口,可以是IO口、I2C、SPI、485等常用的板级通信接口,用于接收启动入侵防御功能的指令。PWM为输出脚,通过MCU软件配置可以输出所接入CAN总线的波特率十倍或以上频率的PWM信号。PWM信号的高电平应至少大于3.3V,以保证PWM高电平能导通三极管;并且占空比应至少大于0.9,以保证有较高概率干扰总线的隐性电平。
优选地,R7、R9电阻取值尽可能大,至少要达到兆欧级别(即,大于1兆欧),以防止当PWM没有输出防御电路不起作用时总线信号反串。总线信号反串会导致总线信号衰减,影响总线通信。
C1、C2在实际运用中根据PWM引脚输出的PWM信号的频率,选择相应的截止频率与PWM信号的频率尽量接近的电容。由于PWM信号的频率要远高于总线波特率,因此C1,C2截止频率远离总线波特率。在无PWM信号时,C1、C2相对于总线为近似断路的高阻态,与高阻值电阻R7、R9一起,起到防止总线信号反串作用,避免这一附加在总线上的防御电路自身对总线通信质量造成影响。
CAN_H,CAN_L表示所接入的一条CAN总线(CAN总线为两线形式,CAN_H为CAN高线,CAN_L为CAN低线。CAN_H=3.5V,CAN_L=1.5V时,为总线显性电平,此时表示传递一比特信息0;CAN_H=2.5V,CAN_L=2.5V时,为总线隐性电平,此时表示传递一比特信息1。根据CAN总线原理,显性电平会强制覆盖隐性电平,反之隐性电平不会覆盖显性电平)。
下面详细说明本发明的CAN总线入侵防御电路的工作原理:
板级通信接口向MCU发送开启总线防御的信号,MCU控制PWM引脚开始以不低于总线波特率十倍的频率,高电平不低于3.3V,占空比不低于0.9输出PWM信号。
当PWM信号为高电平时,Q1,Q3三极管导通,Q2三极管截止。由于稳压管D4将C点电压稳定在1.5V,因Q3导通,此时N点电压也为1.5V。因为PWM频率与C2截止频率接近,所以有PWM信号时,电容C2相当于导通,此时对应于PWM的高电平,会有1.5V电平叠加到CAN_L上。由于Q1导通,此时三极管Q2的基级与发射级电压相等,均为B点电压,因此三极管Q2截止,P点电压近似等于A点稳压管D2的电压3.5V。因为PWM频率与C1截止频率接近,所以有PWM信号时,电容C1相当于导通,此时对应于PWM的高电平,会有3.5V电平叠加到CAN_H上。因此,PWM在高电平时,会在CAN总线上叠加显性电平,此时CAN总线实质发送信号如为隐性电平,由于显性电平对隐性电平会产生覆盖,因此总线会强制被拉为显性电平。
当PWM信号为低电平时,Q1,Q3三极管截止,Q2三极管导通。由于Q1,Q3截止,因此N点电压近似等于B点电压2.5V,因为PWM频率与C2截止频率接近,所以有PWM信号时,电容C2相当于导通,此时对应于PWM的低电平,会有2.5V电平叠加到CAN_L上。由于Q2导通,此时N点电压近似等于B点电压2.5V,因为PWM频率与C1截止频率接近,所以有PWM信号时,电容C1相当于导通,此时对应于PWM的低电平,会有2.5V电平叠加到CAN_H上。因此,PWM在低电平时,会在CAN总线上叠加隐性电平,由于隐性电平不具有覆盖性,因此此时无论总线上是显性电平或隐性电平,PWM为低电平时,不会对总线造成影响。
由于PWM占空比至少大于0.9,因此当对总线发动攻击的设备向总线发出隐性电平时,PWM信号有极大概率将其隐性电平覆盖为显性电平,由于CAN控制器在发送电平同时,还要监测总线电平状态,此时攻击设备检测当前总线电平状态时,大概率会检测到显性电平,与发出的隐性电平不符,攻击设备的CAN控制器认为数据发送失败。此时攻击设备的CAN控制器会取消当前CAN报文的发送,并在错误计数器内累加错误计数。
当错误计数累计值达到一定值时,该设备的CAN控制器即进入静默状态,无法再往总线发送CAN数据,板级通信接口向MCU发送关闭总线防御的信号,此时MCU控制PWM输出点空比为0的信号(即持续低电平信号),防御电路不影响CAN总线。
本发明还提供了一种CAN总线入侵防御方法,其中,该方法包括以下步骤:
步骤一:在普通的ECU电路上,通过板级通信,加入前述CAN总线入侵防御电路,如图2所示,则该ECU具有入侵防御能力。由于汽车在整车网络设计时,每个ECU发送CAN报文ID不会与其它ECU重复,因此当ECU接收到ID与自己应发ID重复时,说明该报文是个攻击报文。
步骤二:ECU正常接收总线数据,如果发现接收的总线报文ID与本ECU发送ID重复,则表明有其它设备冒充本ECU往总线发送假冒数据,意图攻击车辆的正常功能。此时立即用板级通信接口通知防御电路,开启防御。
步骤三:防御电路干扰后续CAN报文数据域的发送,以较大概率(PWM占空比0.9)强制发出显性电平。当攻击设备数据域内有隐性电平时,会被显性电平覆盖。根据说明6,此时攻击设备的CAN控制器,自己会判断出现发送错误帧,会停止继续发送该帖报文,此时,相当于实时阻断了当前报文发送。由于CAN控制器检测到发送电平与实际发送数据不一致,会开始往自身错误计数器累加。
步骤四:当错误计算器累加到一定值时,攻击设备进入静默。此时,就相当于在总线上屏蔽了该攻击设备,从根本上消除了这个设备对总线的影响,完成了主防御,保护了总线环境。
步骤五:通过板级通信接口向MCU发送关闭总线防御的信号,此时MCU控制PWM引脚输出占空比为0的信号。
尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。
Claims (5)
1.一种CAN总线入侵防御电路,其特征在于,包括微处理器MCU、NPN三极管Q1、Q2和Q3、耦合电容C1和C2、限流电阻R3、R4、R5、R6、R7、R8、R9和R10、3.5V稳压管D2、2.5V稳压管D3以及1.5V稳压管D4,其中微处理器MCU具有用于接收启动入侵防御功能的指令的板级通信接口O1以及用于输出PWM信号的PWM引脚,PWM信号的频率大于所接入CAN总线的波特率十倍或以上并且其高电平不低于3.3V、占空比不低于0.9;三极管Q1的基极串接电阻R3接PWM引脚,集电极接三极管Q2的基极和电阻R5的一端,发射极接电阻R6、R9的一端、三极管Q2的发射极和稳压管D3的负极;电阻R6的另一端接+5V,稳压管D3的正极接地;三极管Q2的集电极接电阻R7的一端;三极管Q3的基极串接电阻R8接PWM引脚,集电极接电阻R9的一端,发射极接电阻R10的一端和稳压管D4的负极;电阻R10的另一端接+5V,稳压管D4的正极接地;稳压管D2的正极接地,负极接电阻R4的一端和R5、R7的另一端,电阻R4的另一端接+5V;电容C1串接在三极管Q2的集电极和CAN高线CAN_H之间,电容C2串接在三极管Q3的集电极和CAN低线CAN_L之间。
2.如权利要求1所述的CAN总线入侵防御电路,其特征在于,电容C1和C2的截止频率与PWM信号的频率基本一致。
3.如权利要求1所述的CAN总线入侵防御电路,其特征在于,电阻R7和R9的阻值大于1兆欧。
4.如权利要求1所述的CAN总线入侵防御电路,其特征在于,板级通信接口O1为IO口、I2C、SPI或485。
5.一种CAN总线入侵防御方法,其特征在于,包括以下步骤:
在原有ECU电路上通过板级通信加入如权利要求1-4中任一项所述的CAN总线入侵防御电路;
ECU正常接收总线数据,如果发现接收的总线报文ID与本ECU发送ID重复,则立即用板级通信接口通知CAN总线入侵防御电路,开启防御,即,PWM引脚输出PWM信号;
CAN总线入侵防御电路干扰后续CAN报文数据域的发送,以较大概率(占空比不低于0.9)强制发出显性电平,当攻击设备的数据域内有隐性电平时,会被显性电平覆盖,此时攻击设备的CAN控制器自己会判断出现发送错误帧,从而停止继续发送该帖报文,并且由于攻击设备的CAN控制器检测到发送电平与实际发送数据不一致,会开始往自身错误计数器累加;
当错误计算器累加到一定值时,攻击设备进入静默;
板级通信接口向MCU发送关闭总线防御的信号,此时MCU控制PWM引脚输出占空比为0的信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911238974.2A CN112929150A (zh) | 2019-12-06 | 2019-12-06 | 一种can总线入侵防御电路与方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911238974.2A CN112929150A (zh) | 2019-12-06 | 2019-12-06 | 一种can总线入侵防御电路与方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112929150A true CN112929150A (zh) | 2021-06-08 |
Family
ID=76161517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911238974.2A Pending CN112929150A (zh) | 2019-12-06 | 2019-12-06 | 一种can总线入侵防御电路与方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112929150A (zh) |
-
2019
- 2019-12-06 CN CN201911238974.2A patent/CN112929150A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3148154B1 (en) | Controller area network (can) device and method for controlling can traffic | |
EP2800313B1 (en) | Devices and methods for an enhanced driver mode for a shared bus | |
US20180152472A1 (en) | Invalidity detection electronic control unit, in-vehicle network system, and communication method | |
EP1022878B1 (en) | Data transmission system | |
US11256498B2 (en) | Node, a vehicle, an integrated circuit and method for updating at least one rule in a controller area network | |
EP3926894A1 (en) | Can transceiver | |
US10922264B1 (en) | CAN transceiver | |
CN109104352B (zh) | 车辆网络操作协议和方法 | |
WO2014115455A1 (ja) | ネットワーク装置およびデータ送受信システム | |
US11522878B2 (en) | Can communication based hacking attack detection method and system | |
CN111147437B (zh) | 基于错误帧归因总线断开攻击 | |
US10038570B2 (en) | Control device for connecting a can bus to a radio network, and motor vehicle having such a control device | |
CN112347021B (zh) | 用于串行通信装置的安全模块 | |
CN111108725A (zh) | 用于监视通信总线上的通信的方法和用于连接到通信总线的电子设备 | |
KR20180127222A (ko) | 사이버 공격에 대한 네트워크 보호 방법 | |
EP3965375A1 (en) | Can transceiver | |
CN112583786B (zh) | 用于警报的方法、发送器设备和接收器设备 | |
CN112929150A (zh) | 一种can总线入侵防御电路与方法 | |
WO2018008452A1 (ja) | 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム | |
US20220329614A1 (en) | Method for monitoring communication on a communication bus, electronic device for connection to a communication bus, and central monitoring device for connection to a communication bus | |
EP4099642A2 (en) | Can transceiver | |
US11431439B1 (en) | Controller area network transceiver | |
US20220318178A1 (en) | Controller area network device | |
JP4570753B2 (ja) | エラーコード送出装置および方法 | |
JP3084858B2 (ja) | 車載ネットワークの信号異常検出装置 |
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 |