Vehicle CAN bus simulation and attack system and method

文档序号:1286350 发布日期:2020-08-28 浏览:3次 中文

阅读说明:本技术 车辆can总线仿真与攻击系统及方法 (Vehicle CAN bus simulation and attack system and method ) 是由 陈媛芳 石东贤 于 2020-05-26 设计创作,主要内容包括:本发明公开了一种车辆CAN总线仿真与攻击系统及方法。所述系统包括模拟ECU的CAN节点、PC端、OBD-Ⅱ;所述CAN节点通过CAN_H总线和CAN_L总线两个接口连接到CAN节点的面包板上面,同时通过串口连接到多口USB接口板,多口USB接口板接入PC端,完成CAN节点和PC之间的串口通信;所述OBD-Ⅱ分别用两根CAN总线连接线接到串行CAN节点的CAN_H和CAN_L上。本发明的方法主要通过Ardunio模拟车辆ECU,并通过与PC的串口通信和车辆CAN真实数据的导入来模拟车辆CAN总线的运行,同时系统对仿真车辆的CAN总线和ECU实施多种攻击,包括挂起攻击、冒充攻击、伪装攻击等。(The invention discloses a vehicle CAN bus simulation and attack system and a vehicle CAN bus simulation and attack method. The system comprises a CAN node, a PC end and an OBD-II of the simulation ECU; the CAN node is connected to the upper surface of a bread board of the CAN node through two interfaces of a CAN _ H bus and a CAN _ L bus, and is connected to a multi-port USB interface board through a serial port, and the multi-port USB interface board is accessed to a PC end to complete serial port communication between the CAN node and the PC; and the OBD-II is respectively connected to CAN _ H and CAN _ L of the serial CAN node by two CAN bus connecting wires. The method mainly simulates the vehicle ECU through Ardunio, simulates the operation of the vehicle CAN bus through serial port communication with the PC and the import of the real data of the vehicle CAN, and simultaneously implements various attacks including hang-up attack, impersonation attack, camouflage attack and the like on the CAN bus and the ECU of the simulated vehicle by the system.)

1. A vehicle CAN bus simulation and attack system is characterized by comprising a CAN node simulating an ECU, a PC end and an OBD-II;

the CAN node is connected to the upper surface of a bread board of the CAN node through two interfaces of a CAN _ H bus and a CAN _ L bus, and is connected to a multi-port USB interface board through a serial port, and the multi-port USB interface board is accessed to a PC end to complete serial port communication between the CAN node and the PC;

and the OBD-II is respectively connected to CAN _ H and CAN _ L of the serial CAN node by two CAN bus connecting wires.

2. The CAN BUS emulation and attack system of vehicle as claimed in claim 1, wherein said CAN nodes employ Arduino Uno 3 backplane and CAN-BUS Shield expansion board;

the PC end is connected with the CAN-BUS Shield board through a USB serial port to realize one-to-one serial port data communication, the PC sends control commands to each ECU, and the ECUs return respective states and data contents sent to CAN nodes;

the OBD-II is connected with the CAN node at one end and the OBD-II connector at the other end through a DB9-OBD2 connecting line, meanwhile, the CAN High (J-2234) and the CAN Low (J-2234) of the 16Pin interface of the OBD-II connector are respectively connected to the CAN _ H and the CAN _ L of the serial CAN node through two CAN bus connecting lines, and meanwhile, the Grove connecting line connects the 4Pin Grove connector of the CAN node to the ArduinoUno 3 bottom plate.

3. A vehicle CAN bus emulation and attack method using the system of claim 1, comprising the steps of:

(1) simulating a CAN node of the ECU to realize serial port communication between the CAN node and the PC;

(2) selecting a proper interface board according to the number of the ECU to be simulated and the number of the ECUs simulating the attack;

(3) the PC end reads Excel data and sends the Excel data to each ECU according to the CANID;

(4) configuring an OBD-II interface;

(5) connecting a COM serial port to carry out impersonation attack;

(6) selecting an ECU needing to be suspended to carry out suspension attack on the ECU;

(7) connecting a COM serial port to carry out disguised attack;

(8) and displaying the state of the vehicle ECU.

4. The vehicle CAN bus simulation and attack method according to claim 3, wherein the step (3) specifically comprises the steps of:

and importing a real CAN data button from the outside, selecting a local Excel file at the PC terminal after clicking, displaying the Excel file in a DataGridView control below the button, and sending the data to each ECU according to the CANID after clicking a start button.

5. The vehicle CAN bus simulation and attack method according to claim 1, wherein the step (4) specifically comprises the steps of:

(4-1) one end of the OBD-II is connected with the CAN node, the other end of the OBD-II is connected with the OBD-II connector, meanwhile, CAN High (J-2234) and CAN Low (J-2234) of a 16Pin interface of the OBD-II connector are respectively connected to CAN _ H and CAN _ L of the serial CAN node by two CAN bus connecting lines, and meanwhile, a Grove connecting line connects a 4Pin Grove connector of the CAN node to a bottom plate of ArduinoUno 3;

(4-2) reading CAN bus data by the ArduinoUno 3;

and (4-3) storing the data to the PC.

6. The vehicle CAN bus simulation and attack method according to claim 1, wherein the impersonation attack is characterized in that the step (5) specifically comprises the following steps:

(5-1) firstly connecting a normal ECU and an attacker, setting 2 serial ports as display windows for displaying the CAN information of the console;

(5-2) setting an attack strategy;

entering an impersonation attack window, then clicking strategy setting on an attacker, and selecting an ECU to be impersonated;

(5-3) normally starting the vehicle;

firstly, importing real vehicle data in a vehicle service setting window, then clicking to start, clicking to impersonate in a certain time period after normal starting, and carrying out impersonation attack;

(5-4) carrying out impersonation attack;

displaying real-time output of two ECU information on a bus after impersonation attack at a PC end;

and 5-5, checking the state diagram of the vehicle ECU.

7. The vehicle CAN bus simulation and attack method according to claim 1, wherein the step (6) specifically comprises the steps of:

(6-1) connecting any ECU;

(6-2) entering a hang attack interface, selecting the ECU needing to be hung and then clicking to hang;

(6-3), suspend and resume;

after the suspension, the original normal ECU CAN not send any CAN data; clicking to recover, namely after the suspension attack is stopped, the ECU recovers to a normal state and normally sends data;

and (6-4) checking a vehicle ECU state diagram and checking the change of each ECU of the vehicle.

8. The vehicle CAN bus simulation and attack method according to claim 1, wherein the step (7) specifically comprises the steps of:

(7-1), connecting the attacker:

connecting a COM serial port, and connecting a normal ECU and an attacker intending to pretend;

(7-2) setting a masquerading attack strategy: entering a disguised attack strategy setting interface, disguising a normal ECU, and sending CAN data to a bus at intervals;

(7-3) carrying out camouflage attack;

the vehicle ECU normally clicks a camouflage button to carry out camouflage attack on the ECU, the normal ECU is hung, meanwhile, an attacker starts to camouflage and send CAN data, a stop button is clicked for a certain time, camouflage is finished, and the hung ECU recovers the normal state;

and 7-4, checking the state diagram of the vehicle ECU.

Technical Field

The invention belongs to the field of industrial Internet of things safety, and relates to a vehicle CAN bus simulation and attack system and method.

Background

With the accelerated integration of the internet of things technology and the automobile industry, the intelligentization and networking degrees of modern vehicles are continuously deepened. In order to provide more comfortable driving experience for users, the number of Electronic Control Units (ECUs) of automobiles is increasing year by year, communication interfaces with the outside such as 3G/4G, bluetooth and the like are enriched, and vehicles are no longer isolated and closed mechanical products, but are open systems with complex vehicle-mounted networks. The network security problem is increasingly prominent due to the openness and electronization of vehicles, once a hacker enters a vehicle-mounted network through an external interface, the hacker can attack the vehicle, privacy is revealed if the hacker is not available, and the hacker is destroyed and dies if the hacker is not available. A Controller Area Network (CAN) bus is one of the most widely used vehicle buses and is an object of a hacker's heavy attack. In recent years, an attacker penetrates into a CAN bus through interfaces such as bluetooth and an On-Board Diagnostics (OBD) to implement malicious attack, and driving safety is seriously damaged.

An attacker CAN permeate into the vehicle-mounted CAN bus network through the external access interface, and sends a malicious attack message to the vehicle-mounted CAN bus network to intervene the working condition of the automobile. A vehicle CAN bus simulation and attack platform simulates a vehicle ECU through Arduino, simulates the operation of the vehicle CAN bus through serial port communication with a PC and the import of vehicle CAN real data, and meanwhile, the system implements various attacks including hang-up attack, impersonation attack, camouflage attack and the like on the CAN bus and the ECU of a simulated vehicle. The system prevents potential hacker attacks by simulating the hacker attacks, further enhances the safety of the CAN bus of the vehicle and reduces the possibility of the vehicle being attacked.

Disclosure of Invention

The invention aims to fill the blank of the existing CAN bus simulation and attack system. A vehicle CAN bus simulation and attack system and method are provided.

The specific technical scheme of the invention is as follows:

a vehicle CAN bus simulation and attack system comprises a CAN node simulating an ECU, a PC end and an OBD-II;

the CAN node is connected to a bread board on the CAN node through two interfaces of a CAN _ H bus and a CAN _ L bus, and is connected to a multi-port USB interface board through a serial port, and the multi-port USB interface board is accessed to a PC end to complete serial port communication between the CAN node and the PC;

and the OBD-II is respectively connected to CAN _ H and CAN _ L of the serial CAN node by two CAN bus connecting wires.

The CAN node adopts an Arduino Uno 3 bottom plate and a CAN-BUS Shield expansion plate;

the PC end is connected with the CAN-BUS Shield board through a USB serial port to realize one-to-one serial port data communication, the PC sends control commands to each ECU, and the ECUs return respective states and data contents sent to CAN nodes;

the OBD-II is connected with the CAN node at one end and the OBD-II connector at the other end through a DB9-OBD2 connecting line, meanwhile, the CAN High (J-2234) and the CAN Low (J-2234) of the 16Pin interface of the OBD-II connector are respectively connected to the CAN _ H and the CAN _ L of the serial CAN node through two CAN bus connecting lines, and meanwhile, the Grove connecting line connects the 4Pin Grove connector of the CAN node to the ArduinoUno 3 bottom plate.

A vehicle CAN bus simulation and attack method utilizes the system and comprises the following steps:

(1) simulating a CAN node of the ECU to realize serial port communication between the CAN node and the PC;

(2) selecting a proper interface board according to the number of the ECU to be simulated and the number of the ECUs simulating the attack;

(3) the PC end reads Excel data and sends the Excel data to each ECU according to the CANID;

(4) configuring an OBD-II interface;

(5) connecting a COM serial port to carry out impersonation attack;

(6) selecting an ECU needing to be suspended to carry out suspension attack on the ECU;

(7) connecting a COM serial port to carry out disguised attack;

(8) and displaying the state of the vehicle ECU.

The step (3) specifically comprises the following steps:

and importing a real CAN data button from the outside, selecting a local Excel file at the PC terminal after clicking, displaying the Excel file in a DataGridView control below the button, and sending the data to each ECU according to the CANID after clicking a start button.

The step (4) comprises the following steps:

(4-1) one end of the OBD-II is connected with the CAN node, the other end of the OBD-II is connected with the OBD-II connector, meanwhile, CAN High (J-2234) and CAN Low (J-2234) of a 16Pin interface of the OBD-II connector are respectively connected to CAN _ H and CAN _ L of the serial CAN node by two CAN bus connecting lines, and meanwhile, a Grove connecting line connects a 4Pin Grove connector of the CAN node to a bottom plate of ArduinoUno 3;

(4-2) and ArduinoUno 3 reads the CAN bus data.

And (4-3) storing the data to the PC.

The step (5) specifically comprises the following steps:

(5-1) firstly connecting a normal ECU and an attacker, setting 2 serial ports as display windows for displaying the CAN information of the console;

(5-2) setting an attack strategy;

entering an impersonation attack window, then clicking strategy setting on an attacker, and selecting an ECU to be impersonated;

(5-3) normally starting the vehicle;

firstly, importing real vehicle data in a vehicle service setting window, then clicking to start, clicking to impersonate in a certain time period after normal starting, and carrying out impersonation attack;

(5-4) carrying out impersonation attack;

displaying real-time output of two ECU information on a bus after impersonation attack at a PC end;

and 5-5, checking the state diagram of the vehicle ECU.

The step (6) specifically includes the following steps:

(6-1) connecting any ECU;

(6-2) entering a hang attack interface, selecting the ECU needing to be hung and then clicking to hang;

(6-3), suspend and resume;

after the suspension, the original normal ECU CAN not send any CAN data; clicking to recover, namely after the suspension attack is stopped, the ECU recovers to a normal state and normally sends data;

and (6-4) checking a vehicle ECU state diagram and checking the change of each ECU of the vehicle.

The step (7) specifically includes the following steps:

(7-1), connecting the attacker:

connecting a COM serial port, and connecting a normal ECU and an attacker intending to pretend;

(7-2) setting a masquerading attack strategy: entering a disguised attack strategy setting interface, disguising a normal ECU, and sending CAN data to a bus at intervals;

(7-3) carrying out camouflage attack;

the vehicle ECU normally clicks a camouflage button to carry out camouflage attack on the ECU, the normal ECU is hung, meanwhile, an attacker starts to camouflage and send CAN data, a stop button is clicked for a certain time, camouflage is finished, and the hung ECU recovers the normal state;

and 7-4, checking the state diagram of the vehicle ECU.

The invention has the following beneficial effects:

the system simulates the vehicle ECU through Arduino, simulates the operation of the vehicle CAN bus through serial port communication with a PC and importing of real data of the vehicle CAN, and meanwhile, the system implements various attacks including hang-up attack, impersonation attack, camouflage attack and the like on the CAN bus and the ECU of the simulated vehicle. The system provides better detection for preventing potential hacking.

Drawings

The invention is described in detail below with reference to the drawings and the detailed description;

fig. 1 is a general architecture diagram of a vehicle CAN bus emulation and attack system.

Fig. 2 is a serial port setup diagram.

FIG. 3 is an impersonation attack operation interface.

Fig. 4 is a diagram of masquerading attack specific policy settings.

Fig. 5 masquerades as an attack image.

FIG. 6 suspends the attack interface.

FIG. 7 is a vehicle ECU state diagram after a suspend attack.

Fig. 8 disguises the attack window.

Fig. 9 masquerading attack policy settings.

Fig. 10 is a state diagram of the vehicle ECU after the masquerading attack has been performed.

FIG. 11 shows the vehicle ECU status display main interface.

Detailed Description

In order to make the technical means, the creation characteristics, the achievement purposes and the effects of the invention easy to understand, the invention is further described with the specific embodiments.

As shown in FIG. 1, a vehicle CAN bus simulation and attack system comprises a CAN node simulating an ECU, a PC terminal, an oscilloscope and an OBD-II;

the CAN node is connected to a bread board on the CAN node through two interfaces of a CAN _ H bus and a CAN _ L bus, and is connected to a multi-port USB interface board through a serial port, and the multi-port USB interface board is accessed to a PC end to complete serial port communication between the CAN node and the PC;

and the OBD-II is respectively connected to CAN _ H and CAN _ L of the serial CAN node by two CAN bus connecting wires.

The CAN node adopts an Arduino Uno 3 bottom plate and a CAN-BUS Shield expansion plate;

the PC end is connected with the CAN-BUS Shield board through a USB serial port to realize one-to-one serial port data communication, the PC sends control commands to each ECU, and the ECUs return respective states and data contents sent to CAN nodes;

the OBD-II is connected with the CAN node at one end and the OBD-II connector at the other end through a DB9-OBD2 connecting line, meanwhile, the CAN High (J-2234) and the CAN Low (J-2234) of the 16Pin interface of the OBD-II connector are respectively connected to the CAN _ H and the CAN _ L of the serial CAN node through two CAN bus connecting lines, and meanwhile, the Grove connecting line connects the 4Pin Grove connector of the CAN node to the ArduinoUno 3 bottom plate.

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:复合式无人机半实物仿真系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!