ccc ‘07 karsten nohl, starbug, henryk plötz · 2016-11-23 · ccc ‘07 karsten nohl, starbug,...

24
CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz

Upload: others

Post on 27-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

CCC ‘07

Karsten Nohl, Starbug, Henryk Plötz

Page 2: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Radio Frequency IDentification

Tiny computer chips

Passively Powered

Page 3: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

RFIDs become ubiquitous

Integrated in many security applications

Tickets

Access Control

Car Ignition

Page 4: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Passports

Implants

RFIDs become universal identifier. Might replace passwords, PINs, and fingerprints.

Page 5: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Tagging of consumer goods

Will replace bar-codes!

Threat to Privacy

Customer tracking

Leaks internal business information!

Page 6: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Tagging of consumer goods

Will replace bar-codes!

Threat to Privacy

Customer tracking

Leaks internal business information!

Page 7: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Cryptography on RFIDs in needed for:

Unclonability

Credit cards, luxury goods, medication, …

Privacy!

But, what crypto is small enough for tags?

Page 8: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Passports

RSA

TU Graz [‘05]

AESNo Crypto

Mifare

???

Page 9: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Philips claims:

“approved authentication”

“advanced security levels”

48 bit key

Car thefts(source: hldi.org)

Page 10: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Reconstruct circuit from photos of chip

Sniff reader-tag communication

Reverse-engineering of the Mifare crypto and evaluating its security

verify

Page 11: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

µ-Controller

PhilipsReader IC

a) Sniffing datab) Full control over timing!

Page 12: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties
Page 13: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties
Page 14: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

select

detect

Chip has severalthousand gates

But only ~70 different types

Detection can be automated

Page 15: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Even tiny RFID chip too large to analyze entirely

Crypto <10% of gates!

Focus on interesting-looking parts:

Strings of flip-flops (registers)

XOR

Units around edges that sparsely connected to the rest of the chip

Page 16: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Very err0r-prone and tedious process

Will automate further

Page 17: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

48-bit LFSR

f(∙)

+

RNG

tagnonce key stream

secret key, tag ID

+

readernonce

++

Page 18: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

+

+

RNG 16(!!)-bit random numbers

LFSR –based

Value derived from time of read

Our Attack:

Control timing (OpenPCD)

= control random number (works for tag and reader!)

= break Mifare security :)

Page 19: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties
Page 20: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

1) No non-linear componentin feedback loop

No forward secrecy

2) Output bit derived from fixedsubset of bits non-optimal avalanche properties

+

+

Suggests attack on key faster than brute-force (known-plaintext)

Page 21: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Cipher complexity low

Has probably been the highest design goal

Allows for very efficient FPGA implementation

$100 key cracker will find keyin ~1 week! (much faster evenwhen trading space for time)

Page 22: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

No Crypto

Mifare

Security

Protection perhaps sufficient to protect transactions of very small value

E.g., Micro-payments, privacy

Security too weak for:

Access control, car theft protection, credit cards, …

Page 23: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Obscurity and proprietary crypto add security only in the short-run

(but lack of peer-review hurts later)

Constraints of RFIDs make good crypto extremely hard

Where are the best trade-offs?

How much security is needed?

Page 24: CCC ‘07 Karsten Nohl, Starbug, Henryk Plötz · 2016-11-23 · CCC ‘07 Karsten Nohl, Starbug, ... 2) Output bit derived from fixed subset of bits non-optimal avalanche properties

Karsten Nohl

[email protected]

+

+

++