Chapter 7 KERBEROS
7.1 PROTOCOLO KERBEROS
Kerberos es un protocolo que nos permite autentificarnos de forma segura en aplicaciones cliente servidor. Los servicios que nos aporta este protocolo principalmente la autentificación este primer paso que tienen todas las aplicaciones con usuarios en de autentificar lo hacemos a través de Kerberos y además como en este protocolo siempre hay en todos los mensajes entre los distintos nodos están que están encriptados por lo tanto tenemos privacidad no eso nos da privacidad nadie más puede observar los mensajes excepto los nodos que se encuentran implicados en el protocolo
7.1.1 EN QUÉ CONSISTE EL PROTOCOLO DE KERBEROS.
Los elementos o nodos que tenemos en este protocolo en primer lugar tenemos el cliente el ordenador del cliente que es desde donde tú quieres iniciar sesión. En segundo lugar, tenemos el servidor en el cual tú quieres iniciar sesión por ejemplo un servidor de Instagram que contendrá sus fotos contendrá la lógica de la aplicación a la cual tú quieres acceder. Como tercer elemento tenemos el Key Distribution Center que es un elemento propio de este protocolo de Kerberos y que integra un servidor denominado Authentication Server otro servidor denominado Ticket Granting Server y una base de datos en la cual se almacenan todos los usuarios y contraseñas que estén registrados en la aplicación. Ya entrando en el protocolo lo que sería la primera fase consiste en que el cliente le hace un Request Authentication Server que manda un mensaje en el que le indica cuál es la ID del usuario es decir si yo me llamo JEAN 123 en Instagram pues mi mensaje será “Hola soy JEAN 123” y este mensaje no lo envío como texto plano sino que lo voy a encriptar con mi propia contraseña de la cuenta de Instagram que uso por ejemplo 1 2 3 4 5 6, entonces ese mensaje encriptado es lo que en el punto 1 de este protocolo le voy a enviar al Authentication Server, el segundo punto de este protocolo es que una vez que el Authentication Server tiene ese mensaje encriptado va a obtener la contraseña del usuario accediendo a la base de datos mediante el ID del usuario que se le ha dado, utilizando esta contraseña que obtiene de la base de datos se encripta el mensaje enviado en el paso 1 por el cliente obteniendo así el mensaje inicial mi ID es JEAN 123 comprobara que JEAN 123 es el ID del usuario por lo que tanto el cliente ya estará autenticado en el servicio.
7.1.2 VENTAJAS Y DESVENTAJAS DEL PROTOCOLO KERBEROS.
La mayoría de los servicios convencionales de red utilizan esquemas de autenticación basados en contraseñas. Estos esquemas piden que los usuarios se identifiquen en un servidor de red determinado mediante su nombre y contraseña. El objetivo primario del diseño de Kerberos es eliminar la transmisión de contraseñas encriptadas en la red. Si se usa apropiadamente, Kerberos elimina efectivamente la amenaza de los husmeadores (sniffers) de paquetes en la red.
El sistema Kerberos se vuelve vulnerable cada vez que un usuario en la red se valida contra un servicio no kerberizado y envía una contraseña en la red en texto plano. Por lo tanto, no se recomienda el uso de servicios no kerberizados. Estos servicios incluyen Telnet y FTP. La migración de contraseñas de usuarios desde una base de datos de contraseñas estándar UNIX, tal como /etc/passwd o /etc/shadow, a una base de datos de contraseñas Kerberos puede ser tediosa y no hay un mecanismo rápido para realizar esta tarea.
7.1.3 VENTAJAS
Existen algunas ventajas clave en el uso de Kerberos como servicio de autenticación. CONTROL DE ACCESO: El protocolo de autenticación de Kerberos permite un control de acceso eficaz, los usuarios se benefician de un único punto para realizar un seguimiento de todos los inicios de sesión.
AUTENTICACIÓN MUTUA: Esta autenticación permite que los sistemas de servicios y usuarios se autentiquen entre sí.
DURACIÓN LIMITADA DEL TICKET: Cada Ticket en Kerberos tiene sus propias marcas de tiempo y datos de por vida, y los administradores controlan la duración de la autenticación.
SEGURIDAD: Varias claves secretas, autorización de terceros y criptografía hacen de Kerberos un protocolo de verificación seguro.
AUTENTICACIÓN REUTILIZABLE: La autenticación Kerberos es duradera y reutilizable.
7.1.4 DESVENTAJAS:
Kerberos es un método eficaz para gestionar las amenazas a la seguridad. Sin embargo, existen algunos desafíos. Algunas de las debilidades más frecuentes incluyen:
PUNTO ÚNICO DE FALLO: varias claves secretas, autorización de terceros y criptografía hacen de kerberos un protocolo de verificación seguro.
CADA SERVICIO DE RED NECESITA UN CONJUNTO DE CLAVES KERBEROS: los servicios de red que requieren diferentes nombres de host necesitarán su propio conjunto de claves kerberos, lo que puede presentar desafíos con el alojamiento virtual y de clúster.
REQUISITOS ESTRICTOS DE TIEMPO: las configuraciones de fecha y hora de los hosts deben sincronizarse con límites predefinidos. De lo contrario, la autenticación fallará debido a que los tickets tienen disponibilidad limitada.
7.1.5 TERMINOLOGÍA DE KERBEROS.
Kerberos tiene su propia Terminología esto para definir algunos aspectos del servicio. Es importante conocer algunos términos que veremos a continuación.
SERVIDOR DE AUTENTICACIÓN (SA). Es un servidor que envía comprobantes (o tickets) para un servicio determinado, comprobantes que en su momento serán enviados a los usuarios para que puedan acceder a ese servicio. El AS responde a las peticiones de los clientes quienes no tienen o no envían credenciales con la petición.
CLIENTE: Una entidad en la red (Puede ser una persona, computadora o aplicación) que puede recibir tickets desde Kerberos.
CREDENCIALES: Son un conjunto de nombres de usuario y la contraseñas que verifican la identidad de un cliente para un servicio en particular esto es también llamado como Ticket. Ticket: Son un conjunto de credenciales electrónicas que son temporales que verifican la identidad de un cliente para un servicio en particular estos tickets son también llamados como credenciales o comprobantes.
CONTRASEÑA NO ENCRIPTADA: Es una contraseña en formato de texto plano.
SERVICIO: Es un programa que fue accedido por la red.
REINADO: Es una red que usa Kerberos, esta red está compuesta de uno o más servidores llamados KDCs y un número grande de clientes
CENTRO DE DISTRIBUCIÓN DE CLAVES (KDC): Es un servicio que emite los tickets de Kerberos, este servicio corre al mismo tiempo que el servidor de garantía de Ticket (TGS)
SERVIDOR DE OTORGAMIENTO DE TICKETS (TGS): Es un servidor que emite Tickets para un servicio deseado que son a su vez dados a los usuarios para acceder al servidor
HASH DE ENCRIPTADO: Un haz de una vuelta se usa para autentificar a los usuarios
7.1.6 CÓMO FUNCIONA KERBEROS.
Kerberos proporciona una solución de seguridad confiable para empresas de todos los tamaños. Kerberos utiliza criptografía de clave simétrica y un centro de distribución de claves que es el (KDC) esto para identificar las identidades de los usuarios y un KDC involucra tres aspectos principales que son: * Un servidor de Tickets (TGS) conecta al usuario con el servidor de servicios (SS)
Una Base de Datos Kerberos que almacena la contraseña y la identificación que identifica a cada usuario verificado
El servidor de autenticación (AS) que realiza la autenticación inicial
Durante una autenticación de Kerberos se almacena un ticket específico para cada sesión que sea iniciada en el dispositivo electrónico del usuario final, esto en lugar de una contraseña. La autenticación de Kerberos gira en un entorno en el que un KDC está autorizado para autenticar un servicio, Host o usuario.
La autenticación de Kerberos es un proceso de varios pasos que consisten en:
- El cliente que inicia la necesidad de una solicitud de servicio en nombre del usuario. El servidor, que aloja el servicio al que el usuario necesita acceder.
- El AS, que realiza la autenticación del cliente. Si la autenticación es exitosa, se emite al cliente un vale de otorgamiento de boletos (TGT) o un token de autenticación de usuario, que es prueba de que el cliente ha sido autenticado.
- El KDC y sus tres componentes: el AS, el TGS y la base de datos Kerberos.
- La aplicación TGS que emite tickets de servicio.
El protocolo Kerberos junto con los ciberseguros permite autenticar a las organizaciones en el proceso en los accxesos en las bases de datos, al servidor, acceso a las cuentas de las organizaciones.
De este modo las organizaciones no se tienen que preocupar por sí las contraseñas es interceptadas ya que van encriptadas y van seguras junto con la información. Sabemos la mayoría de los servicios de red se basan en contraseñas.
Esto es para que un usuario al querer tener acceso a un servidor que contiene una base de datos que quiere ver se hace este proceso de autenticación y verificar si cuenta con los permisos necesarios para acceder.