SlideShare a Scribd company logo
A2: Analog Malicious Hardware
Authored by:
1. Kaiyuan Yang
2. Matthew Hicks
3. Qing Dong
4. Todd Austin
5. Dennis Sylvester
Department of Electrical Engineering and Computer Science
University of Michigan
Ann Arbor, MI, USA
Paper: http://static1.1.sqspcdn.com/static/f/543048/26931843/1464016046717/A2_SP_2016.pdf
1
Papers We Love #22 (29 Aug 2016) By: Yeo Kheng Meng (yeokm1@gmail.com)
Remember “Reflections on Trusting Trust”?
1984 Turing award lecture by Ken Thompson
• Hack compilers to inject malicious code into output binaries
• Conclusion
• “You can’t trust code that you did not totally create yourself”
• “We can go lower to avoid detection like assembler, loader
or hardware microcode”
2
Threat Model/Paper Abstract
• “we show how a fabrication-time attacker can leverage analog circuits to create a hardware attack
that is small and stealthy
1. “we construct a circuit that uses capacitors to siphon charge from nearby wires as they
transition between digital values. “
2. “When the capacitors fully charge, they deploy an attack that forces a victim flip-flop to a
desired value.”
3. “We weaponize this attack into a remotely-controllable privilege escalation by attaching the
capacitor to a wire controllable and by selecting a victim flip-flop that holds the privilege bit for
our processor.”
4. We implement this attack in an OR1200 processor and fabricate a chip
3
Privilege escalation with maliciously-modified hardware
First some concepts
4
Analog vs Digital Circuits
• Analog
• Continuous Signal
• Signal is a fraction of logic level voltage
• Digital
• Discrete
• Usually binary 0 or 1
• 1: High logic voltage
• 0: Low logic voltage
5
Image from:
https://www.renesas.com/en-us/support/technical-resources/engineer-school/digital-circuits-01-and-circuit-or-circuit-not-circuit.html
What is a Capacitor?
https://en.wikipedia.org/wiki/Capacitor
• A capacitor is a passive two-terminal electrical component used to store electrical energy
temporarily in an electrostatic field.
• AKA temporary small-capacity battery
• Capacitor “leaks”
6
Charge Pump Design
• A charge pump is a kind of DC to DC converter that uses capacitors as energy-storage
elements to create either a higher- or lower-voltage power source.
• Clock/Pulse at regular intervals build up a charge in capacitor
7
What is a flip-flop/latch?
• Circuit that has two stable states and can
be used to store state information.
• Example Set-Reset (SR) latch
• 2 Interconnected NOR Gates
An animated SR latch. Black = 1, White = 0
Value is stored in Q, Q’ is the compliment.
https://en.wikipedia.org/wiki/Flip-flop_(electronics)#SR_NOR_latch
https://en.wikipedia.org/wiki/NOR_gate 8
SR Latch Truth table
S R Q Action Qnext
0 0 Q Hold Q
0 1 0 Reset 0
0 1 1 Reset 0
1 0 0 Set 1
1 0 1 Set 1
1 1 X NA NA
NOR Gate Operation
Input Output
A B A NOR B
0 0 1
0 1 0
1 0 0
1 1 0
Integrated Circuit (IC)
Design Process
• Similar to Printed Circuit Board Design
1. Digital Design Phase
• Logic Simulation with HDL: VHDL/Verilog
• Circuit schematic design
2. Backend Design
• Routing, layout
• Design Rule Check (DRC)
• Graphic Database System II (GDSII) file is generated
• GDSII to ICs, Gerbels to PCBs
3. Fabrication
4. Verification
9
Chip Fabrication Processlayers
• Front End Of Line (FEOL) contains
• Transistors, Capacitors, Resistors, Flip-Flops
• PCB Analogy: Board Components
• Back End Of Line (BEOL) contains
• Layers of tiny Copper Wiring
• PCB Analogy: Trace layers
• Solder-Bump
• Attachment to host PCB or motherboard
10
https://upload.wikimedia.org/wikipedia/commons/e/ee/Cmos-chip_structure_in_2000s_%28en%29.svg
Attack Components
• Trigger
• Monitors wires and states till the moment to activate payload
• Payload
• Malicious action accomplished when triggered
11
Target Platform
• OpenRISC 1200 processor
• Open source CPU
• Uses 32-bit OR1K instruction set
• 128KB instruction cache
• Implemented as FPGA using VHDL
12
OR1200 Supervision Register
• SM bit
• Determines if current process is user or supervisor
• 0 for usermode, 1 for supervisor mode
• OV bit
• If overflow occurred during last arithmetic operation
• 0 for no overflow, 1 for overflow
13
Page 29-30 of OpenRISC 1000 Architecture Manual, Architecture Version 1.1, Document Revision 0
https://github.com/openrisc/doc/blob/master/openrisc-arch-1.1-rev0.pdf
Attack model
1. Show Analog Circuits with a capacitor can create attacks
2. Pick victim wires that will trigger attacks
3. When the capacitors fully charge, they deploy an attack that
changes the flip-flop that holds the privilege bit
4. Stealthily implement this attack in an OR1200 processor
5. Run malicious code to activate the attack
14
15
1. Single-stage Analog trigger circuit behaviour model
• Based on charge-pump design
• When Cap Voltage > Threshold, trigger output
• Trigger Input: Victim Wire
• Trigger Time: Time taken to
activate trigger at certain
trigger frequency
• Retention Time: Time taken
to reset trigger after input
stops
16
1. Multi-stage Analog trigger circuit behaviour model
• Lower probability of false trigger activation
• Normal operations/benchmarks can “accidentally” trigger a wire
• Software flexibility
• Multiple attack vectors
2. Single-stage trigger
victim wire selection
• We use the overflow flag wire as trigger
17
Page 29-30 of OpenRISC 1000 Architecture Manual, Architecture Version 1.1, Document Revision 0
https://github.com/openrisc/doc/blob/master/openrisc-arch-1.1-rev0.pdf
2. Two-stage trigger
victim wire selection
• Trigger 1: Signed Division wire
• Trigger 2: Unsigned Division wire
18
Page 29-30 of OpenRISC 1000 Architecture Manual, Architecture Version 1.1, Document Revision 0
https://github.com/openrisc/doc/blob/master/openrisc-arch-1.1-rev0.pdf
3. The Attack Payload
• Overwrite register value containing “privilege/supervisor bit”
• Usermode process now given superuser privileges
19
Reset Latch (Active-Low) Set Latch (Active-High)
4. Attack insertion vector?
• Can be done anywhere along the chain
• Adding in Digital Design Phase?
• Easiest to implement on schematic level
• Easily detected during verification checks
• Tight security of designer’s machines
• Backend?
• Moderate difficulty but still able to find insertion location
• Can be discovered by SPICE simulation
• Tight security of designer’s machines
• Final choice: Fabrication
• Relatively lower security at foundry level
• Requires insider access to GDSII between backend and fabrication
• Tough to detect
20
4. Stealth implementation on OR1200
21
• CPU die size is 2.1mm2
• A2 Analog attack
• 1 gate, 13.4um2
• Digital counter-based equivalent of A2
• 91 cells or gates, 382um2
5. Pseudocode for single-stage trigger attack
22Page 54 of OpenRISC 1000 Architecture Manual, Architecture Version 1.1, Document Revision 0
https://github.com/openrisc/doc/blob/master/openrisc-arch-1.1-rev0.pdf
Divide by 0
5. Pseudocode for two-stage trigger attack
23
Page 9 of the Paper
Test Results
• It works!
• Voltage range: 0.8V to 1.2V
• Temperature range: -25°C to 100°C
• Result Trends
• ↑ temperature -> ↑ capacitor leakage -> ↑ trigger cycles
• ↑ voltage -> ↑ rate of capacitor accumulation -> ↓ trigger cycles
24
Possible Defences?
• Side Channel?
• Power difference of extra gate in 100000 gates is negligible
• Visual inspection?
• Detecting anomalous 13.4um2 circuitry in 2.1mm2 die size is impractical
• Split Manufacturing?
• Trusted and expensive
• Untrusted and cheaper
25
Intuitive Split Manufacturing strategy
• Goal: Obfuscate design from untrusted fabricator by
withholding some wires on upper layers
• BUT possible to reverse engineer 96% of “some wires” using
knowledge of layout tools
• J. Rajendran, O. Sinanoglu, and R. Karri, “Is split manufacturing secure?” in
Design, Automation and Test in Europe, ser. DATE, 2013, pp. 1259–1264. 26
Trusted Fabricator
And
Assembler
Untrusted/Cheaper
Fabricator
Design
House
GDSII of gates and other wires
GDSII of some wires
Assembled chip
Unfinished bottom portion
Proposed Split Manufacturing strategy
• Split at Level 1
• Untrusted Manufacturer does not make any gates
• However…
• Expensive $$$ to join two copper layers at low layers
• No such process exists 27
Trusted Fabricator
And
Assembler
Untrusted/Cheaper
Fabricator
Design
House
Assembled chip
FEOL + Metal Level 1
BEOL – Metal Level 1
Unfinished top portion
Potential for x86 attacks?
• Much harder to detect and easier to implement than on OR1200
• x86 has more registers, A2 only needs one
• x86 has more victim wires
• “The only aspect of scaling to an x86-class processor that we anticipate as a
challenge is maintaining controllability as there are many redundant functional
units inside an x86, so a trigger would either need to tap equivalent wires in all
functional units or be open to some probabilistic effects.”
28

More Related Content

What's hot

OpenStack Neutron new developers on boarding
OpenStack Neutron new developers on boardingOpenStack Neutron new developers on boarding
OpenStack Neutron new developers on boarding
Miguel Lavalle
 
Networking 101 AWS - VPCs, Subnets, NAT Gateways, etc
Networking 101 AWS - VPCs, Subnets, NAT Gateways, etcNetworking 101 AWS - VPCs, Subnets, NAT Gateways, etc
Networking 101 AWS - VPCs, Subnets, NAT Gateways, etc
Stenio Ferreira
 
Log and control all service-to-service traffic in one place (Kelvin Wong)
Log and control all service-to-service traffic in one place (Kelvin Wong)Log and control all service-to-service traffic in one place (Kelvin Wong)
Log and control all service-to-service traffic in one place (Kelvin Wong)
London Microservices
 
Intro to Hardware Firmware Hacking
Intro to Hardware Firmware HackingIntro to Hardware Firmware Hacking
Intro to Hardware Firmware Hacking
Andrew Freeborn
 
Whats new in neutron for open stack havana
Whats new in neutron for open stack havanaWhats new in neutron for open stack havana
Whats new in neutron for open stack havana
Kamesh Pemmaraju
 
Alexander Timorin, Dmitry Efanov. Industrial protocols for pentesters
Alexander Timorin, Dmitry Efanov. Industrial protocols for pentestersAlexander Timorin, Dmitry Efanov. Industrial protocols for pentesters
Alexander Timorin, Dmitry Efanov. Industrial protocols for pentestersPositive Hack Days
 
BlueHat v18 || Memory resident implants - code injection is alive and well
BlueHat v18 || Memory resident implants - code injection is alive and wellBlueHat v18 || Memory resident implants - code injection is alive and well
BlueHat v18 || Memory resident implants - code injection is alive and well
BlueHat Security Conference
 
ARM uVisor Debug Refinement Project(debugging facility improvements)
ARM uVisor Debug Refinement Project(debugging facility improvements)ARM uVisor Debug Refinement Project(debugging facility improvements)
ARM uVisor Debug Refinement Project(debugging facility improvements)
家榮 張
 
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
James Denton
 
OpenStack Networking
OpenStack NetworkingOpenStack Networking
OpenStack Networking
Ilya Shakhat
 
"One network to rule them all" - OpenStack Summit Austin 2016
"One network to rule them all" - OpenStack Summit Austin 2016"One network to rule them all" - OpenStack Summit Austin 2016
"One network to rule them all" - OpenStack Summit Austin 2016
Phil Estes
 
Bridges and Tunnels: A Drive Through OpenStack Networking
Bridges and Tunnels: A Drive Through OpenStack NetworkingBridges and Tunnels: A Drive Through OpenStack Networking
Bridges and Tunnels: A Drive Through OpenStack Networking
markmcclain
 
OVN: Scaleable Virtual Networking for Open vSwitch
OVN: Scaleable Virtual Networking for Open vSwitchOVN: Scaleable Virtual Networking for Open vSwitch
OVN: Scaleable Virtual Networking for Open vSwitch
mestery
 
Safety vs Security: How to Create Insecure Safety-Critical System
Safety vs Security: How to Create Insecure Safety-Critical SystemSafety vs Security: How to Create Insecure Safety-Critical System
Safety vs Security: How to Create Insecure Safety-Critical System
Aleksandr Timorin
 
How to write a Neutron Plugin - if you really need to
How to write a Neutron Plugin - if you really need toHow to write a Neutron Plugin - if you really need to
How to write a Neutron Plugin - if you really need to
salv_orlando
 
Why are we still vulnerable to Side Channel Attacks?
Why are we still vulnerable to Side Channel Attacks?Why are we still vulnerable to Side Channel Attacks?
Why are we still vulnerable to Side Channel Attacks?
Riscure
 
OpenStack Neutron Advanced Services by Akanda
OpenStack Neutron Advanced Services by AkandaOpenStack Neutron Advanced Services by Akanda
OpenStack Neutron Advanced Services by Akanda
Sean Roberts
 
Openstack Networking and ML2
Openstack Networking and ML2Openstack Networking and ML2
Openstack Networking and ML2
Szlovencsak Attila
 
OpenStack networking (Neutron)
OpenStack networking (Neutron) OpenStack networking (Neutron)
OpenStack networking (Neutron)
CREATE-NET
 
OpenStack Meetup - SDN
OpenStack Meetup - SDNOpenStack Meetup - SDN
OpenStack Meetup - SDN
Szilvia Racz
 

What's hot (20)

OpenStack Neutron new developers on boarding
OpenStack Neutron new developers on boardingOpenStack Neutron new developers on boarding
OpenStack Neutron new developers on boarding
 
Networking 101 AWS - VPCs, Subnets, NAT Gateways, etc
Networking 101 AWS - VPCs, Subnets, NAT Gateways, etcNetworking 101 AWS - VPCs, Subnets, NAT Gateways, etc
Networking 101 AWS - VPCs, Subnets, NAT Gateways, etc
 
Log and control all service-to-service traffic in one place (Kelvin Wong)
Log and control all service-to-service traffic in one place (Kelvin Wong)Log and control all service-to-service traffic in one place (Kelvin Wong)
Log and control all service-to-service traffic in one place (Kelvin Wong)
 
Intro to Hardware Firmware Hacking
Intro to Hardware Firmware HackingIntro to Hardware Firmware Hacking
Intro to Hardware Firmware Hacking
 
Whats new in neutron for open stack havana
Whats new in neutron for open stack havanaWhats new in neutron for open stack havana
Whats new in neutron for open stack havana
 
Alexander Timorin, Dmitry Efanov. Industrial protocols for pentesters
Alexander Timorin, Dmitry Efanov. Industrial protocols for pentestersAlexander Timorin, Dmitry Efanov. Industrial protocols for pentesters
Alexander Timorin, Dmitry Efanov. Industrial protocols for pentesters
 
BlueHat v18 || Memory resident implants - code injection is alive and well
BlueHat v18 || Memory resident implants - code injection is alive and wellBlueHat v18 || Memory resident implants - code injection is alive and well
BlueHat v18 || Memory resident implants - code injection is alive and well
 
ARM uVisor Debug Refinement Project(debugging facility improvements)
ARM uVisor Debug Refinement Project(debugging facility improvements)ARM uVisor Debug Refinement Project(debugging facility improvements)
ARM uVisor Debug Refinement Project(debugging facility improvements)
 
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
 
OpenStack Networking
OpenStack NetworkingOpenStack Networking
OpenStack Networking
 
"One network to rule them all" - OpenStack Summit Austin 2016
"One network to rule them all" - OpenStack Summit Austin 2016"One network to rule them all" - OpenStack Summit Austin 2016
"One network to rule them all" - OpenStack Summit Austin 2016
 
Bridges and Tunnels: A Drive Through OpenStack Networking
Bridges and Tunnels: A Drive Through OpenStack NetworkingBridges and Tunnels: A Drive Through OpenStack Networking
Bridges and Tunnels: A Drive Through OpenStack Networking
 
OVN: Scaleable Virtual Networking for Open vSwitch
OVN: Scaleable Virtual Networking for Open vSwitchOVN: Scaleable Virtual Networking for Open vSwitch
OVN: Scaleable Virtual Networking for Open vSwitch
 
Safety vs Security: How to Create Insecure Safety-Critical System
Safety vs Security: How to Create Insecure Safety-Critical SystemSafety vs Security: How to Create Insecure Safety-Critical System
Safety vs Security: How to Create Insecure Safety-Critical System
 
How to write a Neutron Plugin - if you really need to
How to write a Neutron Plugin - if you really need toHow to write a Neutron Plugin - if you really need to
How to write a Neutron Plugin - if you really need to
 
Why are we still vulnerable to Side Channel Attacks?
Why are we still vulnerable to Side Channel Attacks?Why are we still vulnerable to Side Channel Attacks?
Why are we still vulnerable to Side Channel Attacks?
 
OpenStack Neutron Advanced Services by Akanda
OpenStack Neutron Advanced Services by AkandaOpenStack Neutron Advanced Services by Akanda
OpenStack Neutron Advanced Services by Akanda
 
Openstack Networking and ML2
Openstack Networking and ML2Openstack Networking and ML2
Openstack Networking and ML2
 
OpenStack networking (Neutron)
OpenStack networking (Neutron) OpenStack networking (Neutron)
OpenStack networking (Neutron)
 
OpenStack Meetup - SDN
OpenStack Meetup - SDNOpenStack Meetup - SDN
OpenStack Meetup - SDN
 

Similar to A2: Analog Malicious Hardware

Chapter 10.pptx
Chapter 10.pptxChapter 10.pptx
Chapter 10.pptx
WaleedHussain30
 
DIY Home Weather Station (Devoxx Poland 2023)
DIY Home Weather Station (Devoxx Poland 2023)DIY Home Weather Station (Devoxx Poland 2023)
DIY Home Weather Station (Devoxx Poland 2023)
Ryan Cuprak
 
Introduction to PCB Design (Eagle)
Introduction to PCB Design (Eagle)Introduction to PCB Design (Eagle)
Introduction to PCB Design (Eagle)
yeokm1
 
DIGITAL IC TESTER USING UNIVERSAL GATES.pptx
DIGITAL IC TESTER USING UNIVERSAL GATES.pptxDIGITAL IC TESTER USING UNIVERSAL GATES.pptx
DIGITAL IC TESTER USING UNIVERSAL GATES.pptx
Ashish Sadavarti
 
RTOS based Confidential Area Security System
RTOS based Confidential Area Security SystemRTOS based Confidential Area Security System
RTOS based Confidential Area Security System
ajinky gadewar
 
chp3-Sensors, Actuators, and Microcontroller
chp3-Sensors, Actuators, and Microcontrollerchp3-Sensors, Actuators, and Microcontroller
chp3-Sensors, Actuators, and Microcontroller
ssuser06ea42
 
Zigbee based trolley cart access system using rfid
Zigbee based trolley cart access system using rfidZigbee based trolley cart access system using rfid
Zigbee based trolley cart access system using rfid
Sam Joey
 
Scada deep inside: protocols and security mechanisms
Scada deep inside: protocols and security mechanismsScada deep inside: protocols and security mechanisms
Scada deep inside: protocols and security mechanismsAleksandr Timorin
 
ATmega 16
ATmega 16ATmega 16
ATmega 16
Rahul Singh
 
Networking of multiple microcontrollers
Networking of multiple microcontrollersNetworking of multiple microcontrollers
Networking of multiple microcontrollers
Edgefxkits & Solutions
 
L3-.pptx
L3-.pptxL3-.pptx
L3-.pptx
asdq4
 
Silicon to software share
Silicon to software shareSilicon to software share
Silicon to software share
Narendra Patel
 
Ajal mod 1
Ajal mod 1Ajal mod 1
Ajal mod 1
AJAL A J
 
major project ppt 27-4-16
major project ppt 27-4-16major project ppt 27-4-16
major project ppt 27-4-16rafiya begum
 
Automatic Power Factor Correction Using Arduino Uno
Automatic Power Factor Correction Using Arduino UnoAutomatic Power Factor Correction Using Arduino Uno
Automatic Power Factor Correction Using Arduino Uno
VineetKumar508
 
InternEncoderPresentation
InternEncoderPresentationInternEncoderPresentation
InternEncoderPresentationClayton Monahan
 
BsidesSP: Pentesting in SDN - Owning the Controllers
BsidesSP: Pentesting in SDN - Owning the ControllersBsidesSP: Pentesting in SDN - Owning the Controllers
BsidesSP: Pentesting in SDN - Owning the Controllers
Roberto Soares
 

Similar to A2: Analog Malicious Hardware (20)

Chapter 10.pptx
Chapter 10.pptxChapter 10.pptx
Chapter 10.pptx
 
DIY Home Weather Station (Devoxx Poland 2023)
DIY Home Weather Station (Devoxx Poland 2023)DIY Home Weather Station (Devoxx Poland 2023)
DIY Home Weather Station (Devoxx Poland 2023)
 
Project_updated
Project_updatedProject_updated
Project_updated
 
Introduction to PCB Design (Eagle)
Introduction to PCB Design (Eagle)Introduction to PCB Design (Eagle)
Introduction to PCB Design (Eagle)
 
DIGITAL IC TESTER USING UNIVERSAL GATES.pptx
DIGITAL IC TESTER USING UNIVERSAL GATES.pptxDIGITAL IC TESTER USING UNIVERSAL GATES.pptx
DIGITAL IC TESTER USING UNIVERSAL GATES.pptx
 
Akash
AkashAkash
Akash
 
RTOS based Confidential Area Security System
RTOS based Confidential Area Security SystemRTOS based Confidential Area Security System
RTOS based Confidential Area Security System
 
chp3-Sensors, Actuators, and Microcontroller
chp3-Sensors, Actuators, and Microcontrollerchp3-Sensors, Actuators, and Microcontroller
chp3-Sensors, Actuators, and Microcontroller
 
Zigbee based trolley cart access system using rfid
Zigbee based trolley cart access system using rfidZigbee based trolley cart access system using rfid
Zigbee based trolley cart access system using rfid
 
Scada deep inside: protocols and security mechanisms
Scada deep inside: protocols and security mechanismsScada deep inside: protocols and security mechanisms
Scada deep inside: protocols and security mechanisms
 
ATmega 16
ATmega 16ATmega 16
ATmega 16
 
Networking of multiple microcontrollers
Networking of multiple microcontrollersNetworking of multiple microcontrollers
Networking of multiple microcontrollers
 
L3-.pptx
L3-.pptxL3-.pptx
L3-.pptx
 
Silicon to software share
Silicon to software shareSilicon to software share
Silicon to software share
 
Vlsi lab
Vlsi labVlsi lab
Vlsi lab
 
Ajal mod 1
Ajal mod 1Ajal mod 1
Ajal mod 1
 
major project ppt 27-4-16
major project ppt 27-4-16major project ppt 27-4-16
major project ppt 27-4-16
 
Automatic Power Factor Correction Using Arduino Uno
Automatic Power Factor Correction Using Arduino UnoAutomatic Power Factor Correction Using Arduino Uno
Automatic Power Factor Correction Using Arduino Uno
 
InternEncoderPresentation
InternEncoderPresentationInternEncoderPresentation
InternEncoderPresentation
 
BsidesSP: Pentesting in SDN - Owning the Controllers
BsidesSP: Pentesting in SDN - Owning the ControllersBsidesSP: Pentesting in SDN - Owning the Controllers
BsidesSP: Pentesting in SDN - Owning the Controllers
 

More from yeokm1

I became a Private Pilot and this is my story
I became a Private Pilot and this is my storyI became a Private Pilot and this is my story
I became a Private Pilot and this is my story
yeokm1
 
What's inside a Cessna 172 and flying a light plane
What's inside a Cessna 172 and flying a light planeWhat's inside a Cessna 172 and flying a light plane
What's inside a Cessna 172 and flying a light plane
yeokm1
 
Speaking at Tech meetups/conferences for Junior Devs
Speaking at Tech meetups/conferences for Junior DevsSpeaking at Tech meetups/conferences for Junior Devs
Speaking at Tech meetups/conferences for Junior Devs
yeokm1
 
Reflections on Trusting Trust for Go
Reflections on Trusting Trust for GoReflections on Trusting Trust for Go
Reflections on Trusting Trust for Go
yeokm1
 
Meltdown and Spectre
Meltdown and SpectreMeltdown and Spectre
Meltdown and Spectre
yeokm1
 
Gentoo on a 486
Gentoo on a 486Gentoo on a 486
Gentoo on a 486
yeokm1
 
BLE Localiser (Full) for iOS Dev Scout
BLE Localiser (Full) for iOS Dev ScoutBLE Localiser (Full) for iOS Dev Scout
BLE Localiser (Full) for iOS Dev Scout
yeokm1
 
BLE Localiser for iOS Conf SG 2017
BLE Localiser for iOS Conf SG 2017BLE Localiser for iOS Conf SG 2017
BLE Localiser for iOS Conf SG 2017
yeokm1
 
Repair Kopitiam Specialty Tools (Part 2): Short Circuit Limiter
 Repair Kopitiam Specialty Tools (Part 2): Short Circuit Limiter Repair Kopitiam Specialty Tools (Part 2): Short Circuit Limiter
Repair Kopitiam Specialty Tools (Part 2): Short Circuit Limiter
yeokm1
 
PCB Business Card (Singapore Power)
PCB Business Card (Singapore Power)PCB Business Card (Singapore Power)
PCB Business Card (Singapore Power)
yeokm1
 
SP Auto Door Unlocker
SP Auto Door UnlockerSP Auto Door Unlocker
SP Auto Door Unlocker
yeokm1
 
SP IoT Doorbell
SP IoT DoorbellSP IoT Doorbell
SP IoT Doorbell
yeokm1
 
Distance Machine Locker
Distance Machine LockerDistance Machine Locker
Distance Machine Locker
yeokm1
 
A Science Project: Building a sound card based on the Covox Speech Thing
A Science Project: Building a sound card based on the Covox Speech ThingA Science Project: Building a sound card based on the Covox Speech Thing
A Science Project: Building a sound card based on the Covox Speech Thing
yeokm1
 
A Science Project: Swift Serial Chat
A Science Project: Swift Serial ChatA Science Project: Swift Serial Chat
A Science Project: Swift Serial Chat
yeokm1
 
The slide rule
The slide ruleThe slide rule
The slide rule
yeokm1
 
Windows 3.1 (WFW) on vintage and modern hardware
Windows 3.1 (WFW) on vintage and modern hardwareWindows 3.1 (WFW) on vintage and modern hardware
Windows 3.1 (WFW) on vintage and modern hardware
yeokm1
 
Repair Kopitiam Circuit Breaker Training
Repair Kopitiam Circuit Breaker TrainingRepair Kopitiam Circuit Breaker Training
Repair Kopitiam Circuit Breaker Training
yeokm1
 
Getting Started with Raspberry Pi
Getting Started with Raspberry PiGetting Started with Raspberry Pi
Getting Started with Raspberry Pi
yeokm1
 
My Life as a Maker
My Life as a MakerMy Life as a Maker
My Life as a Maker
yeokm1
 

More from yeokm1 (20)

I became a Private Pilot and this is my story
I became a Private Pilot and this is my storyI became a Private Pilot and this is my story
I became a Private Pilot and this is my story
 
What's inside a Cessna 172 and flying a light plane
What's inside a Cessna 172 and flying a light planeWhat's inside a Cessna 172 and flying a light plane
What's inside a Cessna 172 and flying a light plane
 
Speaking at Tech meetups/conferences for Junior Devs
Speaking at Tech meetups/conferences for Junior DevsSpeaking at Tech meetups/conferences for Junior Devs
Speaking at Tech meetups/conferences for Junior Devs
 
Reflections on Trusting Trust for Go
Reflections on Trusting Trust for GoReflections on Trusting Trust for Go
Reflections on Trusting Trust for Go
 
Meltdown and Spectre
Meltdown and SpectreMeltdown and Spectre
Meltdown and Spectre
 
Gentoo on a 486
Gentoo on a 486Gentoo on a 486
Gentoo on a 486
 
BLE Localiser (Full) for iOS Dev Scout
BLE Localiser (Full) for iOS Dev ScoutBLE Localiser (Full) for iOS Dev Scout
BLE Localiser (Full) for iOS Dev Scout
 
BLE Localiser for iOS Conf SG 2017
BLE Localiser for iOS Conf SG 2017BLE Localiser for iOS Conf SG 2017
BLE Localiser for iOS Conf SG 2017
 
Repair Kopitiam Specialty Tools (Part 2): Short Circuit Limiter
 Repair Kopitiam Specialty Tools (Part 2): Short Circuit Limiter Repair Kopitiam Specialty Tools (Part 2): Short Circuit Limiter
Repair Kopitiam Specialty Tools (Part 2): Short Circuit Limiter
 
PCB Business Card (Singapore Power)
PCB Business Card (Singapore Power)PCB Business Card (Singapore Power)
PCB Business Card (Singapore Power)
 
SP Auto Door Unlocker
SP Auto Door UnlockerSP Auto Door Unlocker
SP Auto Door Unlocker
 
SP IoT Doorbell
SP IoT DoorbellSP IoT Doorbell
SP IoT Doorbell
 
Distance Machine Locker
Distance Machine LockerDistance Machine Locker
Distance Machine Locker
 
A Science Project: Building a sound card based on the Covox Speech Thing
A Science Project: Building a sound card based on the Covox Speech ThingA Science Project: Building a sound card based on the Covox Speech Thing
A Science Project: Building a sound card based on the Covox Speech Thing
 
A Science Project: Swift Serial Chat
A Science Project: Swift Serial ChatA Science Project: Swift Serial Chat
A Science Project: Swift Serial Chat
 
The slide rule
The slide ruleThe slide rule
The slide rule
 
Windows 3.1 (WFW) on vintage and modern hardware
Windows 3.1 (WFW) on vintage and modern hardwareWindows 3.1 (WFW) on vintage and modern hardware
Windows 3.1 (WFW) on vintage and modern hardware
 
Repair Kopitiam Circuit Breaker Training
Repair Kopitiam Circuit Breaker TrainingRepair Kopitiam Circuit Breaker Training
Repair Kopitiam Circuit Breaker Training
 
Getting Started with Raspberry Pi
Getting Started with Raspberry PiGetting Started with Raspberry Pi
Getting Started with Raspberry Pi
 
My Life as a Maker
My Life as a MakerMy Life as a Maker
My Life as a Maker
 

Recently uploaded

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 

Recently uploaded (20)

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 

A2: Analog Malicious Hardware

  • 1. A2: Analog Malicious Hardware Authored by: 1. Kaiyuan Yang 2. Matthew Hicks 3. Qing Dong 4. Todd Austin 5. Dennis Sylvester Department of Electrical Engineering and Computer Science University of Michigan Ann Arbor, MI, USA Paper: http://static1.1.sqspcdn.com/static/f/543048/26931843/1464016046717/A2_SP_2016.pdf 1 Papers We Love #22 (29 Aug 2016) By: Yeo Kheng Meng (yeokm1@gmail.com)
  • 2. Remember “Reflections on Trusting Trust”? 1984 Turing award lecture by Ken Thompson • Hack compilers to inject malicious code into output binaries • Conclusion • “You can’t trust code that you did not totally create yourself” • “We can go lower to avoid detection like assembler, loader or hardware microcode” 2
  • 3. Threat Model/Paper Abstract • “we show how a fabrication-time attacker can leverage analog circuits to create a hardware attack that is small and stealthy 1. “we construct a circuit that uses capacitors to siphon charge from nearby wires as they transition between digital values. “ 2. “When the capacitors fully charge, they deploy an attack that forces a victim flip-flop to a desired value.” 3. “We weaponize this attack into a remotely-controllable privilege escalation by attaching the capacitor to a wire controllable and by selecting a victim flip-flop that holds the privilege bit for our processor.” 4. We implement this attack in an OR1200 processor and fabricate a chip 3 Privilege escalation with maliciously-modified hardware
  • 5. Analog vs Digital Circuits • Analog • Continuous Signal • Signal is a fraction of logic level voltage • Digital • Discrete • Usually binary 0 or 1 • 1: High logic voltage • 0: Low logic voltage 5 Image from: https://www.renesas.com/en-us/support/technical-resources/engineer-school/digital-circuits-01-and-circuit-or-circuit-not-circuit.html
  • 6. What is a Capacitor? https://en.wikipedia.org/wiki/Capacitor • A capacitor is a passive two-terminal electrical component used to store electrical energy temporarily in an electrostatic field. • AKA temporary small-capacity battery • Capacitor “leaks” 6
  • 7. Charge Pump Design • A charge pump is a kind of DC to DC converter that uses capacitors as energy-storage elements to create either a higher- or lower-voltage power source. • Clock/Pulse at regular intervals build up a charge in capacitor 7
  • 8. What is a flip-flop/latch? • Circuit that has two stable states and can be used to store state information. • Example Set-Reset (SR) latch • 2 Interconnected NOR Gates An animated SR latch. Black = 1, White = 0 Value is stored in Q, Q’ is the compliment. https://en.wikipedia.org/wiki/Flip-flop_(electronics)#SR_NOR_latch https://en.wikipedia.org/wiki/NOR_gate 8 SR Latch Truth table S R Q Action Qnext 0 0 Q Hold Q 0 1 0 Reset 0 0 1 1 Reset 0 1 0 0 Set 1 1 0 1 Set 1 1 1 X NA NA NOR Gate Operation Input Output A B A NOR B 0 0 1 0 1 0 1 0 0 1 1 0
  • 9. Integrated Circuit (IC) Design Process • Similar to Printed Circuit Board Design 1. Digital Design Phase • Logic Simulation with HDL: VHDL/Verilog • Circuit schematic design 2. Backend Design • Routing, layout • Design Rule Check (DRC) • Graphic Database System II (GDSII) file is generated • GDSII to ICs, Gerbels to PCBs 3. Fabrication 4. Verification 9
  • 10. Chip Fabrication Processlayers • Front End Of Line (FEOL) contains • Transistors, Capacitors, Resistors, Flip-Flops • PCB Analogy: Board Components • Back End Of Line (BEOL) contains • Layers of tiny Copper Wiring • PCB Analogy: Trace layers • Solder-Bump • Attachment to host PCB or motherboard 10 https://upload.wikimedia.org/wikipedia/commons/e/ee/Cmos-chip_structure_in_2000s_%28en%29.svg
  • 11. Attack Components • Trigger • Monitors wires and states till the moment to activate payload • Payload • Malicious action accomplished when triggered 11
  • 12. Target Platform • OpenRISC 1200 processor • Open source CPU • Uses 32-bit OR1K instruction set • 128KB instruction cache • Implemented as FPGA using VHDL 12
  • 13. OR1200 Supervision Register • SM bit • Determines if current process is user or supervisor • 0 for usermode, 1 for supervisor mode • OV bit • If overflow occurred during last arithmetic operation • 0 for no overflow, 1 for overflow 13 Page 29-30 of OpenRISC 1000 Architecture Manual, Architecture Version 1.1, Document Revision 0 https://github.com/openrisc/doc/blob/master/openrisc-arch-1.1-rev0.pdf
  • 14. Attack model 1. Show Analog Circuits with a capacitor can create attacks 2. Pick victim wires that will trigger attacks 3. When the capacitors fully charge, they deploy an attack that changes the flip-flop that holds the privilege bit 4. Stealthily implement this attack in an OR1200 processor 5. Run malicious code to activate the attack 14
  • 15. 15 1. Single-stage Analog trigger circuit behaviour model • Based on charge-pump design • When Cap Voltage > Threshold, trigger output • Trigger Input: Victim Wire • Trigger Time: Time taken to activate trigger at certain trigger frequency • Retention Time: Time taken to reset trigger after input stops
  • 16. 16 1. Multi-stage Analog trigger circuit behaviour model • Lower probability of false trigger activation • Normal operations/benchmarks can “accidentally” trigger a wire • Software flexibility • Multiple attack vectors
  • 17. 2. Single-stage trigger victim wire selection • We use the overflow flag wire as trigger 17 Page 29-30 of OpenRISC 1000 Architecture Manual, Architecture Version 1.1, Document Revision 0 https://github.com/openrisc/doc/blob/master/openrisc-arch-1.1-rev0.pdf
  • 18. 2. Two-stage trigger victim wire selection • Trigger 1: Signed Division wire • Trigger 2: Unsigned Division wire 18 Page 29-30 of OpenRISC 1000 Architecture Manual, Architecture Version 1.1, Document Revision 0 https://github.com/openrisc/doc/blob/master/openrisc-arch-1.1-rev0.pdf
  • 19. 3. The Attack Payload • Overwrite register value containing “privilege/supervisor bit” • Usermode process now given superuser privileges 19 Reset Latch (Active-Low) Set Latch (Active-High)
  • 20. 4. Attack insertion vector? • Can be done anywhere along the chain • Adding in Digital Design Phase? • Easiest to implement on schematic level • Easily detected during verification checks • Tight security of designer’s machines • Backend? • Moderate difficulty but still able to find insertion location • Can be discovered by SPICE simulation • Tight security of designer’s machines • Final choice: Fabrication • Relatively lower security at foundry level • Requires insider access to GDSII between backend and fabrication • Tough to detect 20
  • 21. 4. Stealth implementation on OR1200 21 • CPU die size is 2.1mm2 • A2 Analog attack • 1 gate, 13.4um2 • Digital counter-based equivalent of A2 • 91 cells or gates, 382um2
  • 22. 5. Pseudocode for single-stage trigger attack 22Page 54 of OpenRISC 1000 Architecture Manual, Architecture Version 1.1, Document Revision 0 https://github.com/openrisc/doc/blob/master/openrisc-arch-1.1-rev0.pdf Divide by 0
  • 23. 5. Pseudocode for two-stage trigger attack 23 Page 9 of the Paper
  • 24. Test Results • It works! • Voltage range: 0.8V to 1.2V • Temperature range: -25°C to 100°C • Result Trends • ↑ temperature -> ↑ capacitor leakage -> ↑ trigger cycles • ↑ voltage -> ↑ rate of capacitor accumulation -> ↓ trigger cycles 24
  • 25. Possible Defences? • Side Channel? • Power difference of extra gate in 100000 gates is negligible • Visual inspection? • Detecting anomalous 13.4um2 circuitry in 2.1mm2 die size is impractical • Split Manufacturing? • Trusted and expensive • Untrusted and cheaper 25
  • 26. Intuitive Split Manufacturing strategy • Goal: Obfuscate design from untrusted fabricator by withholding some wires on upper layers • BUT possible to reverse engineer 96% of “some wires” using knowledge of layout tools • J. Rajendran, O. Sinanoglu, and R. Karri, “Is split manufacturing secure?” in Design, Automation and Test in Europe, ser. DATE, 2013, pp. 1259–1264. 26 Trusted Fabricator And Assembler Untrusted/Cheaper Fabricator Design House GDSII of gates and other wires GDSII of some wires Assembled chip Unfinished bottom portion
  • 27. Proposed Split Manufacturing strategy • Split at Level 1 • Untrusted Manufacturer does not make any gates • However… • Expensive $$$ to join two copper layers at low layers • No such process exists 27 Trusted Fabricator And Assembler Untrusted/Cheaper Fabricator Design House Assembled chip FEOL + Metal Level 1 BEOL – Metal Level 1 Unfinished top portion
  • 28. Potential for x86 attacks? • Much harder to detect and easier to implement than on OR1200 • x86 has more registers, A2 only needs one • x86 has more victim wires • “The only aspect of scaling to an x86-class processor that we anticipate as a challenge is maintaining controllability as there are many redundant functional units inside an x86, so a trigger would either need to tap equivalent wires in all functional units or be open to some probabilistic effects.” 28