¿Qué es Kerberos?
- Glosario IAM
- ¿Qué es Kerberos?
Kerberos es un protocolo de autenticación de redes de computadoras que verifica las identidades de los usuarios u hosts usando un sistema de "tickets" digitales. Utiliza la criptografía de clave secreta y un tercero de confianza para verificar las identidades de los usuarios y autenticar las aplicaciones cliente-servidor.
El protocolo Kerberos se desarrolló originalmente en el Massachusetts Institute of Technology (MIT) en 1988 para que la universidad pudiera autenticar de forma segura a los usuarios de la red y autorizarles a acceder a recursos específicos, como el almacenamiento y las bases de datos. En aquella época, las redes de computadoras autenticaban a los usuarios con identificadores de usuario y contraseñas, que se transmitían sin cifrar, es decir, sin formato. Esto permitía a los actores de amenazas interceptar las credenciales de los usuarios y utilizarlas para penetrar en la red del MIT.
Kerberos permitía a los hosts de confianza comunicarse a través de redes no fiables (en concreto, en internet) sin transmitir ni almacenar contraseñas sin formato. Además, Kerberos permitía a los usuarios acceder a varios sistemas con una sola contraseña, una versión inicial de la tecnología de inicio de sesión único (SSO).
¿Para qué se usa Kerberos?
Kerberos es uno de los protocolos de autenticación de red más utilizados en la actualidad. Se utiliza con frecuencia para permitir el SSO en redes de grandes empresas. Es el método de autenticación predeterminado de Windows y tiene un papel integral en Windows Active Directory (AD). También existen implementaciones de Kerberos en Apple OS, FreeBSD, UNIX y Linux.
¿Cuál es la finalidad de un ticket al usar Kerberos?
Los tickets son el núcleo del protocolo de autenticación de Kerberos.
El nombre de Kerberos procede de la mitología griega y hace referencia a Cerbero, un perro de tres cabezas que custodiaba las puertas del mundo de los muertos. El nombre alude a las tres cabezas del protocolo Kerberos: el cliente, el servidor y el centro de distribución de claves (KDC) de Kerberos, que emite los tickets de Kerberos.
Un "ticket" de Kerberos es un certificado digital, emitido por un servidor de autenticación y cifrado con la clave del servidor, que permite a los hosts demostrar su identidad entre sí de forma segura. Es lo que se conoce como autenticación mutua.
La solicitud y concesión de tickets de Kerberos se realiza de forma transparente para el usuario final. Cuando un cliente recibe un ticket de autenticación Kerberos, devuelve el ticket al servidor junto con información adicional para verificar la identidad del cliente. A continuación, el servidor emite un ticket de servicio de Kerberos y una clave de sesión, que completan el proceso de autorización para esa sesión. Todos los tickets de Kerberos están sellados, limitados en el tiempo y son específicos de cada sesión, lo que minimiza el riesgo de que un actor de amenazas pueda utilizar un ticket vulnerado para acceder al sistema.
¿Cómo funciona el protocolo Kerberos?
Veamos una descripción muy simplificada del protocolo Kerberos en acción:
- El proceso de autenticación de clientes de Kerberos comienza cuando un cliente solicita un ticket de autenticación (servicio de concesión de tickets o TGT) al servidor de autenticación KDC. Como esta solicitud inicial no contiene información sensible, se envía sin formato.
- El KDC busca al cliente en su base de datos. Si el KDC encuentra al cliente, le devuelve un TGT cifrado y una clave de sesión. En caso contrario, el proceso se detiene y se deniega el acceso al cliente.
- Una vez autenticado, el cliente usa el TGT para solicitar un ticket del servicio de concesión de tickets (TGS).
- Si el TGS puede autenticar al cliente, le envía las credenciales y el ticket para acceder al servicio solicitado. Este ticket se almacena en el dispositivo del usuario final.
- El cliente usa su ticket para solicitar acceso al servidor de la aplicación. Cuando el servidor de la aplicación autentica el ticket, el cliente puede acceder al servidor.
¿Cuáles son los beneficios del protocolo Kerberos?
Kerberos es un protocolo de autenticación maduro y sólido que está integrado en todos los sistemas operativos populares y es compatible con los modernos entornos de computación distribuidos. Es especialmente adecuado para las implementaciones del SSO, donde proporciona la tecnología back-end para garantizar que los usuarios finales tengan una experiencia fluida al tiempo que admite el control de accesos basados en roles (RBAC) y el acceso de privilegios mínimos a los recursos digitales.
¿Se puede hackear Kerberos?
Como Kerberos es una tecnología ampliamente utilizada y con décadas de antigüedad, los actores de amenazas han encontrado formas de vulnerarla. Entre los ataques cibernéticos a Kerberos más comunes, se incluyen:
- Ataques pass-the-ticket, en el que los actores de amenazas interceptan y reutilizan tickets enviados a o desde un usuario autenticado.
- Ataques golden ticket, también conocidos como ataques de sombra DC, en el que los actores de amenazas obtienen el acceso que necesitan para configurar su propio controlador de dominio de Windows. Esto les permite crear credenciales privilegiadas falsas que les conceden acceso ilimitado a los recursos de la red.
- Ataques de completado de credenciales, en el que los actores de amenazas intentan vulnerar las contraseñas de los usuarios. Estos ataques suelen dirigirse a los servidores de autenticación KDC o a los servicios de concesión de tickets.
Sin embargo, aunque ninguna tecnología es 100 % infranqueable, Kerberos es bastante seguro si se configura y mantiene adecuadamente. Para mantener la seguridad de su implementación de Kerberos, asegúrese de mantener Kerberos actualizado y de que todos sus usuarios finales utilicen contraseñas únicas y seguras respaldadas con la autenticación multifactor (MFA).