Cómo funciona la autenticación Kerberos
En un mundo cada vez más digitalizado en el que los datos privados y empresariales se almacenan y transmiten en formato electrónico, la ciberdelincuencia es un problema cada vez más común. Los hackers han aprendido a hacer uso de la inteligencia artificial para encontrar nuevas maneras de optimizar sus ataques. Por esto, cada vez es más importante cifrar los datos mediante procedimientos de seguridad electrónica. Aquí te contamos en qué consiste la autenticación Kerberos, cómo funciona y cuáles son sus puntos fuertes y sus aspectos más débiles.
- Certificado SSL Wildcard
- Registro privado
- 1 cuenta de correo electrónico por contrato
¿Qué es Kerberos?
Kerberos es un servicio de autenticación utilizado en redes informáticas abiertas o no seguras. Este protocolo de seguridad sirve para autenticar las solicitudes de servicio entre dos o más hosts de confianza a través de una red no fiable, como Internet. El cifrado criptográfico y un tercero (también llamado trust third party) de confianza se utilizan para autenticar las aplicaciones cliente-servidor y verificar la identidad de los usuarios.
Kerberos sigue siendo un proyecto de código abierto ofrecido por el consorcio del mismo nombre. Sus orígenes se remontan a la década de los 80: el Instituto Tecnológico de Massachusetts (MIT) desarrolló este protocolo para su proyecto Athena. Actualmente, Kerberos es la tecnología de autorización estándar de Microsoft Windows. Sin embargo, Kerberos tiene también implementaciones para otros sistemas operativos, como Apple OS, FreeBSD, UNIX y Linux. Microsoft lanzó su versión del protocolo Kerberos en Windows 2000. Después, pasó a convertirse en el protocolo estándar para páginas web e implementaciones de inicio de sesión único en varias plataformas.
El nombre de la autenticación Kerberos proviene de la mitología griega, por el mítico Can Cerbero (Kerberos en griego), el perro de tres cabezas que guarda la entrada al inframundo. En los mitos, el Can Cerbero tiene una cola de serpiente y una actitud muy agresiva, lo que lo convierte en un guardián eficaz. En el protocolo Kerberos, las tres cabezas representan al cliente, al servidor y al centro de distribución de claves (KDC). Este último actúa como trusted third party.
Los usuarios, los ordenadores y los servicios que utilizan Kerberos dependen del KDC, que proporciona dos funciones en un solo proceso: autenticación y emisión de tickets. Los llamados “tickets KDC” autentican a todos los interlocutores, verificando la identidad de todos los nodos, así como los puntos de inicio y fin de las conexiones lógicas. Para esto, el proceso de autenticación Kerberos utiliza la criptografía convencional de secreto compartido (shared secret), para que los paquetes de datos transmitidos no se puedan leer o modificar. De este modo, también están protegidos contra los ataques de escucha y reproducción.
¿Qué distingue Kerberos de NTLM?
Kerberos y NTML son protocolos de red que forman parte de la familia de los protocolos de Internet (IP). Ambos son procedimientos de autenticación que utilizan el TCP (Transmission Control Protocol) o UDP (User Datagram Protocol). NTLM, siglas de NT LAN Manager, es anterior a Kerberos. Se trata de un protocolo de autenticación challenge-response, en que el ordenador de destino solicita una contraseña, que luego se verifica y se almacena en forma de hash de contraseñas para su uso posterior.
En nuestro artículo TCP/IP, te contamos en qué consiste la relación entre TCP e IP.
Una de las mayores diferencias entre Kerberos y NTLM es la verificación por parte de terceros. Por esto, el cifrado de Kerberos es más fuerte que el de NTLM, ya que el paso adicional añade otra capa de seguridad. El NTLM se puede descifrar con relativa facilidad, por lo que, en la actualidad, no se considera seguro y no se recomienda su uso. Sin embargo, ambos protocolos de autenticación siguen implementados en el módulo de autenticación de Windows.
El proveedor de soporte técnico de seguridad (SSP) Negotiate, que actúa como capa de aplicación entre la interfaz del proveedor de soporte técnico de seguridad (SSPI) y los demás SSP, decide automáticamente entre la autenticación Kerberos y NTLM en un proceso de negociación. Cuando es posible, se utiliza el protocolo Kerberos; si este no está disponible, se utiliza NTLM.
Aunque, en general, Kerberos está implementado en los productos de Microsoft a partir de Windows 2000 y Windows XP, existen otros protocolos de seguridad habituales para la navegación web, la mensajería y el correo electrónico. Por ejemplo, los protocolos SSL o TLS cifran la conexión entre el servidor web y el navegador. Esto garantiza que todos los datos que se transmiten permanezcan protegidos y no se puedan leer. Al igual que Kerberos, SSL funciona con el protocolo TCP, pero utiliza un proceso de cifrado de clave pública.
Para asegurar la mejor protección para tus datos y los de tus clientes, IONOS utiliza una tecnología de cifrado SSL de alta seguridad, incluyendo un certificado SSL comodín, para asegurar tu servidor VPS y tu propio dominio.
¿Cómo funciona la autenticación Kerberos?
En esta sección, te explicaremos los componentes principales de la autenticación Kerberos para que descubras cómo funciona. Estos son los componentes principales implicados en el flujo de trabajo típico de Kerberos:
- Cliente: actúa como representante del usuario e inicia la comunicación y la solicitud de servicio.
- Servidor host: es el servidor que aloja el servicio al que quiere acceder el usuario.
- Servidor de autenticación (AS): realiza la autenticación del cliente deseada. Si la autenticación se realiza con éxito, el AS emite un ticket para el cliente, el TGT (ticket-granting ticket). Este ticket garantiza a los demás servidores que el cliente está autenticado.
- Ticket-granting server (TGS): es un servidor de aplicación que emite tickets de servicio.
- Centro de distribución de claves (KDC): está formado por el servidor de autenticación (AS) y el ticket-granting server (TGS).
En el siguiente esquema mostramos el proceso del protocolo.
Paso 1. El cliente realiza una solicitud cifrada al servidor de autenticación. Cuando el AS recibe la solicitud, busca la contraseña en la base de datos de Kerberos mediante el ID de usuario. Si la contraseña de usuario es correcta, el AS descifra la solicitud.
Paso 2. Una vez se verifica el usuario, el AS emite un ticket-granting ticket (TGT), que se envía de vuelta al cliente.
Paso 3. El cliente envía el TGT al ticket-granting server. Junto con el TGT, el cliente indica también el motivo de acceso al servidor de host. El TGS descifra el ticket con la clave secreta que comparten el AS y el TGS.
Paso 4. Si el TGT es válido, el TGS emite un ticket de servicio para el cliente.
Paso 5. El cliente envía el ticket de servicio al servidor de host. El servidor descifra el ticket con la clave secreta que comparten el servidor y el TGB.
Paso 6. Si las claves secretas coinciden, el servidor de host permite al cliente acceder al servicio. El ticket de servicio determina el tiempo que el usuario puede utilizar el servicio. Una vez caduca el acceso, se puede renovar con el comando Kinit repitiendo de nuevo todo el protocolo de autenticación de Kerberos.
Puntos fuertes y débiles de Kerberos
Como ya mencionamos, Kerberos es mucho más seguro que NTLM. De hecho, la autorización por parte de terceros lo convierte en uno de los protocolos de verificación más seguros del mundo digital. Además, las contraseñas nunca se envían por la red en texto simple. Las “claves secretas” solo se transmiten por el sistema de forma cifrada. Kerberos permite también hacer un mejor seguimiento de quién solicitó qué y en qué momento.
Utilizar protocolos precisos y transparentes es esencial para las auditorías de seguridad, tanto en las empresas grandes como pequeñas. También contribuye a mantener un excelente control de acceso. Además, Kerberos permite a los usuarios y los proveedores de servicios realizar una autenticación mutua. En cada paso del proceso de autenticación, tanto los usuarios como los sistemas de servidores saben que su interlocutor es auténtico. A lo largo de los años, numerosos expertos en seguridad han intentado hackear este proyecto de código abierto, lo que ha dado lugar a continuas mejoras.
Sin embargo, por supuesto, Kerberos también tiene vulnerabilidades. Por ejemplo, si el servidor de Kerberos no funciona, los usuarios no pueden conectarse. Los mecanismos de autenticación auxiliares y los servidores secundarios suelen ser una solución a este problema. También existen estrictos requisitos de tiempo: las configuraciones de fecha y hora de los hosts implicados deben estar siempre sincronizadas dentro de unos límites preestablecidos. Fuera de estos periodos, las autenticaciones dan error, porque los tickets solo están disponibles por tiempo limitado.
Por otra parte, algunos sistemas antiguos no son compatibles con los mecanismos de autenticación de terceros. Asimismo, a pesar de que las contraseñas de la autenticación Kerberos suelen ser seguras, los hackers pueden obtenerlas mediante ataques de fuerza bruta o robarlas a través de phishing. Este es uno de los motivos por los que la autenticación multifactor (MFA) es un medio cada vez más popular para proteger las identidades en línea.
De forma predeterminada, Windows no realiza la autenticación Kerberos si el nombre del host es una dirección IP. En este caso, recurre a otros protocolos de autenticación habilitados, como NTLM, que se deben desactivar manualmente. Aquí te enseñamos a encontrar tu dirección IP.