2047
implemented to detect glitches. Implementing redundancy in security-sensitive code (e.g., where
checks are performed)also can help with mitigation of glitch attacks.
Demonstrative Examples
Example 1:
Below is a representative snippet of C code that is part of the secure-boot flow. A signature of
the runtime-firmware image is calculated and compared against a golden value. If the signatures
match, the bootloader loads runtime firmware. If there is no match, an error halt occurs. If the
underlying hardware executing this code does not contain any circuitry or sensors to detect voltage
or clock glitches, an attacker might launch a fault-injection attack right when the signature check is
happening (at the location marked with the comment), causing a bypass of the signature-checking
process.
Example Language: C (Bad)
...
if (signature_matches) // <-Glitch Here
{
load_runtime_firmware();
}
else
{
do_not_load_runtime_firmware();
}
...
After bypassing secure boot, an attacker can gain access to system assets to which the attacker
should not have access.
Example Language: (Good)
If the underlying hardware detects a voltage or clock glitch, the information can be used to prevent the glitch from being
successful.
Observed Examples
Reference Description
CVE-2019-17391 Lack of anti-glitch protections allows an attacker to launch a physical attack to
bypass the secure boot and read protected eFuses.
https://www.cve.org/CVERecord?id=CVE-2019-17391
CVE-2021-33478 IP communication firmware allows access to a boot shell via certain impulses
https://www.cve.org/CVERecord?id=CVE-2021-33478
Functional Areas
• Power
• Clock
MemberOf Relationships
This MemberOf relationships table shows additional CWE Catgeories and Views that reference this
weakness as a member. This information is often useful in understanding where a weakness fits
within the context of external information sources.
Nature Type ID Name Page
MemberOf 1206 Power, Clock, Thermal, and Reset Concerns 1194 2473
MemberOf 1365 ICS Communications: Unreliability 1358 2502
MemberOf 1367 ICS Dependencies (& Architecture): External Physical
Systems
1358 2504
MemberOf 1388 Physical Access Issues and Concerns 1194 2518
CWE Version 4.14
CWE-1247: Improper Protection Against Voltage and Clock Glitches
CWE-1247: Improper Protection Against Voltage and Clock Glitches