44
A visualization tool for evaluating CAN-bus cybersecurity Minrui Yan SkyGo Team, Qihoo 360 Jianhao Liu SkyGo Team, Qihoo 360

CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Embed Size (px)

Citation preview

Page 1: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

A visualizationtoolforevaluatingCAN-buscybersecurity

Minrui YanSkyGo Team, Qihoo 360

Jianhao LiuSkyGo Team, Qihoo 360

Page 2: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Jianhao LiuDirectorSkyGo TeamQihoo 360

Who Are We

2

Minrui YanResearcher, Developer

SkyoGo TeamQihoo 360

Page 3: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Agenda

• Vehicle cybersecurity risks• Key point of vehicle cybersecurity• CAN-Pick• Design a security CAN-bus network• Q&A

3

Page 4: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

The car hacking history

• Car===>Can-bushacking• Connectedcar===>Telematicshacking• Autonomouscar===>Automaticsystemhacking

4

Page 5: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Risk

5

Page 6: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Telematics hacking - 2015

6

Page 7: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Automaticsystemhacking - 2016

7

Page 8: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Cybersecurity in vehicle

8

ActionDecisionPerception

SensorFusion

SensorFusion

DecisionControl

DecisionControl

VehicleDynamics

Management

VehicleDynamics

Management

BrakeControl

BrakeControl

SteeringControl

SteeringControl

Vision

Radar

Lidar

Ultrasonic

Brake

Brake

Brake

Brake

Powersteering

Powersteering

Cloud

感知 决策 控制

摄像头

雷达

超声波

激光雷达

传感器融合

传感器融合

决策控制

决策控制

车辆动力学管理

车辆动力学管理

制动控制

制动控制

转向控制

转向控制

制动

制动

制动

制动

转向

转向

信息安全 (CyberSecurity)

Page 9: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Cybersecurity in vehicle

9

Page 10: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Cybersecurity in vehicle

10

Page 11: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

In-vehicle network

11

Page 12: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Attack path

12

LAN

Page 13: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

The principleof CAN-bus

• CarrierSenseMultipleAccess/CollisionDetection– Carrier sense– Multiple access– Collision detection

13

Extended IDIDE

SRR

SOF

EOFITM

DEL

ACK

DEL

CRCData FieldDLCr0

r1

RTR

IDBus Idle Bus Idle

Page 14: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

The principleof CAN-bus

• Communicationmatrix– ID– Signal mapping– Sendingmethod

14

Page 15: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

The principleof CAN-bus

15

- Diagnostic

- Development

Page 16: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Weakness of CAU-bus network

• Attacker model– Crediblegateway– Send illegal message

• Vulnerabilityanalysis– Tapping– Spoofing– Replay– Brute force

16

Powertrain Control

Body Control

Dashboard

DoorControl

AirbagAirCondition

SeatControl Power

Locks

LightControl

EngineControl

ActiveSuspensionABS/ASR

TransmissionControl

高速CAN 低速CAN

Page 17: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Signaltype

• Periodic• Onevent• Ifactive• Periodic and onevent• Periodic and ifactive

17

Page 18: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

18

• Features:– Real-time line chart– Replay– Fuzzing– UDS analysis– Plugins

A visualization tool for evaluating CAN-bus cybersecurity

• Supports:– Multi-platform(Linux, macOS, Windows)– Multi hardware(USBtin, SocketCAN, etc.)– Programming online

Page 19: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

CAN-Pick architecture

19

HardwareDeviceEngine

CacheSchedule

TaskEngine WebEngine

CAN-PickEngine

PluginManager

Task,Message,Setting

Recv,Send

TaskMessage

SettingTaskMessageTask

Server

Sync

Replay,Analyze,Fuzz,UDS,etc.

Load

Page 20: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

CAN-Pick architecture

20

Page 21: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Datavisualization

• Sorted by ID• Hex to Text• Highlight with changing bits• Compare multiple bits• Line chart for displaying

21

Page 22: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Buffer management

• Diff checker• Distinction• Visualization for reviewing

22

Page 23: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

23

PacketA(1102)Noise

PacketB(1007)Anaction

PacketC(63)Result

Diff

Page 24: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

24

Page 25: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

25

Page 26: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Fuzz module

• Two fuzzing modes– Pitchfork– Cluster bomb

26

ID0x010x020x030x040x050x06

Data10011002100310041005

Page 27: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

27

Page 28: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Demo1

28

Page 29: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Replay module

• Two replaying modes– Single message– Full Buffer

• Customize option– Interval– Times– Line range(buffer)

29

Page 30: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

30

Page 31: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

31

Page 32: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

UDS module

• UDS analyze– From buffer history

• Services scan

32

Page 33: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

UDS services

• Requests– 0x10 DiagnosticSessionControl– 0x2F I/O Control By Id– 0x27 Security Access– 0x3E Tester Present

• Responses– {service_id + 0x40} Positiveresponses– 0x7F Negativeresponse

33

022F 03 00000000000x7E0

02500300000000000x7E8

027F 0300000000000x7E8

Page 34: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

UDS services

• 0x2F - I/O control By Identifier– DID(DataID) ControlRecord ControlMask

– DID(DataID)• TwobyteIDfortheoutput

– ControlRecord• whatyouwanttheoutputtodo(On/Off,Up/Down,etc.)

– ControlMask• abitwisemaskofoneormoreparametersthatwillbemodified

34

022F 03 04 07 01 00000x7E0

Page 35: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

UDS services

• 0x27 - Security Access– Service id Sub-function(Request seed)

– Seed

– Sub-function(Send key) Key

35

0227 01 00 00 01 00000x7E0

0267 01 04 07 00 00000x7E8

0227 02 04 07 00 00000x7E0

• Subfunction– 0x01 Request– 0x02 Send key

Page 36: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

36

Page 37: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

37

Page 38: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Holo module

• Programming online• Auto-Generate front code• Download via server(TODO)• Share your masterpiece(TODO)

38

Page 39: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Security design

39

Page 40: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Security design

• MAC(messageauthenticationcode)– Light(only1or2byte)

• CommonSecretKey– Anti-tamper– Preassigned

40

CAN message data MAC

Page 41: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Securitydesign

• Omissionratios– Randomness

• Delay– No waste in send and authorize

• Store space L*T• Low hardware complexity

41

0 10 20 30 40 50 60 70 80 90 1000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

连续帧数量 n

漏检率

Pn

Pa=0.1

Pa=0.3

Pa=0.5

Pa=0.7

Pa=0.9

100 120 140 160 180 200 220 240 260 280 3003

4

5

6

7

8

9

10

11

广播周期 T

广播时间

Tc /

ms

Page 42: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Securitydesign

• Advantages– In theory it can defense all kind of attacking and faking message– Unnecessary to change hardware architecture and protocol

• Disadvantages– A little modify in ECU– Guarantee communicationeffectiveness

• Solution– ECU firmware

42

Page 43: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Acknowledgements

• Tsinghua University– Prof. Jian Wang

• SkyGo Team, Qihoo 360– All team member

• CANToolz

43

Page 44: CSW2017 Minrui yan+Jianhao-liu a visualization tool for evaluating can-bus cybersecurity

Thanks!

Jianhao [email protected] Yan [email protected]

https://github.com/360SkyGo/CAN-Pick(Releasesoon…)