76
Fault Injection Attacks Attack Methodologies, Injection Techniques and Protection Mechanisms Shivam Bhasin and Debdeep Mukhopadhyay Temasek Laboratories, NTU Singapore IIT Kharagpur, India ESP-Research, India SPACE 2016 – Invited Tutorial Hyderabad, India. 15 December 2016

Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Fault Injection AttacksAttack Methodologies, Injection Techniques and Protection

Mechanisms

Shivam Bhasin and Debdeep Mukhopadhyay

Temasek Laboratories, NTU SingaporeIIT Kharagpur, IndiaESP-Research, India

SPACE 2016 – Invited TutorialHyderabad, India. 15 December 2016

Page 2: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Tutorial organization

• Part I: Practical Aspects• Background• Injection techniques• Protection Methods

• Part II: Theoretical Analysis• Brief History• Differential Fault Analysis• Biased Fault & Countermeasures• Fault Tolerance

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 2 / 37

Page 3: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

1 Context

2 Fault-Injection Attacks (FIA)

3 Fault-Injection Techniques

4 Fault Protection

5 Conclusions

Page 4: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

1 Context

2 Fault-Injection Attacks (FIA)

3 Fault-Injection Techniques

4 Fault Protection

5 Conclusions

Page 5: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Internet of Things

Source: http://ariasystems.comS. Bhasin & D. Mukhopadhyay Fault Injection Attacks 3 / 37

Page 6: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Internet of Things

IoT Trends

• Population: 4.9 Billion (2015) to 25 Billion (2020)

• Market: $69.5 Billion (2015) to $263 Billion (2020)

Source: Gartner, Inc., Nov 2014

Source: http://ariasystems.comS. Bhasin & D. Mukhopadhyay Fault Injection Attacks 3 / 37

Page 7: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Internet of Things

Critical Applications of IoT

• Aerospace.

• Automotive.

• Energy.

• Health Care.

• Transportation.

• ...

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 3 / 37

Page 8: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Internet of Things

Critical Applications of IoT

• Aerospace.

• Automotive.

• Energy.

• Health Care.

• Transportation.

• ...

Vulnerable Devices• Smart devices: smartcards, tags, IoT sensors;

• Storage devices: USB sticks, hard-drives;

• Security devices: HSM;

• Computing devices: cloud.

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 3 / 37

Page 9: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Why Should We Care?

Why is Hardware Vulnerable?

• IoT is breaking traditional boundaries and locals.

• Devices are present anywhere and everywhere, outsourced.

• Some deployments are in hostile environments.

• Adversary has physical access.

• Are traditional protection enough?

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 4 / 37

Page 10: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Common Threats to IoT

Software Attacks

Source: http://img.brothersoft.com/S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 5 / 37

Page 11: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Common Threats to IoT

Counterfeits

Source: http://www.eeherald.com/images/cfeit.jpgS. Bhasin & D. Mukhopadhyay Fault Injection Attacks 5 / 37

Page 12: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Common Threats to IoT

Physical Attacks

Source: http://www.inmagine.comS. Bhasin & D. Mukhopadhyay Fault Injection Attacks 5 / 37

Page 13: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Common Threats to IoT

Hardware Trojans

Source: http://computer.orgS. Bhasin & D. Mukhopadhyay Fault Injection Attacks 5 / 37

Page 14: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

1 Context

2 Fault-Injection Attacks (FIA)

3 Fault-Injection Techniques

4 Fault Protection

5 Conclusions

Page 15: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Fault Injection Attacks (FIA)

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 6 / 37

Page 16: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Overview of Fault Injection Techniques

Low-Cost and Global• Power Glitch

• Clock Tampering

• Temperature Variation

High-Cost and Local

• Light/Laser Injection

• EM Injection

• Focused Ion Beam

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 7 / 37

Page 17: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Impact of Fault Injection

Fault Duration• Transient

• Harmonic

Fault Effects• Data Modification

• Flow Modification

Fault Objectives

• Bypass Security Check

• Corrupt Computation

• Bias inputs

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 8 / 37

Page 18: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Fault Models

• Single/multiple bit-flip – a target variable was altered eitherby single or multiple bit flip.

• Random byte fault – Some bits of a byte are flipped.No-precise multi-bit flip.

• Instruction skip – One or several instructions were notexecuted (for software)

• Stuck-at fault – target variable stuck at-0/1.

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 9 / 37

Page 19: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Overview of Fault Protection

Two Approaches:

• Fault Detection

• Fault Prevention

Fault Detections• Incremental Approach

• Analog Method: Detect physical stress

• Digital Method: Detect modification of digital data

Fault Prevention• Provable Approach

• Infect/Erase Output

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 10 / 37

Page 20: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Real World Examples

• Pentium FPU bug attack• Bug in Intel P5 floating point unit• Outputs wrong result (1 in 9 billion)• Shamir proposed attack to retrieve RSA key• Can be performed remotely

• PS3 Hack• otherOs feature allows boot of Linux• Glitch allows hypervisor access• Attacker gain full memory access• Control of Os bootchain

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 11 / 37

Page 21: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

1 Context

2 Fault-Injection Attacks (FIA)

3 Fault-Injection Techniques

4 Fault Protection

5 Conclusions

Page 22: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Fault Injection Techniques

• Widely classified as:

• Global

+ Low-cost+ Applicable on range of devices+ Low expertise required- Limited precision

• Local

+ Precise and powerful+ Can bypass basic protections- High expertise required- Expensive equipments

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 12 / 37

Page 23: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Fault Injection: Power

• Main Idea: Disturb the power supply to induce faults.

• Modes: short-lived glitch, source manipulation

• Equipment: Low cost basic lab equipment

• Attacker can feed higher or lower power.

• Potential for remote execution

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 13 / 37

Page 24: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Fault Injection: Power

• Glitches effect are short-lived.

• Are generally used for skipping key instruction

• Timing of the glitch is the key

• Widely used in to tamper payTV cards in 90’s

• Typically used to skip watchdog counter or sanity checks

• Power supply can filter some glitches

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 13 / 37

Page 25: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Fault Injection: Power

• Under/Over-powering over prolonged period can also be usedfor fault injection

• Underpowering increases signal propagation delay

• Can lead to setup time violation in hardware platforms

• In microcontrollers, power hungry instruction are worst hit(memory read/write)

• Overpowering causes electrical anomalies

• Capable of bit-flips

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 13 / 37

Page 26: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Fault Injection: Power

• Recent addition: Body Bias Injection

• Requires access to substrate of the chip (backside)

• A needle is used to inject power directly in the substrate

• Direct access and can bypass glitch detectors

• Powerful but needs basic profiling

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 13 / 37

Page 27: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Fault Injection: Clock

• Main Idea: Disturb the clock to induce faults.

• Modes: short-lived glitch, source manipulation

• Equipment: Low to medium cost equipment

• Overclocking is typically used

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 14 / 37

Page 28: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Fault Injection: Clock

Clock Glitch

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 14 / 37

Page 29: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Fault Injection: Clock

• Clock is a vital resource of electronic circuits

• A clock glitch can be used to reduce period of a one to fewoperations

• Reduced period leads to wrong computation i.e. fault

• Again timing is the key

• Constant overclocking can inject faults in critical path

• Capable of bit-flips

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 14 / 37

Page 30: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Fault Injection: Temperature

• Main Idea: Operate in non-nominal conditions

• Equipment: Low cost

• Both cold and hot temperature can be used

• Lacks precision

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 15 / 37

Page 31: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Light

• Main Idea: High energy light to induce faults.

• Modes: intense flash lamps, laser beam

• Equipment: Medium to high cost

• High precision and repeatability

• Needs chip preparation

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 16 / 37

Page 32: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Light

VSS

N+N+

0PMOS

VDD

LASER

observedcurrent

P substrate

a transient can befurther

propagated

Impact of Laser on Transistor

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 16 / 37

Page 33: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Light

VSS

N+N+

0PMOS

VDD

LASER

observedcurrent

P substrate

a transient can befurther

propagated

• Photoelectric effect - when a laser beam with a wavelengthcorresponding to an energy level higher than the siliconbandgap passes through silicon, it creates electrons-hole pairsalong its path.

• If the laser beam passes through the reverse-biased PNjunction of a transistor, charge carriers can be drifted inopposite directions and a current pulse is created. Thiscurrent pulse creates a transient voltage pulse whichpropagates through the combinatorial logic of the IC.

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 16 / 37

Page 34: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Light

• This phenomenon is called a Single Event Transient (SET)

• Fault is induced if a SET propagates through the logic and iscaptured by a register

• Single Event Upset (SEU) occurs when the transient voltageis directly induced into a SRAM or a register: it flips andlocks its state to the opposite one

• It is desired to adjust power for faults but avoiding damages.

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 16 / 37

Page 35: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Light

• Laser can be injected from frontside or backside of the chip

• Frontside is more effective with smaller wavelength

• Modern ICs with several metal layers make it less effective

• Backside injection is more suited with near infrared (NIR ≈1064nm)

• Silicon substrate is transparent to NIR

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 16 / 37

Page 36: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Decapsulation

• Main Idea: Open the package to access the chip

• Equipment: Chemical or Mechanical

• Semi-Invasive Method

• Can be fatal to the chip

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 17 / 37

Page 37: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Back Side Decapsulation (Mechanical)

(i)

(ii)

(iii)

(iv)

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 18 / 37

Page 38: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Back Side Decapsulation (Mechanical)

(i)

(ii)

(iii)

(iv)

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 18 / 37

Page 39: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Front Side Decapsulation (Chemical)

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 19 / 37

Page 40: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Front Side Decapsulation (Chemical)

Molding compond

Substrate Die

Molding compond

SubstrateDie

Molding compond

Substrate Die

Molding compond

Substrate

mill down

Molding compond

Substrate Die

fuming nitric acid

destroyed bounding

wires

fuming nitric acid

Solution 1: Complete unpacking FPGA chip

Die

Die

Solution 2: Partial unpacking FPGA chip

Substrate DieSubstrate DieSubstrate

Solution 3: Up-Side Down Partial unpacking FPGA chip

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 19 / 37

Page 41: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Front Side Decapsulation (Chemical)

Alive Chip

Broken Chip

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 19 / 37

Page 42: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Electromagnetic (EM)

• Main Idea: High energy EM field to induce faults.

• Modes: pulse, harmonics

• Equipment: Medium to high cost

• Less precise than laser

• No need of chip preparation

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 20 / 37

Page 43: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Electromagnetic (EM)

controller board

pulse current in coil

plaintexts ciphertexts

target FPGA board

probe tiptrigger signal

FPGA die

motorized 2D stage

digital glitch

EMFIprobe

glitch generator

Basic EM Injection Setup

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 20 / 37

Page 44: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Electromagnetic (EM)

• Low voltage harmonics constantly bias the target

• Generally used for analog blocks like RNG

• Alternatively intense, short pulses can disturb particularoperation

• Suited for digital blocks like logic/memories

• Can penetrate several metal layers

• Probe design is a key expertise

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 20 / 37

Page 45: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Focused Ion Beam (FIB)

• Main Idea: High energy ion beam to induce faults.

• Equipment: very high cost

• Can make permanent faults

• Very high precision

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 21 / 37

Page 46: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Local Fault Injection: Focused Ion Beam (FIB)

Source: http://mc.missouri.eduS. Bhasin & D. Mukhopadhyay Fault Injection Attacks 21 / 37

Page 47: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

1 Context

2 Fault-Injection Attacks (FIA)

3 Fault-Injection Techniques

4 Fault Protection

5 Conclusions

Page 48: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Fault Protection

• Two Approaches:

• Detection• Detect injection attempts• A recovery mechanism is followed• Normally characterised by detection rate• Overhead widely varies• Information-level methods detect data modification• Circuit-level methods perform sanity checks on physical

parameters

• Prevention• Provable approach• Either corrects or infects a fault• can have huge overheads• Data retrieved by attacker is not exploitable

• A combination of both is often desired

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 22 / 37

Page 49: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Detector Based Protection

• Eligible sensor/detector should sense physical disturbance

• Desirably independent of the target to contain the overhead

• offer higher senstivity to physical disturbance

• Should react in real-time

• Security margin: Power, Space.

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 23 / 37

Page 50: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Detector

• Glitch on power or clock is a common injection technique

• Analog glitch detectors can be in-built into the IC

• Checks for voltage range, clock frequency etc.

• Out of range operation, triggers recovery.

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 24 / 37

Page 51: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Global Detector

• Digital detectors can be integrated

• Monitors underpowering or overclocking

• Calibration can be hard and limiting factor

• Also can be used for EM detection

Source: Despande et al. A Configurable and Lightweight Timing Monitor for

Fault Attack Detection. ISVLSI 2016

Source: Selmane et al. WDDL is Protected Against Setup Time Violation

Attacks. FDTC 2010S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 24 / 37

Page 52: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Laser Detector

• Laser injects high-energy using an intense beam

• Detailed cartography is required to determine PoI

• Integrated detectors can be deployed to detect laser

• Analog detectors are generally based on photodiodes

• Similar functionality can be detected by custom logic

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 25 / 37

Page 53: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

RO-Based Laser Detector

• Ring oscillator (RO) has tendency to stabilise

• A high-energy by laser will disturb RO oscillations

• This forces RO to loose the lock

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 26 / 37

Page 54: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

RO-Based Laser Detector

• RO can be used as laser watchdog

• PLL is used to detect the lock

• PLL is a widely used analog component in circuitries forproviding stable and precise clock source.

• The lock signal of PLL detects laser injection

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 26 / 37

Page 55: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

RO-Based Laser Detector

• High detection rate

• Offers great power and security margin

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 26 / 37

Page 56: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

RO-Based Laser Detector

• PLL can be replaced by all-digital logic• Low-cost, high sensitivity and versatile• Can also be used to detect glitches

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 26 / 37

Page 57: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

RO-Based Laser Detector

• PLL can be replaced by all-digital logic

• Low-cost, high sensitivity and versatile

• Can also be used to detect glitches

PLL-based Sensor (left) vs All-Digital Sensor (right)

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 26 / 37

Page 58: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

EM Detector

• EM also injects high-energy pulses

• Impact area much larger than laser

• Some solution use local glitch detector for EM

• Recent work [Miura et al.] proposed RO+PLL for EMdetection

• Can also replace with digital detector

• Differs in RO routing from laser version

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 27 / 37

Page 59: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

EM Detector

• Security enhanced repeater mode by merging Ref clock withwatchdog clock.

• RO-based internal clock to prevent advanced attacks like FSA

• Area Overhead: 1 LUT (RO) + 1 PLL + Routing resources

Crypto Core

Up Rclk

PLL

Cclk

LSM Locked EMI

Watch-Dog Clock Paths

Down

Crypto Core

Up Rclk

PLL

Cclk

LSM Locked EMI

Watch-Dog Clock Paths

Down

(a) Repeater Configuration (b) Ring-Oscillator (RO) Configuration

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 27 / 37

Page 60: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

EM Detector

36 40.75 45.5 50.25 55 59.65 64.5

0

0.2

0.4

0.6

0.8

1

EM Pulse Injection Power (dBm)

Pro

ba

bili

ty

EM Pulse Detected

Fault Injected

Undetected Faults

Security Margin

Security Margin = 19dBm

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 27 / 37

Page 61: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

EM Detector

5 10 15 20 25 30

5

10

15

20

25

30 0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

5 10 15 20 25 30

5

10

15

20

25

30 0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

(a) Detection Rate (b) Undetected Faults2-D Area Scan (XY axes)

Scan precision ⇒ 1.0µm, Scan Matrix ⇒ 30× 30Undetected Fault Probability ≤ 0.01

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 27 / 37

Page 62: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Complex Package

• IC Packages are becoming more complex

• Multiple component are stacked

• 3-D ICs taking it to next level

• Hard to target inner layers (ex. Memory)

Source: https://regmedia.co.ukS. Bhasin & D. Mukhopadhyay Fault Injection Attacks 28 / 37

Page 63: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Error Detection

• Principle: Application of error detection codes

• Widely studied and used in communications

• Ensures data integrity

• Basic example is parity

• Generally applied on linear operations

• Can have significant overheads

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 29 / 37

Page 64: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Redundancy

• Principle: Repeat and compare

• Several variants: Compute twice, Compute forward andinverse etc.

• Equivalent to duplication in space or time

• Software duplicates in time

• Hardware can duplicate in space or time

• Compute forward and inverse shows more robustness

• At least 2× overhead

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 30 / 37

Page 65: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Redundancy

Redundancy For Fault Detection

Source: Lomne et al. : Fault Attacks and Countermeasures: A SurveyS. Bhasin & D. Mukhopadhyay Fault Injection Attacks 30 / 37

Page 66: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Special Logic Style

• Special representation of data to balance power consumption(ex. WDDL, BCDL)

• Introduced for side-channel protection• Shown to have fault resistance by Selmane et al.• High overheads

Single−rail

Dual−rail

G

G

BT

AT

AF

BF

YB

A

YT

YFG∗

A Basic WDDL Gate with Fault Resistance

Source: Selmane et al. WDDL is Protected Against Setup Time Violation

Attacks. FDTC 2010S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 31 / 37

Page 67: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Software Encoding Protection

• Information redundancy at software level

• Equivalent of special logic styles in software

• Data representation is modified to enable fault detection

• Some variant can also infect faults

• Initially proposed for side-channel protection

• Also demonstrate fault detection capabilities

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 32 / 37

Page 68: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Software Encoding Protection

• Assembly level Code Analyzer for fault resistance• Supports several fault models.

Instruction SetSimulator

Fault InjectionSimulator

Validator

a = 10101010b = 01010101

Input

r4 = 11010110

r4 = 11000110'

Fault Position

bit fliprandom byte faultinstruction skipstuck-at fault

Fault Model

x = 11110011

Output

x = 11110011

Valid/Invalid

?

Output Checker

TargetCode

LDILDIEORST

abr5r4

r4r5r4c...

Source: Breier et al. The other side of the coin: Analyzing software encoding

schemes against fault injection attacks. HOST 2016S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 32 / 37

Page 69: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Software Encoding Protection

Static Device-SpecificEncoding DPL

Fault model XOR LUT XOR XOR

Single bit flip No No No YesDouble bit flip Yes Yes Yes Yes

Single instruction skip No No Yes YesDouble instruction skip Yes No Yes Yes

Stuck-at fault Yes No No No

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 32 / 37

Page 70: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Software Encoding Protection

Stu

ck-A

t

2-I

ns.

Ski

p

1-I

ns.

Ski

p

2-B

it F

lip

1-B

it F

lip

0.0

0.2

0.4

0.6

0.8

1.0Valid

Invalid

Null

Static DPL XOR

Stu

ck-A

t

2-I

ns.

Ski

p

1-I

ns.

Ski

p

2-B

it F

lip

1-B

it F

lip

0.0

0.2

0.4

0.6

0.8

1.0Valid

Invalid

Null

Static Encoding XOR

Stu

ck-A

t

2-I

ns.

Ski

p

1-I

ns.

Ski

p

2-B

it F

lip

1-B

it F

lip

0.0

0.2

0.4

0.6

0.8

1.0Valid

Invalid

Null

Static Encoding LUT

Stu

ck-A

t

2-I

ns.

Ski

p

1-I

ns.

Ski

p

1-B

it F

lip

2-B

it F

lip

3-B

it F

lip

4-B

it F

lip

5-B

it F

lip

6-B

it F

lip

7-B

it F

lip

8-B

it F

lip

0.0

0.2

0.4

0.6

0.8

1.0Valid

Invalid

Null

Device Specific XOR

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 32 / 37

Page 71: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Infection

• Principle: Tamper faulty value

• It prevents attacker from exploiting the fault

• Similar to repeat and compare scheme

• Faulty value is further diffused or randomised.

• At least 2× overhead

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 33 / 37

Page 72: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Control Flow

• Principle: Verify the code execution sequence

• Applies to microcontrollers

• Modern microcontrollers can verify if the code was properlyexecuted

• Verification of executed code signature against precomputedsignature

• Cryptographic hash is a popular candidate for signaturegeneration

• Overhead in terms of signature omputation and comparison

• If the target code is small, hashing can have big overheads

• Simpler signature schemes are then desired

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 34 / 37

Page 73: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Randomization

• Principle: Randomization reduces precision

• Most fault injection requires precise timing

• Timing randomization reduces attack precision and strenthensdetection

• Jitter, dummy operations, shuffling are common techniques

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 35 / 37

Page 74: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

1 Context

2 Fault-Injection Attacks (FIA)

3 Fault-Injection Techniques

4 Fault Protection

5 Conclusions

Page 75: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Conclusion

• Fault attacks are powerful branch of physical attacks

• The techniques vary in precision and cost

• Voltage and clock based are commonly used low-costtechniques

• Laser is most precise but needs high cost and expertise

• EM is a new and interesting alternative

• Faults can be combined with other physical attacks

• A range of countermeasures was presented

• Generally a combination is required to ensure high security

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 36 / 37

Page 76: Fault Injection Attacks - University of Minnesotamath-sa-sara0050/space16/slides/space... · Market: $69.5 Billion (2015) to $263 Billion (2020) ... A clock glitch can be used to

Thank you!Any questions?

S. Bhasin & D. Mukhopadhyay Fault Injection Attacks 37 / 37