1
driving your security forward Analyzing embedded software technologies on RISC-V64 using Ghidra
Presented by: Joris Jonkers Both & Patrick Spaans Supervisor: Alexandru Geana
Analyzing embedded software technologies on RISC-V64 using Ghidra - - PowerPoint PPT Presentation
Presented by: Joris Jonkers Both & Patrick Spaans Supervisor: Alexandru Geana Analyzing embedded software technologies on RISC-V64 using Ghidra driving your security forward 1 Introduction RISC-V64 - Like ARM but open source - One
1
Presented by: Joris Jonkers Both & Patrick Spaans Supervisor: Alexandru Geana
2
multiplications)
3
multiplications)
4
multiplications)
5
multiplications)
6
7
Supported extensions
G
8
Supported extensions
G
9
10
11
12
confidential
for RISC-V64GC
13
Plugin structure
.ldefs file
(language definition)
14
Plugin structure
.ldefs file
(language definition)
.sla file
(Instruction definitions)
Example:
15
Plugin structure
.ldefs file
(language definition)
.sla file
(Instruction definitions)
.pspec file
(Processor specification)
16
Plugin structure
.ldefs file
(language definition)
.sla file
(Instruction definitions)
.pspec file
(Processor specification)
.cspec file
(Compiler specification)
...
17
Plugin structure
.ldefs file
(language definition)
.sla file
(Instruction definitions)
.pspec file
(Processor specification)
.cspec file
(Compiler specification)
18
Using the plugin
…
19
Using the plugin
… Can be: “f3 01 e7 00” or “f3 01” Neither are in the documentation …
20
Using an alternative reverse engineering tool
21
Using an alternative reverse engineering tool Ghidra Radare2
22
Using the complete bootrom
23
Using the complete bootrom There are still some unrecognized instructions
24
Debugging
25
Debugging
26
Implementing secure boot
27
Implementing secure boot
28
Implementing secure boot
29
Implementing secure boot
30
Implementing secure boot
31
Implementing secure boot
32
Trying to write to the OTP
33
Trying to write to the OTP
34
What is this return value?
35
What is this return value?
36
37