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.
- 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.
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 teamT 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 freeSource: MITRE Common Weakness Enumeration, CWE version 4.19.1. CWE is a trademark of The MITRE Corporation.