Inyección de fallos
¿Qué es Inyección de fallos?
Inyección de fallosCategoría de ataques físicos o lógicos que provocan condiciones anómalas en hardware o software para eludir controles de seguridad o filtrar secretos.
La inyección de fallos empuja deliberadamente al sistema fuera de su envolvente de operación —mediante perturbaciones de tensión, manipulación del reloj, pulsos electromagnéticos (EMFI) o un láser enfocado sobre el silicio expuesto— para que se salte una única instrucción o se invierta un bit de memoria en el instante elegido. El atacante convierte ese error controlado en un fallo de seguridad: eludir una decisión (saltar la verificación del PIN o la firma del arranque seguro) o corromper un cálculo criptográfico. En el análisis diferencial de fallos, descrito por Boneh, DeMillo y Lipton en 1997 contra RSA-CRT, comparar una firma correcta con una defectuosa revela la clave privada; la misma idea rompe AES con unos pocos cifrados corrompidos.
El faulting ya no es solo físico. CLKSCREW (2017) y VoltJockey abusaron de los propios registros de gestión de energía de la CPU para atacar ARM TrustZone por software, y Plundervolt de Intel (CVE-2019-11157, 2019) redujo la tensión desde el anillo 0 para corromper cálculos dentro de SGX hasta que Intel desactivó la interfaz por microcódigo. La investigación wallet.fail (35C3, 2018) hizo glitching a dispositivos Trezor y Ledger para alcanzar los secretos almacenados. Rowhammer demuestra que hasta el acceso normal a memoria puede inducir fallos.
Las contramedidas incluyen cómputo redundante o aleatorizado, sensores de detección de fallos, monitores de tensión y reloj, memoria ECC y código defensivo que reverifica cada rama de seguridad.
flowchart TD
A[Atacante con acceso al dispositivo] --> B{Vector de fallo}
B -->|Tensión / undervolt| C[Caída o pico de VCC]
B -->|Glitch de reloj| D[Pulso de sobrefrecuencia]
B -->|EMFI / láser| E[Pulso localizado en el die]
C --> F[Salto de instrucción o bit invertido]
D --> F
E --> F
F --> G{Efecto explotado}
G -->|Saltar control| H[Eludir PIN / arranque seguro]
G -->|Corromper cripto| I[El análisis de fallos filtra la clave]
H --> J[Sistema comprometido]
I --> J● Ejemplos
- 01
Glitch de tensión sobre una tarjeta inteligente para saltar la verificación del PIN.
- 02
Análisis diferencial de fallos contra AES para recuperar la clave a partir de un cifrado corrompido.
● Preguntas frecuentes
¿Qué es Inyección de fallos?
Categoría de ataques físicos o lógicos que provocan condiciones anómalas en hardware o software para eludir controles de seguridad o filtrar secretos. Pertenece a la categoría de Vulnerabilidades en ciberseguridad.
¿Qué significa Inyección de fallos?
Categoría de ataques físicos o lógicos que provocan condiciones anómalas en hardware o software para eludir controles de seguridad o filtrar secretos.
¿Cómo defenderse de Inyección de fallos?
Las defensas contra Inyección de fallos combinan habitualmente controles técnicos y prácticas operativas, como se detalla en la definición.
¿Cuáles son otros nombres para Inyección de fallos?
Nombres alternativos comunes: Ataque por glitching, Ataque de fallo.