Posts Tagged ‘Fault Injection Attacks
Fault injection attacks rely on varying the external parameters and environmental conditions of a system such as the supply voltage, clock, temperature, radiation, etc., to induce faults in its components. The injected faults can be transient or permanent, and can compromise the security of a system in several ways:
- Availability Attacks: Faults can be injected to disrupt the normal functioning of the system. For example, the bus in an embedded system on chip can be made unavailable for performing inter component communications through permanent faults that set the bus lines to a constant value.
- Integrity attacks: These attacks can be used to corrupt the secureor non-secure code or data stored in components such as memories.
- Privacy attacks: An interesting example of the use of fault injection attacks to reveal cryptographic keys involves RSA implementations that use the Chinese Remainder Theorem (CRT) optimization. The optimization, intended to enhance the performance of the modular exponentiation operation in RSA, in fact, increases its vulnerability against fault injection attacks. It has been shown in that the RSA modulus can be factored very easily if faults can be introduced to affect the outputs of one of the sub-exponentiations being performed.
- Pre-cursor attacks: Fault injection techniques are also usefulas a pre-cursor to software attacks. For example, it has been shown in that simple memory faults induced by heat can be exploited by an untrusted program running on a processor to assume complete control of its execution environment.