Cifrado y protección de comunicaciones bajo el ENS
Requisitos reales del ENS para el cifrado en tránsito, en reposo y en aplicaciones. Algoritmos aceptados, catálogo CCN-STIC y configuraciones mínimas.
El cifrado es uno de los controles más “tangibles” del ENS: se puede verificar en minutos con herramientas técnicas y no admite matices. Varias medidas del Anexo II (especialmente mp.com.2, mp.com.3, mp.si.2 y mp.info.3) regulan qué debe cifrarse, con qué algoritmos y en qué contextos. Las organizaciones que no respetan estas exigencias acumulan hallazgos en auditoría con facilidad.
El catálogo de referencia: CCN-STIC 807
La referencia no negociable es la guía CCN-STIC 807, que publica los algoritmos criptográficos aceptados para sistemas ENS. Se actualiza periódicamente. Lo que valía hace 4 años puede no valer ahora: revisa la última versión antes de tomar decisiones de diseño.
Resumen de referencias aceptadas actualmente:
- Simétrico: AES (128/192/256) en modos AEAD como GCM o CCM. DES y 3DES quedaron fuera hace tiempo.
- Asimétrico: RSA ≥ 3072, ECC con curvas P-256, P-384, P-521 (o Brainpool equivalentes).
- Funciones hash: SHA-256, SHA-384, SHA-512 (SHA-1 y MD5 fuera).
- Firmas: RSASSA-PSS, ECDSA con curvas aceptadas, EdDSA.
- KDF: PBKDF2 con parámetros reforzados, Argon2id, scrypt.
- TLS: mínimo 1.2 con suites seguras; 1.3 preferido.
Cifrado en tránsito
TLS para servicios web y API
- TLS 1.2 o 1.3 únicamente.
- Suites de cifrado limitadas a las aceptadas (sin CBC débil, sin RC4).
- HSTS activo con max-age largo e include-subdomains.
- Certificados emitidos por CA pública o interna confiable con SHA-256+.
- Renovación antes del vencimiento con proceso documentado.
- Deshabilitado renegotiation inseguro.
Un test rápido con testssl.sh o SSLLabs te da el estado en minutos. Para categoría Media/Alta deberías obtener mínimo “A”.
VPN
- IPsec con IKEv2 y suites reforzadas, o
- OpenVPN / WireGuard con configuraciones modernas.
- MFA para acceso remoto.
- Split tunnel solo si está justificado.
Correo
- STARTTLS obligatorio entre MTAs.
- SPF, DKIM, DMARC alineados.
- S/MIME o PGP para información sensible en categoría Alta.
Comunicaciones internas
Las comunicaciones entre componentes (microservicios, bases de datos, APIs internas) también exigen cifrado en Media/Alta. La red interna “de confianza” ya no es aceptable como justificación.
Cifrado en reposo
Almacenamiento
- Discos de servidores críticos con cifrado transparente (LUKS, dm-crypt, BitLocker, FileVault, o cifrado gestionado por el SO cloud).
- Bases de datos con TDE activa cuando soportado (Oracle, SQL Server, RDS).
- Volúmenes EBS/GCE/Azure disk con cifrado por defecto.
- Backups cifrados y con claves gestionadas.
Soportes extraíbles
- Cifrado obligatorio. En Media/Alta, gestión centralizada de claves con capacidad de remote wipe.
- Procedimiento de borrado seguro antes del desecho.
Gestión de claves
Este es un punto que se suele dejar informal. Requiere:
- Ciclo de vida documentado (generación, custodia, rotación, revocación, destrucción).
- Separación de funciones.
- KMS o HSM en categoría Alta (preferiblemente certificado).
- Rotación periódica (anual recomendable).
- Custodia de claves críticas por al menos dos personas (dual control).
Cifrado en aplicaciones
Contraseñas
- Nunca en texto plano.
- Hash con algoritmos lentos (Argon2id, scrypt, bcrypt, PBKDF2 con ≥ 600.000 iteraciones).
- Salt por usuario.
- Plantillas de política con longitud mínima y sin rotación forzada arbitraria.
Tokens
- JWT con algoritmos seguros (RS256, ES256) — nunca
none. - Expiración corta + refresh controlado.
- Revocación implementada.
Datos de negocio sensibles
Campos especialmente sensibles (datos personales categoría 9 RGPD, credenciales, secretos de negocio) deben ir cifrados a nivel aplicación incluso si la base de datos ya está cifrada en reposo.
Qué mira el auditor
El auditor verifica por muestreo:
- Escaneo TLS a servicios expuestos.
- Revisión de parámetros de backup (¿está cifrado? ¿con qué clave? ¿dónde se guarda?).
- Configuración del KMS y política de acceso.
- Algoritmos usados en firmas electrónicas y sellos de tiempo.
- Gestión de claves (procedimiento + evidencia de rotación).
Si detecta algoritmos fuera del catálogo CCN-STIC 807, no conformidad directa.
Cómo preparar la auditoría en cifrado
Inventario de criptografía
Documento (tabla) con:
- Componente.
- Qué cifra (tránsito / reposo / aplicación).
- Algoritmo y parámetros.
- Dónde se almacenan las claves.
- Quién gestiona.
- Fecha de última revisión.
Roadmap de deprecación
Listado de algoritmos, versiones y configuraciones “legacy” con fecha prevista de eliminación. Plan de migración. Esto cumple el espíritu de mp.com.4 y op.exp.4.
Pruebas técnicas
Script que lance testssl.sh periódicamente contra todos tus endpoints y genere informe. Incorpóralo al cuadro de mando.
Errores habituales
- TLS 1.0 / 1.1 aún activos en balanceadores o en proveedores de servicios antiguos.
- Certificados autofirmados sin procedimiento claro.
- Claves de cifrado en el mismo repositorio que el código.
- Backups sin cifrar porque “están en una red interna”.
- Algoritmos antiguos en sistemas heredados sin fecha de deprecación.
- Política de contraseñas débil o con rotación arbitraria cada 30 días.
Recomendación final
El cifrado es de las medidas donde menos se puede “maquillar” en auditoría. Un mal inventario criptográfico salta enseguida. La buena noticia: corregir es relativamente rápido con las herramientas actuales de cloud e infraestructura. Lo caro es el cambio cultural (claves fuera del código, rotación real, MFA de verdad), y eso se trabaja con políticas y disciplina más que con presupuesto.