SlideShare a Scribd company logo
1 of 146
Download to read offline
1
Secure boot under attack:
Simulation to enhance fault injection & defenses
Niek Timmers
Principal Security Analyst
niek@riscure.com / @tieknimmers
Martijn Bogaard
Senior Security Analyst
martijn@riscure.com / @jmartijnb
2
Today’s agenda
3
Today’s agenda
• Crash course secure boot on embedded devices
4
Today’s agenda
• Crash course secure boot on embedded devices
• Crash course fault injection (FI) attacks
5
Today’s agenda
• Crash course secure boot on embedded devices
• Crash course fault injection (FI) attacks
• Using simulation to identify FI vulnerabilities
6
Why do we need secure boot?
Processor
Boot
code
System-on-Chip
Flash
Kernel
ROM OTPSRAM
DDR
7
Why do we need secure boot?
Processor
Boot
code
System-on-Chip
Flash
Kernel
ROM OTPSRAM
DDR
1
8
Why do we need secure boot?
Processor
Boot
code
System-on-Chip
Flash
Kernel
Boot
code
ROM OTPSRAM
DDR
2 1
9
Why do we need secure boot?
Processor
Boot
code
System-on-Chip
Flash
Kernel
Boot
code
Kernel
ROM OTPSRAM
DDR
2 1
3
10
Why do we need secure boot?
Processor
Boot
code
System-on-Chip
Flash
Kernel
Boot
code
Kernel
ROM OTPSRAM
Threat 1:
Hardware Hacker
DDR
2 1
3
11
Why do we need secure boot?
Processor
Boot
code
System-on-Chip
Flash
Kernel
Boot
code
Kernel
ROM OTPSRAM
Threat 1:
Hardware Hacker
Threat 2:
Malware
DDR
2 1
3
12
Why do we need secure boot?
Processor
Boot
code
System-on-Chip
Flash
Kernel
Boot
code
Kernel
ROM OTPSRAM
Secure boot assures integrity of code/data in cold storage!
Threat 1:
Hardware Hacker
Threat 2:
Malware
DDR
2 1
3
13
The real world is more complex!
14
The real world is more complex!
ROM
EL3
Secure WorldHigher privileges Lower privileges
15
The real world is more complex!
ROM BLx
EL3
Secure World
EL1
Higher privileges Lower privileges
16
The real world is more complex!
ROM ATFBLx
EL3
Secure World
EL1 EL3
Higher privileges Lower privileges
17
The real world is more complex!
ROM
U-Boot
ATFBLx
EL3
Secure World
EL1
Non-Secure World
EL1 EL3
Higher privileges Lower privileges
18
The real world is more complex!
ROM
U-Boot
ATF TEE OS TEE Apps
Boot finished!
Linux Apps
BLx
Linux Kernel
EL3 EL1 EL0
Secure World
EL1 EL1 EL0
Non-Secure World
EL1 EL3
The chain can break at any stage. Early is better!
Higher privileges Lower privileges
19
Breaking Secure Boot early
20
Breaking Secure Boot early
• Early boot stage run at the highest privilege
• E.g. unrestricted access
21
Breaking Secure Boot early
• Early boot stage run at the highest privilege
• E.g. unrestricted access
• Security features often not initialized yet
• E.g. access control
22
Breaking Secure Boot early
• Early boot stage run at the highest privilege
• E.g. unrestricted access
• Security features often not initialized yet
• E.g. access control
• Access assets that are not accessible after boot
• E.g. ROM code and keys
23
What makes Secure Boot secure?
24
What makes Secure Boot secure?
Unbreakable cryptography… Right?
25
Flow of a typical boot stage
26
Flow of a typical boot stage
Start
27
Flow of a typical boot stage
Start
Check this
28
Flow of a typical boot stage
Start
Check this
Check that
29
Flow of a typical boot stage
Start
Check this
Check that
Configure this
30
Flow of a typical boot stage
Start
Check this
Check that
Configure this
Configure that
31
Flow of a typical boot stage
Start
Check this
Check that
Configure this
Configure that
Load next stage
32
Flow of a typical boot stage
Start
Check this
Check that
Configure this
Configure that
Load next stage
Decrypt next stage
33
Flow of a typical boot stage
Start
Check this
Check that
Configure this Authenticate next stage
Configure that
Load next stage
Decrypt next stage
34
Flow of a typical boot stage
Start
Check this
Check that
Configure this Authenticate next stage
Configure that
Load next stage
Decrypt next stage
Jump to
next stage?
35
Flow of a typical boot stage
Start
Check this
Check that
Configure this Authenticate next stage
Configure that
Load next stage
Decrypt next stage
Jump to
next stage?
Lots of functionality! What can go wrong?
36
Flow of a typical boot stage
Start
Check this
Check that
Configure this Authenticate next stage
Configure that
Load next stage
Decrypt next stage
Jump to
next stage?
Lots of functionality! What can go wrong?goes wrong!?
37
No authentication!
https://smealum.github.io/3ds/32c3/#/95
38
Software vulnerabilities!
https://seclists.org/oss-sec/2018/q4/125
39
Hardware vulnerabilities!
https://www.blackhat.com/docs/eu-16/materials/
eu-16-Timmers-Bypassing-Secure-Boot-Using-Fault-Injection.pdf
40
Why hardware attacks on secure boot?
41
Why hardware attacks on secure boot?
• Usually a small code base
42
Why hardware attacks on secure boot?
• Usually a small code base
• Limited attack surface
43
Why hardware attacks on secure boot?
• Usually a small code base
• Limited attack surface
• Should be extensively reviewed
44
Why hardware attacks on secure boot?
• Usually a small code base
• Limited attack surface
• Should be extensively reviewed
• Difficult / impossible to fix after deployment
45
Why hardware attacks on secure boot?
• Usually a small code base
• Limited attack surface
• Should be extensively reviewed
• Difficult / impossible to fix after deployment
Software vulnerabilities not guaranteed to be present!
46
Voltage Fault Injection in practice
47
Voltage Fault Injection in practice
48
Voltage Fault Injection in practice
49
Voltage Fault Injection in practice
50
Voltage Fault Injection in practice
51
Voltage Fault Injection in practice
52
Voltage Fault Injection in practice
53
Voltage Fault Injection in practice
54
Voltage Fault Injection in practice
55
USB
Voltage Fault Injection in practice
56
VCC
USB
Voltage Fault Injection in practice
57
VCC
USB
Reset
Voltage Fault Injection in practice
58
time
59
time
60
1.2 V
0.9 V
time
61
1.2 V
0.9 V
time
62
1.2 V
0.9 V
time
63
Let’s do this live on stage!
What could possibly go wrong….
64
Fault Injection Demo
65
Fault Injection Demo
BL1 U-Boot
We do not modify U-Boot in flash.
66
Fault Injection Demo
We do modify the U-Boot in flash.
BL1 U-Boot
We do not modify U-Boot in flash.
BL1 U-Boot
67
Fault Injection Demo
We do modify the U-Boot in flash.
BL1 U-Boot
We do not modify U-Boot in flash.
BL1
BL1
U-Boot
U-Boot
68
Fault Injection Demo
We do modify the U-Boot in flash.
PWNED
BL1 U-Boot
We do not modify U-Boot in flash.
BL1
BL1
U-Boot
U-Boot
69
Successful Glitch!
Want to know more? Please meet us after the talk!
70
Why does this work? What goes wrong?
Difficult to answer. But, behaviorally we can say a lot!
71
What can we do with our glitches?
72
What can we do with our glitches?
• Modify memory contents
73
What can we do with our glitches?
• Modify memory contents
• Modify register contents
74
What can we do with our glitches?
• Modify memory contents
• Modify register contents
• Modify the executed instructions
!!!
75
What can we do with our glitches?
• Modify memory contents
• Modify register contents
• Modify the executed instructions
We can change the intended behavior of software!
!!!
76
What about unglitchable hardware?
77
Yes. But… difficult & expensive.
What about unglitchable hardware?
78
What about using only software?
79
Sure.
What about using only software?
80
Typical Software FI Countermeasures*
* https://www.riscure.com/uploads/2018/11/201708_Riscure_Whitepaper_Side_Channel_Patterns.pdf
81
Typical Software FI Countermeasures*
• Redundant checks
* https://www.riscure.com/uploads/2018/11/201708_Riscure_Whitepaper_Side_Channel_Patterns.pdf
82
Typical Software FI Countermeasures*
• Redundant checks
• Defensive coding
–e.g. initialize return values as ‘error’
* https://www.riscure.com/uploads/2018/11/201708_Riscure_Whitepaper_Side_Channel_Patterns.pdf
83
Typical Software FI Countermeasures*
• Redundant checks
• Defensive coding
–e.g. initialize return values as ‘error’
• Code flow integrity
–i.e. assure the code follows the intended path
* https://www.riscure.com/uploads/2018/11/201708_Riscure_Whitepaper_Side_Channel_Patterns.pdf
84
Typical Software FI Countermeasures*
• Redundant checks
• Defensive coding
–e.g. initialize return values as ‘error’
• Code flow integrity
–i.e. assure the code follows the intended path
• Random delays
* https://www.riscure.com/uploads/2018/11/201708_Riscure_Whitepaper_Side_Channel_Patterns.pdf
85
Typical Software FI Countermeasures*
• Redundant checks
• Defensive coding
–e.g. initialize return values as ‘error’
• Code flow integrity
–i.e. assure the code follows the intended path
• Random delays
* https://www.riscure.com/uploads/2018/11/201708_Riscure_Whitepaper_Side_Channel_Patterns.pdf
This sounds easy…
86
It is not.
87
It is not.
88
It is not.
Redundant checks needs multiple glitches?
Remember, we can modify instructions using glitches!
89
It is not.
Redundant checks needs multiple glitches?
Remember, we can modify instructions using glitches!
90
It is not.
Redundant checks needs multiple glitches?
Remember, we can modify instructions using glitches!
91
It is not.
Redundant checks needs multiple glitches?
Remember, we can modify instructions using glitches!
92
It is not.
Redundant checks needs multiple glitches?
Remember, we can modify instructions using glitches!
93
It is not.
Redundant checks needs multiple glitches?
Remember, we can modify instructions using glitches!
94
It is not.
Redundant checks needs multiple glitches?
Remember, we can modify instructions using glitches!
95
Where can we bypass
secure boot using a glitch?
96
We need automation to do this efficiently.
97
We?!?
98
The challenges of attackers & defenders
are actually very similar!
99
How can I glitch
this device?
How can my code be
attacked?
How do I know
where to glitch?
How can I make my
code more robust?How do I know
my glitch was
succesfull?
How can I give an
attacker as little
information as
possible?
What is the effect of
this type of glitches
on my target?
Which attack
method is better
for this target?
What is the effect of
these changes on the
glitchability?
Attackers vs Defenders
100
• No symbols, only the
binary
• Limited knowledge /
documentation of
hardware
Attackers vs Defenders
• Source code and a
binary with symbols
• Documentation
available
101
• No symbols, only the
binary
• Limited knowledge /
documentation of
hardware
Attackers vs Defenders
Biggest difference:
Attackers need to reverse engineer the binary!
• Source code and a
binary with symbols
• Documentation
available
102
Our solution?
103
Our solution?
Simulation!
104
• Not a new idea!
• Several existing simulators already available.
• Nonetheless challenging to give useful results...
Simulation
105
• Not a new idea!
• Several existing simulators already available.
• Nonetheless challenging to give useful results...
Simulation
Why? Bunch of challenges…
106
No hardware simulator = No fault simulator
Challenge #1
© Icons8.com CC BY-ND 3.0
107
Changing the binary is no option.
Challenge #2
© Icons8.com CC BY-ND 3.0
108
Challenge #3
Detecting successful glitches.
© Icons8.com CC BY-ND 3.0
110
Challenge #4
Using reasonable computational power.
© Icons8.com CC BY-ND 3.0
111
Challenge #5
Realistic simulation.
© Icons8.com CC BY-ND 3.0
112
What type of simulator do we use?
113
• HDL simulator?
What type of simulator do we use?
114
• HDL simulator?
• Full system emulators? (Gem5, QEMU, ...)
What type of simulator do we use?
115
• HDL simulator?
• Full system emulators? (Gem5, QEMU, ...)
• Smartcard simulators ?!?...
What type of simulator do we use?
116
• HDL simulator?
• Full system emulators? (Gem5, QEMU, ...)
• Smartcard simulators ?!?...
• ???
What type of simulator do we use?
117
• HDL simulator?
• Full system emulators? (Gem5, QEMU, ...)
• Smartcard simulators ?!?...
• ???
• Our own?!?
What type of simulator do we use?
118
• Main ideas
• Shortest path to reasonable results
• Speed over accuracy
• Reusing existing components
• Binary-based; can be used by attackers and defenders
• Glitches can be modelled by their observable effects in SW
• Effects described through fault models
Introduction to FiSim
119
• Unicorn & Capstone based
• Implements 2 realistic* fault models
• Skipping individual instructions
• Flipping a bit in the instruction encoding
• Many more possible, easy to add
FiSim Features
* https://www.riscure.com/uploads/2017/09/Controlling-PC-on-ARM-using-Fault-Injection.pdf
120
• Unicorn & Capstone based
• Implements 2 realistic* fault models
• Skipping individual instructions
• Flipping a bit in the instruction encoding
• Many more possible, easy to add
FiSim Features
* https://www.riscure.com/uploads/2017/09/Controlling-PC-on-ARM-using-Fault-Injection.pdf
}corruption
121
• Unicorn & Capstone based
• Implements 2 realistic* fault models
• Skipping individual instructions
• Flipping a bit in the instruction encoding
• Many more possible, easy to add
FiSim Features
* https://www.riscure.com/uploads/2017/09/Controlling-PC-on-ARM-using-Fault-Injection.pdf
}corruption
122
We tested several real bootloaders successfully!
123
We tested several real bootloaders successfully!
Let’s dive into the architectural details…
124
Icons © Font Awesome CC BY 4.0
Hardware model
Engine
(Unicorn)
Flash dump
Console output
(if any)
Execution trace
FiSim Architecture
125
Icons © Font Awesome CC BY 4.0
Hardware model
Engine
(Unicorn)
Flash dump Bad signature
Good signature
FiSim Architecture
126
Icons © Font Awesome CC BY 4.0
(Unicorn)
(Unicorn)Engine
(Unicorn)
Fault generator
Execution trace
Hardware model
FiSim Architecture
Flash dump (Bad signature)
127
Hardware Model
128
Hardware Model
129
130
Hardware Model
131
Hardware Model
132
Hardware Model
Note: attacker needs to hardcode addresses!
133
Hardware Model
134
FiSim DEMO #1
135
What did we glitch in the first demo?
136
What did we glitch in the first demo?
Who knows??!
137
What did we glitch in the first demo?
Many possibilities….
138
Let’s harden our bootloader…
139
What if we authenticate twice?
Let’s harden our bootloader…
140
FiSim DEMO #2
141
• Is instruction corruption the only fault model?
• We do not know…
• Other fault models likely applicable too!
• What is the impact of instruction / data caches?
Limitations / Future work
142
• Is instruction corruption the only fault model?
• We do not know…
• Other fault models likely applicable too!
• What is the impact of instruction / data caches?
Testing remains critical!
Limitations / Future work
143
Takeaways
144
Takeaways
• Fault attacks are effective to bypass secure boot
145
Takeaways
• Fault attacks are effective to bypass secure boot
• Simulating is effective for attackers and defenders
146
Takeaways
• Fault attacks are effective to bypass secure boot
• Simulating is effective for attackers and defenders
• Actual testing still required for assurance
147Secure boot under attack: Simulation to enhance fault injection & defenses
Thank you! Any questions?
Or come to us…
Martijn Bogaard
Senior Security Analyst
martijn@riscure.com / @jmartijnb
Niek Timmers
Principal Security Analyst
niek@riscure.com / @tieknimmers

More Related Content

What's hot

An Architectural Deep Dive With Kubernetes And Containers Powerpoint Presenta...
An Architectural Deep Dive With Kubernetes And Containers Powerpoint Presenta...An Architectural Deep Dive With Kubernetes And Containers Powerpoint Presenta...
An Architectural Deep Dive With Kubernetes And Containers Powerpoint Presenta...SlideTeam
 
DevSecOps reference architectures 2018
DevSecOps reference architectures 2018DevSecOps reference architectures 2018
DevSecOps reference architectures 2018Sonatype
 
DevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationDevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationKeith Pleas
 
Android Penetration testing - Day 2
 Android Penetration testing - Day 2 Android Penetration testing - Day 2
Android Penetration testing - Day 2Mohammed Adam
 
BlueHat v17 || Dangerous Contents - Securing .Net Deserialization
BlueHat v17 || Dangerous Contents - Securing .Net Deserialization BlueHat v17 || Dangerous Contents - Securing .Net Deserialization
BlueHat v17 || Dangerous Contents - Securing .Net Deserialization BlueHat Security Conference
 
Fault Injection on Automotive Diagnosis Protocols
Fault Injection on Automotive Diagnosis ProtocolsFault Injection on Automotive Diagnosis Protocols
Fault Injection on Automotive Diagnosis ProtocolsRiscure
 
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)Cédric Brun
 
HotPics 2021
HotPics 2021HotPics 2021
HotPics 2021neexemil
 
Flutter: An open-source UI software development kit
Flutter: An open-source UI software development kitFlutter: An open-source UI software development kit
Flutter: An open-source UI software development kitNagarro
 
Futex Scaling for Multi-core Systems
Futex Scaling for Multi-core SystemsFutex Scaling for Multi-core Systems
Futex Scaling for Multi-core SystemsDavidlohr Bueso
 
ModSecurity 3.0 and NGINX: Getting Started
ModSecurity 3.0 and NGINX: Getting StartedModSecurity 3.0 and NGINX: Getting Started
ModSecurity 3.0 and NGINX: Getting StartedNGINX, Inc.
 
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...Edureka!
 
Encoded Attacks And Countermeasures
Encoded Attacks And CountermeasuresEncoded Attacks And Countermeasures
Encoded Attacks And CountermeasuresMarco Morana
 
OpenShift 4 installation
OpenShift 4 installationOpenShift 4 installation
OpenShift 4 installationRobert Bohne
 
Kubernetes 101 - an Introduction to Containers, Kubernetes, and OpenShift
Kubernetes 101 - an Introduction to Containers, Kubernetes, and OpenShiftKubernetes 101 - an Introduction to Containers, Kubernetes, and OpenShift
Kubernetes 101 - an Introduction to Containers, Kubernetes, and OpenShiftDevOps.com
 
Getting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeGetting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeWinWire Technologies Inc
 
Engineering Velocity: Shifting the Curve at Netflix
Engineering Velocity: Shifting the Curve at NetflixEngineering Velocity: Shifting the Curve at Netflix
Engineering Velocity: Shifting the Curve at NetflixDianne Marsh
 
Container Security
Container SecurityContainer Security
Container SecuritySalman Baset
 

What's hot (20)

An Architectural Deep Dive With Kubernetes And Containers Powerpoint Presenta...
An Architectural Deep Dive With Kubernetes And Containers Powerpoint Presenta...An Architectural Deep Dive With Kubernetes And Containers Powerpoint Presenta...
An Architectural Deep Dive With Kubernetes And Containers Powerpoint Presenta...
 
DevSecOps reference architectures 2018
DevSecOps reference architectures 2018DevSecOps reference architectures 2018
DevSecOps reference architectures 2018
 
DevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationDevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the Automation
 
Android Penetration testing - Day 2
 Android Penetration testing - Day 2 Android Penetration testing - Day 2
Android Penetration testing - Day 2
 
BlueHat v17 || Dangerous Contents - Securing .Net Deserialization
BlueHat v17 || Dangerous Contents - Securing .Net Deserialization BlueHat v17 || Dangerous Contents - Securing .Net Deserialization
BlueHat v17 || Dangerous Contents - Securing .Net Deserialization
 
Fault Injection on Automotive Diagnosis Protocols
Fault Injection on Automotive Diagnosis ProtocolsFault Injection on Automotive Diagnosis Protocols
Fault Injection on Automotive Diagnosis Protocols
 
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
 
HotPics 2021
HotPics 2021HotPics 2021
HotPics 2021
 
Flutter: An open-source UI software development kit
Flutter: An open-source UI software development kitFlutter: An open-source UI software development kit
Flutter: An open-source UI software development kit
 
Futex Scaling for Multi-core Systems
Futex Scaling for Multi-core SystemsFutex Scaling for Multi-core Systems
Futex Scaling for Multi-core Systems
 
ModSecurity 3.0 and NGINX: Getting Started
ModSecurity 3.0 and NGINX: Getting StartedModSecurity 3.0 and NGINX: Getting Started
ModSecurity 3.0 and NGINX: Getting Started
 
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
 
Encoded Attacks And Countermeasures
Encoded Attacks And CountermeasuresEncoded Attacks And Countermeasures
Encoded Attacks And Countermeasures
 
OpenShift 4 installation
OpenShift 4 installationOpenShift 4 installation
OpenShift 4 installation
 
Kubernetes 101 - an Introduction to Containers, Kubernetes, and OpenShift
Kubernetes 101 - an Introduction to Containers, Kubernetes, and OpenShiftKubernetes 101 - an Introduction to Containers, Kubernetes, and OpenShift
Kubernetes 101 - an Introduction to Containers, Kubernetes, and OpenShift
 
Getting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeGetting Started with Infrastructure as Code
Getting Started with Infrastructure as Code
 
presentation on Docker
presentation on Dockerpresentation on Docker
presentation on Docker
 
Engineering Velocity: Shifting the Curve at Netflix
Engineering Velocity: Shifting the Curve at NetflixEngineering Velocity: Shifting the Curve at Netflix
Engineering Velocity: Shifting the Curve at Netflix
 
Container Security
Container SecurityContainer Security
Container Security
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 

Similar to Simulation to enhance secure boot defenses against fault injection attacks

BlueHat v17 || Raising the Bar: New Hardware Primitives for Exploit Mitigations
BlueHat v17 || Raising the Bar: New Hardware Primitives for Exploit Mitigations BlueHat v17 || Raising the Bar: New Hardware Primitives for Exploit Mitigations
BlueHat v17 || Raising the Bar: New Hardware Primitives for Exploit Mitigations BlueHat Security Conference
 
Top 10 secure boot mistakes
Top 10 secure boot mistakesTop 10 secure boot mistakes
Top 10 secure boot mistakesJustin Black
 
AV Evasion with the Veil Framework
AV Evasion with the Veil FrameworkAV Evasion with the Veil Framework
AV Evasion with the Veil FrameworkVeilFramework
 
Bypassing Secure Boot using Fault Injection
Bypassing Secure Boot using Fault InjectionBypassing Secure Boot using Fault Injection
Bypassing Secure Boot using Fault InjectionRiscure
 
[CB19] Hardware Wallet Security
[CB19] Hardware Wallet Security[CB19] Hardware Wallet Security
[CB19] Hardware Wallet SecurityCODE BLUE
 
Steelcon 2014 - Process Injection with Python
Steelcon 2014 - Process Injection with PythonSteelcon 2014 - Process Injection with Python
Steelcon 2014 - Process Injection with Pythoninfodox
 
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja WarriorsRyan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja WarriorsRyan Elkins
 
When Security Tools Fail You
When Security Tools Fail YouWhen Security Tools Fail You
When Security Tools Fail YouMichael Gough
 
The Hacking Games - A Road to Post Exploitation Meetup - 20240222.pptx
The Hacking Games - A Road to Post Exploitation Meetup - 20240222.pptxThe Hacking Games - A Road to Post Exploitation Meetup - 20240222.pptx
The Hacking Games - A Road to Post Exploitation Meetup - 20240222.pptxlior mazor
 
PANDA2018 - Advancing FI attacks - Fault Models opportunities
PANDA2018 - Advancing FI attacks - Fault Models opportunitiesPANDA2018 - Advancing FI attacks - Fault Models opportunities
PANDA2018 - Advancing FI attacks - Fault Models opportunitiesCristofaro Mune
 
Non equilibrium Molecular Simulations of Polymers under Flow Saving Energy th...
Non equilibrium Molecular Simulations of Polymers under Flow Saving Energy th...Non equilibrium Molecular Simulations of Polymers under Flow Saving Energy th...
Non equilibrium Molecular Simulations of Polymers under Flow Saving Energy th...ORAU
 
How to become a testing expert
How to become a testing expertHow to become a testing expert
How to become a testing expertgaoliang641
 
How to build observability into Serverless (O'Reilly Velocity 2018)
How to build observability into Serverless (O'Reilly Velocity 2018)How to build observability into Serverless (O'Reilly Velocity 2018)
How to build observability into Serverless (O'Reilly Velocity 2018)Yan Cui
 
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...Hackito Ergo Sum
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4Qualcomm Developer Network
 
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017adamleff
 

Similar to Simulation to enhance secure boot defenses against fault injection attacks (20)

Buffer overflow Attacks
Buffer overflow AttacksBuffer overflow Attacks
Buffer overflow Attacks
 
Buffer Overflow Attacks
Buffer Overflow AttacksBuffer Overflow Attacks
Buffer Overflow Attacks
 
BlueHat v17 || Raising the Bar: New Hardware Primitives for Exploit Mitigations
BlueHat v17 || Raising the Bar: New Hardware Primitives for Exploit Mitigations BlueHat v17 || Raising the Bar: New Hardware Primitives for Exploit Mitigations
BlueHat v17 || Raising the Bar: New Hardware Primitives for Exploit Mitigations
 
Top 10 secure boot mistakes
Top 10 secure boot mistakesTop 10 secure boot mistakes
Top 10 secure boot mistakes
 
AV Evasion with the Veil Framework
AV Evasion with the Veil FrameworkAV Evasion with the Veil Framework
AV Evasion with the Veil Framework
 
Bypassing Secure Boot using Fault Injection
Bypassing Secure Boot using Fault InjectionBypassing Secure Boot using Fault Injection
Bypassing Secure Boot using Fault Injection
 
[CB19] Hardware Wallet Security
[CB19] Hardware Wallet Security[CB19] Hardware Wallet Security
[CB19] Hardware Wallet Security
 
Steelcon 2014 - Process Injection with Python
Steelcon 2014 - Process Injection with PythonSteelcon 2014 - Process Injection with Python
Steelcon 2014 - Process Injection with Python
 
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja WarriorsRyan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
 
When Security Tools Fail You
When Security Tools Fail YouWhen Security Tools Fail You
When Security Tools Fail You
 
The Hacking Games - A Road to Post Exploitation Meetup - 20240222.pptx
The Hacking Games - A Road to Post Exploitation Meetup - 20240222.pptxThe Hacking Games - A Road to Post Exploitation Meetup - 20240222.pptx
The Hacking Games - A Road to Post Exploitation Meetup - 20240222.pptx
 
PANDA2018 - Advancing FI attacks - Fault Models opportunities
PANDA2018 - Advancing FI attacks - Fault Models opportunitiesPANDA2018 - Advancing FI attacks - Fault Models opportunities
PANDA2018 - Advancing FI attacks - Fault Models opportunities
 
OIVM
OIVMOIVM
OIVM
 
Company Profile
Company ProfileCompany Profile
Company Profile
 
Non equilibrium Molecular Simulations of Polymers under Flow Saving Energy th...
Non equilibrium Molecular Simulations of Polymers under Flow Saving Energy th...Non equilibrium Molecular Simulations of Polymers under Flow Saving Energy th...
Non equilibrium Molecular Simulations of Polymers under Flow Saving Energy th...
 
How to become a testing expert
How to become a testing expertHow to become a testing expert
How to become a testing expert
 
How to build observability into Serverless (O'Reilly Velocity 2018)
How to build observability into Serverless (O'Reilly Velocity 2018)How to build observability into Serverless (O'Reilly Velocity 2018)
How to build observability into Serverless (O'Reilly Velocity 2018)
 
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
 
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
 

More from Riscure

PEW PEW PEW: Designing Secure Boot Securely
PEW PEW PEW: Designing Secure Boot SecurelyPEW PEW PEW: Designing Secure Boot Securely
PEW PEW PEW: Designing Secure Boot SecurelyRiscure
 
Riscure Assurance for Premium Content at a glance
Riscure Assurance for Premium Content at a glanceRiscure Assurance for Premium Content at a glance
Riscure Assurance for Premium Content at a glanceRiscure
 
Lowering the bar: deep learning for side-channel analysis
Lowering the bar: deep learning for side-channel analysisLowering the bar: deep learning for side-channel analysis
Lowering the bar: deep learning for side-channel analysisRiscure
 
Software Attacks on Hardware Wallets
Software Attacks on Hardware WalletsSoftware Attacks on Hardware Wallets
Software Attacks on Hardware WalletsRiscure
 
Efficient Reverse Engineering of Automotive Firmware
Efficient Reverse Engineering of Automotive FirmwareEfficient Reverse Engineering of Automotive Firmware
Efficient Reverse Engineering of Automotive FirmwareRiscure
 
CheapSCAte: Attacking IoT with less than $60
CheapSCAte: Attacking IoT with less than $60CheapSCAte: Attacking IoT with less than $60
CheapSCAte: Attacking IoT with less than $60Riscure
 
Riscure Introduction
Riscure IntroductionRiscure Introduction
Riscure IntroductionRiscure
 
Practical Differential Fault Attack on AES
Practical Differential Fault Attack on AESPractical Differential Fault Attack on AES
Practical Differential Fault Attack on AESRiscure
 
Java Card Security
Java Card SecurityJava Card Security
Java Card SecurityRiscure
 
How to secure electronic passports
How to secure electronic passportsHow to secure electronic passports
How to secure electronic passportsRiscure
 
How multi-fault injection breaks the security of smart cards
How multi-fault injection breaks the security of smart cardsHow multi-fault injection breaks the security of smart cards
How multi-fault injection breaks the security of smart cardsRiscure
 
Why is it so hard to make secure chips?
Why is it so hard to make secure chips?Why is it so hard to make secure chips?
Why is it so hard to make secure chips?Riscure
 
How to secure HCE
How to secure HCEHow to secure HCE
How to secure HCERiscure
 
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
 
Controlling PC on ARM using Fault Injection
Controlling PC on ARM using Fault InjectionControlling PC on ARM using Fault Injection
Controlling PC on ARM using Fault InjectionRiscure
 
Defeating RSA Multiply-Always and Message Blinding Countermeasures
Defeating RSA Multiply-Always and Message Blinding CountermeasuresDefeating RSA Multiply-Always and Message Blinding Countermeasures
Defeating RSA Multiply-Always and Message Blinding CountermeasuresRiscure
 
Secure initialization of Trusted Execution Environments: When Secure Boot fal...
Secure initialization of Trusted Execution Environments: When Secure Boot fal...Secure initialization of Trusted Execution Environments: When Secure Boot fal...
Secure initialization of Trusted Execution Environments: When Secure Boot fal...Riscure
 

More from Riscure (17)

PEW PEW PEW: Designing Secure Boot Securely
PEW PEW PEW: Designing Secure Boot SecurelyPEW PEW PEW: Designing Secure Boot Securely
PEW PEW PEW: Designing Secure Boot Securely
 
Riscure Assurance for Premium Content at a glance
Riscure Assurance for Premium Content at a glanceRiscure Assurance for Premium Content at a glance
Riscure Assurance for Premium Content at a glance
 
Lowering the bar: deep learning for side-channel analysis
Lowering the bar: deep learning for side-channel analysisLowering the bar: deep learning for side-channel analysis
Lowering the bar: deep learning for side-channel analysis
 
Software Attacks on Hardware Wallets
Software Attacks on Hardware WalletsSoftware Attacks on Hardware Wallets
Software Attacks on Hardware Wallets
 
Efficient Reverse Engineering of Automotive Firmware
Efficient Reverse Engineering of Automotive FirmwareEfficient Reverse Engineering of Automotive Firmware
Efficient Reverse Engineering of Automotive Firmware
 
CheapSCAte: Attacking IoT with less than $60
CheapSCAte: Attacking IoT with less than $60CheapSCAte: Attacking IoT with less than $60
CheapSCAte: Attacking IoT with less than $60
 
Riscure Introduction
Riscure IntroductionRiscure Introduction
Riscure Introduction
 
Practical Differential Fault Attack on AES
Practical Differential Fault Attack on AESPractical Differential Fault Attack on AES
Practical Differential Fault Attack on AES
 
Java Card Security
Java Card SecurityJava Card Security
Java Card Security
 
How to secure electronic passports
How to secure electronic passportsHow to secure electronic passports
How to secure electronic passports
 
How multi-fault injection breaks the security of smart cards
How multi-fault injection breaks the security of smart cardsHow multi-fault injection breaks the security of smart cards
How multi-fault injection breaks the security of smart cards
 
Why is it so hard to make secure chips?
Why is it so hard to make secure chips?Why is it so hard to make secure chips?
Why is it so hard to make secure chips?
 
How to secure HCE
How to secure HCEHow to secure HCE
How to secure HCE
 
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?
 
Controlling PC on ARM using Fault Injection
Controlling PC on ARM using Fault InjectionControlling PC on ARM using Fault Injection
Controlling PC on ARM using Fault Injection
 
Defeating RSA Multiply-Always and Message Blinding Countermeasures
Defeating RSA Multiply-Always and Message Blinding CountermeasuresDefeating RSA Multiply-Always and Message Blinding Countermeasures
Defeating RSA Multiply-Always and Message Blinding Countermeasures
 
Secure initialization of Trusted Execution Environments: When Secure Boot fal...
Secure initialization of Trusted Execution Environments: When Secure Boot fal...Secure initialization of Trusted Execution Environments: When Secure Boot fal...
Secure initialization of Trusted Execution Environments: When Secure Boot fal...
 

Recently uploaded

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 

Recently uploaded (20)

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 

Simulation to enhance secure boot defenses against fault injection attacks