Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 1282

Ataque de temporización

Revisado porCybersecurity entrepreneur & security researcher

¿Qué es Ataque de temporización?

Ataque de temporizaciónUn ataque de canal lateral que recupera información secreta midiendo cuánto tarda una operación con distintas entradas.


Los ataques de temporización explotan el tiempo de ejecución dependiente de la entrada en código criptográfico y de autenticación. Los objetivos clásicos son las comparaciones de cadenas que no son de tiempo constante (un byte que no coincide provoca un cortocircuito temprano y revela hasta dónde acertó la conjetura), la exponenciación modular (el algoritmo square-and-multiply filtra bits de la clave), las búsquedas en tablas de AES afectadas por el estado de la caché y las consultas de cuentas cuya duración revela si un nombre de usuario existe. Incluso diferencias de nanosegundos pueden amplificarse promediando miles de mediciones para suprimir la fluctuación de la red.

El artículo de Paul Kocher de 1996 fue el primero en convertir esto en un arma contra RSA y Diffie-Hellman. De forma decisiva, el trabajo de Brumley y Boneh de 2003, "Remote Timing Attacks Are Practical" (USENIX Security), extrajo una clave privada RSA de OpenSSL 0.9.7 a través de una red, explotando la variación de temporización en la reducción de Montgomery y el cambio entre multiplicación de Karatsuba y multiplicación normal; por eso OpenSSL habilitó el cegado (blinding) de RSA de forma predeterminada. Lucky Thirteen (CVE-2013-0169, 2013) recuperó texto plano de TLS midiendo diferencias en el tiempo de verificación del MAC durante el tratamiento del relleno en modo CBC.

flowchart TD
  A[El atacante envía muchas entradas manipuladas] --> B[Medir el tiempo de respuesta con precisión]
  B --> C[Promediar muestras para cancelar la fluctuación]
  C --> D{¿El tiempo se correlaciona<br/>con el secreto?}
  D -->|Sí| E[Inferir un bit/byte del secreto]
  E --> F[Repetir, reduciendo el espacio de claves]
  F --> G[Secreto completo recuperado]
  D -->|No| H[Código de tiempo constante: sin filtración]

Las defensas requieren implementaciones de tiempo constante: movimientos condicionales sin ramas, comparaciones de tiempo fijo (crypto_memcmp, hmac.compare_digest de Python, MessageDigest.isEqual de Java), cegado para RSA/ECC y primitivas de cifrado endurecidas contra la caché. Las herramientas automatizadas (dudect, ctgrind, MicroWalk) ayudan a auditar la temporización dependiente de los datos, y la limitación de tasa reduce el presupuesto de mediciones del atacante en los límites de la red.

Ejemplos

  1. 01

    El ataque de temporización de Kocher de 1996 que recupera bits de la clave privada de RSA/Diffie-Hellman.

  2. 02

    Lucky Thirteen (CVE-2013-0169): un ataque de temporización sobre el relleno CBC en TLS.

Preguntas frecuentes

¿Qué es Ataque de temporización?

Un ataque de canal lateral que recupera información secreta midiendo cuánto tarda una operación con distintas entradas. Pertenece a la categoría de Vulnerabilidades en ciberseguridad.

¿Qué significa Ataque de temporización?

Un ataque de canal lateral que recupera información secreta midiendo cuánto tarda una operación con distintas entradas.

¿Cómo defenderse de Ataque de temporización?

Las defensas contra Ataque de temporización combinan habitualmente controles técnicos y prácticas operativas, como se detalla en la definición.

¿Cuáles son otros nombres para Ataque de temporización?

Nombres alternativos comunes: Canal lateral de temporización.

Términos relacionados

Véase también