25
When Hardware Attacks scale Marc Witteman Croatian Summer school 2017

When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

  • Upload
    others

  • View
    22

  • Download
    0

Embed Size (px)

Citation preview

Page 1: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

When Hardware Attacks

scale Marc Witteman

Croatian Summer school 2017

Page 2: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Attack exploitation space: time vs distance

2

protocol software

Local

Fast Slow

Remote

key brute

force

side

channel

fault

injection

physical

relay

attack

Hardware attacks require:

• hardware vulnerabilities, or

• hardware changes to target

mitm

Hardware attacks

Page 3: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

𝑝 = 𝑛 ∗ 𝑣 − 𝑐𝑣 − 𝑐𝑓

p = profit

v = value

n = replications

cv = variable costs

cf = fixed costs

Attacker business case

3

Page 4: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

1. EMV Man-in-the-Middle

Hardware attack to bypass PIN verification of stolen payment cards

2. Retail hack

Network penetration attack to retrieve cardholder credentials

3. Card sharing

Relay attack to avoid paying TV subscription fees

Let’s analyze some known attacks

4

Page 5: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

EMV Man-in-the-Middle (1)

5 Source: https://www.cl.cam.ac.uk/research/security/banking/nopin/

Page 6: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

EMV Man-in-the-Middle (2)

6

Page 7: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Retail hack

7

Page 8: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

• Pay-TV decoders use smart cards

to control video access

• Subscription is in smart card

Card sharing (1)

8

Page 9: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

• Pay-TV decoders use smart cards

to control video access

• Subscription is in smart card

• Distribution of session keys avoids

need for individual subscriptions

Card sharing (2)

9

Page 10: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Attack Fixed

Cost

Variable

Cost

Value Replications Profit

EMV MitM € 30K € 100 € 500 100 € 10 K

Retail hack € 20K € 1 € 25 10K € 220 K

Card sharing € 10K € 10 € 100 1M € 90 M

Example attack business cases

10

Replications are key, but how is that bounded?

• Application size (e.g. #potential victims)

• Replication effort

• Detection & mitigation

Hardware attacks require substantial replication effort

Can they be scalable?

Page 11: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Attack phases

Identification Exploitation

What it is finding a vulnerability run on target

Frequency once repeated

Speed slow fast

Skill expert script-kiddy

Equipment expensive cheap

Location local remote

Scalable attack Scalable attacks need software exploitation!

Page 12: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Defenders method Attackers method

How to find software vulnerabilities?

12

White-Box Black-Box

Source Code

Review

Binary

Analysis Fuzzing

Model Based

Testing

Effectiveness

Most vulnerabilities are found white-box style!

Page 13: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Finding vulnerabilities in source code

Software packages typically

vary between 10 and 10,000 KLoC

have 0.1 up to 10 vulnerabilities per KLoC

All products have software vulnerabilities

Manual source code review performs at 100 LoC/hr

Finding a vulnerability in source code may take just one day

13

Page 14: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Binary analysis

Page 15: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Firmware structure analysis

boot loader

packed loader

packed main application

Key block

Page 16: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Disassemble

Page 17: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Flow analysis

Page 18: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Source: http://www.fredericb.info/2016/10/amlogic-s905-soc-bypassing-not-so.html

Design flaw in

Pay-TV SoC

Page 19: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Secure boot chain broken by backdoor

Attacker used

Public sources

Boot Loader

image

Restric

ted

19

Page 20: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Boot Loader header analysis

struct aml_img_header { // 64 bytes

unsigned char magic[4];// "@AML"

uint32_t total_len;

uint8_t header_len;

uint8_t unk_x9;

uint8_t unk_xA;

uint8_t unk_xB;

uint32_t unk_xC;

uint32_t sig_type;

uint32_t sig_offset;

uint32_t sig_size;

uint32_t data_offset;

uint32_t unk_x20;

uint32_t cert_offset;

uint32_t cert_size;

uint32_t data_len;

uint32_t unk_x30;

uint32_t code_offset;

uint32_t code_len;

uint32_t unk_x3C;

} aml_img_header_t; 20

Analysis & experimenting showed that

sig_type selects different key lengths, or none!

Select

Go

Certificate

Get key

Public key

Code

Hash

Signature

Verified Sig

Verify

Hashed code

Compare

Stop

Page 21: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Recent hack on WI-FI chip

Source: https://googleprojectzero.blogspot.fr/2017/04/over-air-exploiting-broadcoms-wi-fi_4.html

Page 22: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Stack buffer overflow in WI-FI

SoC enables remote code

execution within WI-FI range

Complex multi-step attack

Used public utility to do memory dump!

Leveraged information from other chips

Affects both iOS and Android devices

22

Page 23: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Reducing risk with encrypted software

Hardware attack offers two-step alternative:

1. Break software confidentiality

2. White-box binary analysis exposes logical vulnerability 23

Binary analysis

exposes logical

vulnerability

Exploitation

yields runtime

control

Start

Black-Box penetration testing

exposes logical vulnerability

Start Exploitation

yields runtime

control

Hardware attack

breaks software

confidentiality

Start Binary analysis

exposes logical

vulnerability

Exploitation

yields runtime

control

Encrypted software hides binary code

Black-Box penetration testing very inefficient

Page 24: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Conclusions

Scalable attacks need software exploitation

o Hardware attacks are laborious

o Software vulnerabilities are ubiquitous

o Software exploits are easy to reproduce

Software encryption is inevitable for security

o Binary analysis very successful in identifying vulnerabilities

o Increasing number of products use encrypted software

Hardware attacks are scalable when

o Software is encrypted

o Shallow bugs (detectable black-box style) are absent

o Used in the identification step to extract software

o Deep software vulnerabilities are present

24

Page 25: When Hardware Attacks ale - Radboud Universiteit hardware att… · Hardware attacks require: • hardware vulnerabilities, or • hardware changes to target mitm Hardware attacks

Riscure North America

550 Kearny St.

Suite 330

San Francisco, CA 94108

+1 (650) 646 9979

[email protected]

Riscure B.V.

Frontier Building, Delftechpark 49

2628 XJ Delft

The Netherlands

Phone: +31 15 251 40 90

www.riscure.com

Contact: Marc Witteman

[email protected]

Riscure is hiring, visit https://www.riscure.com/careers/