fingerprinting electronic control units for vehicle intrusion … · 3 3 3 ecu a ecu r ideal t 2t...

33
Fingerprinting Electronic Control Units for Vehicle Intrusion Detection Kyong Tak Cho and Kang G. Shin The University of Michigan

Upload: others

Post on 09-Aug-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Fingerprinting Electronic Control Units

for Vehicle Intrusion Detection

Kyong Tak Cho and Kang G. ShinThe University of Michigan

Page 2: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Vehicle Cyber Attack

Security

Risks!

Remote

Access Points

In-Vehicle Network

Page 3: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Source: K. Koscher et al, “Experimental Security Analysis of a Modern Automobile”, IEEE S&P’10

Vehicle attacks are real!

Page 4: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

ECU ECU ECU

ECU ECU

ID DATAID DATAID DATAID DATAID DATAID DATAID DATAID DATAID DATAID DATAID DATAID DATA

CAN Message Format

o Message-oriented addressing

ID represents message contents

No info who sent the message.

CAN (Controller Area Network)

Page 5: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Attack Model : “Attacker”

Strong Weak

Start + Stop

Tx

Start + Stop

Tx

Page 6: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Attack Model

B0

ECU

A

B0 20

ECU

B

ECU

C

CAN Bus

B0 B0 B0 B020 20

B0 B0 B0 B020 20B0 B0 B0

Time

Without Attack

With Attack

(Strong)

B0 B0

Method 1 & 2: Fabrication and Suspension attack

B0 20

Source: K. Koscher et al, “Experimental Security Analysis of a Modern Automobile”, IEEE S&P’10

Page 7: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

B0

ECU

A

ECU

B

ECU

C

CAN Bus

B0 B0 B0 B020 20

B0 B020 20 B0

Time

Without Attack

With Attack

(Strong)

B0

Method 3: Masquerade attack

B0 20

Tmasq

(Weak)

Attack Model

Page 8: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

1. No authenticity: Which ECU sent the message?

ECU ECU ECU

ECU ECU

Problems

ID DATAID DATAID DATAID DATA

Page 9: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

ECU

2. Root-cause Analysis: Who attacked?

ECU ECU

ECU ECU

Problems

ID DATAID DATAID DATAID DATA

Page 10: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

ECU ECU

ECU ECU

ID DATA

ID DATA

ID DATA

ID DATA

Objective: Fingerprint ECUs for Intrusion Detection

Clock

Skew

CIDS: Clock-based IDS

ECU

Page 11: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

3:59 PM 4:01 PM 4:00 PM

Node 1 Node 2 Node 3

Clock Offset -1 min +1 min 0 min

Clock Skew -1/60 +1/60 0

CIDS: Clock-based IDS

Page 12: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Determine ECUs’ “Clock Skew” !

How? Exploit the fact that most messages are “Periodic”

CIDS: Clock-based IDS

Page 13: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

T+O1

T+O1+∆d1+∆n1Trx =

2T+O2 3T+O3

d0+n0 T+O1+d1+n1 2T+O2+d2+n2 3T+O3+d3+n3

T+O2-O1+∆d2+∆n2 T+O3-O2+∆d3+∆n3

ECU A

ECU R

T 2T 3TIdeal

Actualt=0

Transmitter’s clock information is hidden in the

message arrival timestamps and intervals!

CIDS: Clock-based IDS

Page 14: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Estimated

Measured

E[Trx]+d0+n0 2E[Trx]+d0+n0 3E[Trx]+d0+n0

Difference ≈ O1+∆d+∆n O2+∆d+∆n O3+∆d+∆n

Average clock offset(Newly incurred offset)

CIDS: Clock-based IDS

T+O1 2T+O2 3T+O3

d0+n0 T+O1+d1+n1 2T+O2+d2+n2 3T+O3+d3+n3

ECU A

ECU R

T 2T 3TIdeal

Actualt=0

Accumulated clock offset(Oacc)

Time (t)

Slope = Clock skew !

ECU1

ECU2

ECU3

ECU4

“Recursive Least

Square (RLS)”

Oacc[k] = S[k]t[k]+e[k]

Page 15: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

1. Per-message

A A A A

B B B B

A’s clock behavior

B’s clock behavior

2. Message-pairwise

CIDS: Clock-based IDS

Page 16: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ CIDS: Per-message Detection

Detection – Fabrication Attack

Estimated

Measuredd0+n0 E[Trx]+d0+n0 2E[Trx]+d0+n0 3E[Trx]+d0+n0

Difference ≈ O1+∆d+∆n O2+∆d+∆n O3+∆d+∆n

1.5T+O2+d2+n2 2T+O3+d3+n3

-0.5T+O2+∆d+∆n -T+O3+∆d+∆n

|E[Oi]| Increases!

T+O1+d1+n1 2T+O2+d2+n2 3T+O3+d3+n3

Page 17: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Detection: Fabrication Attack

Accumulated clock offset(Oacc)

Time (t)

High error in RLS !

CIDS: Per-message Detection

Page 18: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Detection: Masquerade Attack

Accumulated clock offset(Oacc)

Time (t)

High error in RLS !

Detect abnormal shifts via

CUSUM (Cumulative Sum) Analysis

CIDS: Per-message Detection

Page 19: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

2. Message-pairwise1. Per-message

A A A A

B B B B

A’s clock behavior

B’s clock behavior

CIDS: Clock-based IDS

“Relation between clock behaviors”

Page 20: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

2. Message-pairwise

A A A A

B B B B

CIDS: Clock-based IDS

ECU X

Correlated

Offsets!

ECU X

1. Per-message

Page 21: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Accumulated clock offset(Oacc)

Time (t)

CIDS: Message-pairwise Detection

“Message-pairwise

Detection”

Page 22: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ CIDS: Message-pairwise Detection

2013 Honda Accord

Same Txer Different Txer

Page 23: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ CIDS: Message-pairwise Detection

2010 Toyota Camry

Same Txer Different Txer

Page 24: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Evaluation

Setting 1: CAN bus prototype

Page 25: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Setting 3: CAN log data

• 2010 Toyota Camry

• 2010 Dodge Ram Pickup

Evaluation

Setting 2: Real Vehicle – 2013 Honda Accord

Page 26: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Evaluation

Different Fingerprints

CAN bus prototype 2013 Honda Accord

2010 Dodge Ram Pickup 2010 Toyota Camry

Page 27: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Attacker

CIDS

Evaluation

Defending Fabrication Attack

Page 28: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Evaluation

Defending Masquerade Attack

“Root-cause

Analysis”

Page 29: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Message-pairwise Detection

What if impersonating node has near-equivalent “clock skew”?

Evaluation

Page 30: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Evaluation

False Alarm Rate : Per-message

P(false alarm)

P(d

ete

ction)

Page 31: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Evaluation

False Alarm Rate : Per-message + Message-pairwise

P(false alarm)

P(d

ete

ction)

Page 32: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+ Conclusion

CIDS: Clock-based IDS

Fingerprints transmitters based on extracted clock skew

Overcomes the limitations of state-of-the-art defenses

No change in protocol/messages required!

Intrusion

Detection

Root-cause

AnalysisAuthentication

Page 33: Fingerprinting Electronic Control Units for Vehicle Intrusion … · 3 3 3 ECU A ECU R Ideal T 2T 3T Actual t=0 Accumulated clock offset (O acc) Time (t) Slope = Clock skew ! ECU1

+

Thank [email protected]