CWE-1319 Detail

CWE-1319

Improper Protection against Electromagnetic Fault Injection (EM-FI)
Incomplete
2020-12-10 00:00 +00:00
2023-10-26 00:00 +00:00

Alerte pour un CWE

Restez informé de toutes modifications pour un CWE spécifique.
Gestion des alertes

Improper Protection against Electromagnetic Fault Injection (EM-FI)

The device is susceptible to electromagnetic fault injection attacks, causing device internal information to be compromised or security mechanisms to be bypassed.

Extended Description

Electromagnetic fault injection may allow an attacker to locally and dynamically modify the signals (both internal and external) of an integrated circuit. EM-FI attacks consist of producing a local, transient magnetic field near the device, inducing current in the device wires. A typical EMFI setup is made up of a pulse injection circuit that generates a high current transient in an EMI coil, producing an abrupt magnetic pulse which couples to the target producing faults in the device, which can lead to:

  • Bypassing security mechanisms such as secure JTAG or Secure Boot
  • Leaking device information
  • Modifying program flow
  • Perturbing secure hardware modules (e.g. random number generators)

Informations

Modes Of Introduction

Architecture and Design
Implementation

Applicable Platforms

Language

Class: Not Language-Specific (Undetermined)

Operating Systems

Class: Not OS-Specific (Undetermined)

Architectures

Class: Not Architecture-Specific (Undetermined)

Technologies

Class: System on Chip (Undetermined)
Name: Microcontroller Hardware (Undetermined)
Name: Memory Hardware (Undetermined)
Name: Power Management Hardware (Undetermined)
Name: Processor Hardware (Undetermined)
Name: Test/Debug Hardware (Undetermined)
Name: Sensor Hardware (Undetermined)

Common Consequences

Scope Impact Likelihood
Confidentiality
Integrity
Access Control
Availability
Modify Memory, Read Memory, Gain Privileges or Assume Identity, Bypass Protection Mechanism, Execute Unauthorized Code or Commands

Observed Examples

Reference Description
CVE-2020-27211Chain: microcontroller system-on-chip uses a register value stored in flash to set product protection state on the memory bus and does not contain protection against fault injection (CWE-1319) which leads to an incorrect initialization of the memory bus (CWE-1419) causing the product to be in an unprotected state.

Potential Mitigations

Phases : Architecture and Design // Implementation
  • 1. Redundancy - By replicating critical operations and comparing the two outputs can help indicate whether a fault has been injected.
  • 2. Error detection and correction codes - Gay, Mael, et al. proposed a new scheme that not only detects faults injected by a malicious adversary but also automatically corrects single nibble/byte errors introduced by low-multiplicity faults.
  • 3. Fail by default coding - When checking conditions (switch or if) check all possible cases and fail by default because the default case in a switch (or the else part of a cascaded if-else-if construct) is used for dealing with the last possible (and valid) value without checking. This is prone to fault injection because this alternative is easily selected as a result of potential data manipulation [REF-1141].
  • 4. Random Behavior - adding random delays before critical operations, so that timing is not predictable.
  • 5. Program Flow Integrity Protection - The program flow can be secured by integrating run-time checking aiming at detecting control flow inconsistencies. One such example is tagging the source code to indicate the points not to be bypassed [REF-1147].
  • 6. Sensors - Usage of sensors can detect variations in voltage and current.
  • 7. Shields - physical barriers to protect the chips from malicious manipulation.

Vulnerability Mapping Notes

Rationale : This CWE entry is at the Base level of abstraction, which is a preferred level of abstraction for mapping to the root causes of vulnerabilities.
Comments : Carefully read both the name and description to ensure that this mapping is an appropriate fit. Do not try to 'force' a mapping to a lower-level Base/Variant simply to comply with this preferred level of abstraction.

Related Attack Patterns

CAPEC-ID Attack Pattern Name
CAPEC-624 Hardware Fault Injection
The adversary uses disruptive signals or events, or alters the physical environment a device operates in, to cause faulty behavior in electronic devices. This can include electromagnetic pulses, laser pulses, clock glitches, ambient temperature extremes, and more. When performed in a controlled manner on devices performing cryptographic operations, this faulty behavior can be exploited to derive secret key information.
CAPEC-625 Mobile Device Fault Injection
Fault injection attacks against mobile devices use disruptive signals or events (e.g. electromagnetic pulses, laser pulses, clock glitches, etc.) to cause faulty behavior. When performed in a controlled manner on devices performing cryptographic operations, this faulty behavior can be exploited to derive secret key information. Although this attack usually requires physical control of the mobile device, it is non-destructive, and the device can be used after the attack without any indication that secret keys were compromised.

Notes

This entry is attack-oriented and may require significant modification in future versions, or even deprecation. It is not clear whether there is really a design "mistake" that enables such attacks, so this is not necessarily a weakness and may be more appropriate for CAPEC.

References

REF-1141

Secure Application Programming in the presence of Side Channel Attacks
Marc Witteman.
https://riscureprodstorage.blob.core.windows.net/production/2017/08/Riscure_Whitepaper_Side_Channel_Patterns.pdf

REF-1142

Injection of transient faults using electromagnetic pulses. Practical results on a cryptographic system
A. Dehbaoui, J. M. Dutertre, B. Robisson, P. Orsatelli, P. Maurine, A. Tria.
https://eprint.iacr.org/2012/123.pdf

REF-1143

Precise Spatio-Temporal Electromagnetic Fault Injections on Data Transfers
A. Menu, S. Bhasin, J. M. Dutertre, J. B. Rigaud, J. Danger.
https://hal.telecom-paris.fr/hal-02338456/document

REF-1144

BAM BAM!! On Reliability of EMFI for in-situ Automotive ECU Attacks
Colin O'Flynn.
https://eprint.iacr.org/2020/937.pdf

REF-1145

Design and Validation of a Platform for Electromagnetic Fault Injection
J. Balasch, D. Arumí, S. Manich.
https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8311630

REF-1146

Error control scheme for malicious and natural faults in cryptographic modules
M. Gay, B. Karp, O. Keren, I. Polian.
https://link.springer.com/content/pdf/10.1007/s13389-020-00234-7.pdf

REF-1147

Automatic Integration of Counter-Measures Against Fault Injection Attacks
M. L. Akkar, L. Goubin, O. Ly.
https://www.labri.fr/perso/ly/publications/cfed.pdf

REF-1285

Physical Security Attacks Against Silicon Devices
Texas Instruments.
https://www.ti.com/lit/an/swra739/swra739.pdf?ts=1644234570420

Submission

Name Organization Date Date Release Version
Sebastien Leger, Rohini Narasipur Bosch 2020-08-27 +00:00 2020-12-10 +00:00 4.3

Modifications

Name Organization Date Comment
CWE Content Team MITRE 2022-04-28 +00:00 updated Applicable_Platforms
CWE Content Team MITRE 2022-06-28 +00:00 updated Applicable_Platforms, Relationships
CWE Content Team MITRE 2022-10-13 +00:00 updated Potential_Mitigations, References, Relationships
CWE Content Team MITRE 2023-01-31 +00:00 updated Related_Attack_Patterns
CWE Content Team MITRE 2023-04-27 +00:00 updated References, Relationships
CWE Content Team MITRE 2023-06-29 +00:00 updated Mapping_Notes
CWE Content Team MITRE 2023-10-26 +00:00 updated Observed_Examples
Cliquez sur le bouton à gauche (OFF), pour autoriser l'inscription de cookie améliorant les fonctionnalités du site. Cliquez sur le bouton à gauche (Tout accepter), pour ne plus autoriser l'inscription de cookie améliorant les fonctionnalités du site.