Missing an ability to patch ROM code may leave a System or System-on-Chip (SoC) in a vulnerable state.
A System or System-on-Chip (SoC) that implements a boot process utilizing security mechanisms such as Root-of-Trust (RoT) typically starts by executing code from a Read-only-Memory (ROM) component. The code in ROM is immutable, hence any security vulnerabilities discovered in the ROM code can never be fixed for the systems that are already in use. A common weakness is that the ROM does not have the ability to patch if security vulnerabilities are uncovered after the system gets shipped. This leaves the system in a vulnerable state where an adversary can compromise the SoC.
Impact: Varies by ContextReduce Maintainability
When the system is unable to be patched, it can be left in a vulnerable state.
Effectiveness: Moderate
Effectiveness: Moderate
...
verilog
assign rom_rdata = (ariane_boot_sel_i) ? rom_rdata_linux : rom_rdata_linux;** ...
...
verilog
assign rom_rdata = (ariane_boot_sel_i) ? rom_rdata_patch : rom_rdata_linux;** ...