Umbra Wiki weakness weakness/CWE-1274
Back to wiki

CWE-1274 — Improper Access Control for Volatile Memory Containing Boot Code

provenance: imported · CWE: CWE-1274

CWE-1274: Improper Access Control for Volatile Memory Containing Boot Code

MITRE CWE weakness

Kind Weakness
Abstraction Base
Status Stable
Likelihood of exploit

Description

The product conducts a secure-boot process that transfers bootloader code from Non-Volatile Memory (NVM) into Volatile Memory (VM), but it does not have sufficient access control or other protections for the Volatile Memory.

Adversaries could bypass the secure-boot process and execute their own untrusted, malicious boot code. As a part of a secure-boot process, the read-only-memory (ROM) code for a System-on-Chip (SoC) or other system fetches bootloader code from Non-Volatile Memory (NVM) and stores the code in Volatile Memory (VM), such as dynamic, random-access memory (DRAM) or static, random-access memory (SRAM). The NVM is usually external to the SoC, while the VM is internal to the SoC. As the code is transferred from NVM to VM, it is authenticated by the SoC's ROM code.

Common consequences

  • Access Control, Integrity: Modify Memory, Execute Unauthorized Code or Commands, Gain Privileges or Assume Identity

Mitigations

Architecture and Design — Ensure that the design of volatile-memory protections is enough to prevent modification from an adversary or untrusted code.

Testing — Test the volatile-memory protections to ensure they are safe from modification or untrusted code.

References

  • CWE page: https://cwe.mitre.org/data/definitions/1274.html
  • CWE list: https://cwe.mitre.org/data/index.html