Saltar al contenido
uencoder

TLS Pinning

El pinning de certificados TLS incrusta en el cliente la clave pública o el hash esperado del certificado y rechaza todos los demás, evitando ataques de intermediario (incluidos certificados falsos emitidos por CAs legítimas).

Propósito

Prevenir ataques de intermediario por adversarios con certificados de CA legítimos (p. ej., gobiernos o CAs comprometidas).

Mecanismo

El cliente preconfigura el hash SPKI (pin) del certificado del servidor. Durante el handshake TLS compara el certificado con el pin y rechaza la conexión si no coincide. Tipos: pin SPKI, pin de cadena de certificados. Común en apps móviles; los navegadores casi nunca fijan porque rotar certificados es difícil.

Casos de uso

  • Defensa MITM de APIs en apps móviles
  • Comunicación de dispositivos IoT
  • Clientes de API de alta seguridad
  • Comunicación entre servicios

Ejemplos

  • entrada
    pin: sha256/SPKI=abc...
    Output
    Reject on certificate mismatch

    Public key pinning

Errores comunes

Expired pins without updates cause connection failures
Provide backup pins and a rotation policy

Términos relacionados

References