Skip to main content

CWE-1233: Security-Sensitive Hardware Controls with Missing Lock Bit Protection

BaseStable

The product uses a register lock bit protection mechanism, but it does not ensure that the lock bit prevents modification of system registers or controls that perform changes to important hardware system configuration.

View on MITRE
Back to CWE Lookup

Extended Description

Integrated circuits and hardware intellectual properties (IPs) might provide device configuration controls that need to be programmed after device power reset by a trusted firmware or software module, commonly set by BIOS/bootloader. After reset, there can be an expectation that the controls cannot be used to perform any further modification. This behavior is commonly implemented using a trusted lock bit, which can be set to disable writes to a protected set of registers or address regions. The lock protection is intended to prevent modification of certain system configuration (e.g., memory/memory protection unit configuration). However, if the lock bit does not effectively write-protect all system registers or controls that could modify the protected system configuration, then an adversary may be able to use software to access the registers/controls and modify the protected hardware configuration.

Technical Details

Structure
Simple

Applicable To

Languages
Not Language-Specific
Platforms
Not OS-Specific

Frequently Asked Questions

What is CWE-1233: Security-Sensitive Hardware Controls with Missing Lock Bit Protection?+

CWE-1233: Security-Sensitive Hardware Controls with Missing Lock Bit Protection is a Common Weakness Enumeration (CWE) entry maintained by MITRE. The product uses a register lock bit protection mechanism, but it does not ensure that the lock bit prevents modification of system registers or controls that perform changes to important hardware system configuration. Integrated circuits and hardware intellectual properties (IPs) might provide device configuration controls that need to be programmed after device power reset by a trusted firmware or software module, commonly set by BIOS/bootloader. After reset, there can be an expectation that the controls cannot be used to perform any further modification. This behavior is commonly implemented using a trusted lock bit, which can be set to disable writes to a protected set of registers or address regions. The lock protection is intended to prevent modification of certain system configuration (e.g., memory/memory protection unit configuration). However, if the lock bit does not effectively write-protect all system registers or controls that could modify the protected system configuration, then an adversary may be able to use software to access the registers/controls and modify the protected hardware configuration.

What are the security consequences of Security-Sensitive Hardware Controls with Missing Lock Bit Protection?+

If exploited, CWE-1233 (Security-Sensitive Hardware Controls with Missing Lock Bit Protection) it can compromise Access Control, leading to outcomes such as Modify Memory.

How do you prevent or mitigate Security-Sensitive Hardware Controls with Missing Lock Bit Protection?+

Recommended mitigations for CWE-1233 include: Security lock bit protections must be reviewed for design inconsistency and common weaknesses. Security lock programming flow and lock properties must be tested in pre-silicon and post-silicon testing.

How is Security-Sensitive Hardware Controls with Missing Lock Bit Protection detected?+

CWE-1233 can be detected using Manual Analysis. Combining automated tooling with manual review typically yields the best coverage.

Which programming languages are affected by Security-Sensitive Hardware Controls with Missing Lock Bit Protection?+

CWE-1233 commonly affects Not Language-Specific. Note that weaknesses are often language-agnostic patterns, so secure coding practices apply broadly.

What are real-world examples of Security-Sensitive Hardware Controls with Missing Lock Bit Protection?+

MITRE documents real CVEs mapped to CWE-1233, including CVE-2018-9085 and CVE-2014-8273. You can look up the full details of each CVE, including CVSS scores and remediation guidance, on our CVE Lookup tool.

What is the difference between a CWE and a CVE?+

A CWE (Common Weakness Enumeration) like CWE-1233 describes a category of software weakness — the underlying flaw type. A CVE (Common Vulnerabilities and Exposures) identifies a specific, real-world vulnerability in a particular product. In short, a CWE is the kind of mistake, and a CVE is an instance of that mistake being found in software.

Learn More