Weakness · Medium

CWE-1271: Uninitialized Value on Reset for Registers Holding Security Settings

What it is

Security-critical logic is not set to a known value on reset.

MITRE CWE 4.19.1

Severity (our rating)
Medium
Likelihood of exploit
Not rated by MITRE
Introduced during
Implementation
Exploited in the wild
No CVE in CISA's catalog

In more detail

When the device is first brought out of reset, the state of registers will be indeterminate if they have not been initialized by the logic. Before the registers are initialized, there will be a window during which the device is in an insecure state and may be vulnerable to attack.

What an attacker can do

  • Varies by Context (Access Control, Authentication, Authorization)

How to prevent it

Implementation

  • Design checks should be performed to identify any uninitialized flip-flops used for security-critical functions.

Architecture and Design

  • All registers holding security-critical information should be set to a specific value on reset.

CWE-1271 on MITRE's CWE site

H2 Security

Found it in your code?

We review where it appears, fix it with your team, and check it was not already used against you.

Talk to our team

T Academy

Stop writing it in the first place

Learn to build software and systems without weaknesses like this one, with practice on real hosts in your browser, every objective checked on the machine.

Start free

Source: MITRE Common Weakness Enumeration, CWE version 4.19.1. CWE is a trademark of The MITRE Corporation.