KERBEROS

Kerberos

Introducción:

En la seguridad web la manera más segura de que los datos que se han metido a través de un formulario en una página web, es autenticar quien es el que los está metiendo y quien es el que los está solicitando. Hay diferentes formas de autenticar a las personas y la información que proporcionan y para eso es que han creado protocolos que se usan para que no haya fraudes ni que haya suplantación de identidades, aquí vamos a describir un protocolo.

Desarrollo:

Es una arquitectura cliente-servidor que proporciona seguridad a las transacciones en las redes. El servicio ofrece una sólida autenticación de usuario y también integridad y privacidad. La autenticación garantiza que las identidades del remitente y del destinatario de las transacciones de la red sean verdaderas. El servicio también puede verificar la validez de los datos que se transfieren de un lugar a otro (integridad) y cifrar los datos durante la transmisión (privacidad). Con el servicio Kerberos, puede iniciar sesión en otros equipos, ejecutar comandos, intercambiar datos y transferir archivos de manera segura. Además, Kerberos proporciona servicios de autorización, que permiten a los administradores restringir el acceso a los servicios y los equipos. Asimismo, como usuario de Kerberos, puede regular el acceso de otras personas a su cuenta.

Kerberos se desarrolló como parte del Proyecto Athena en el MIT. Fue diseñado para abordar el problema que plantea el hecho de que, en un entorno abierto distribuido, los usuarios de las estaciones de trabajo quieran acceder a servicios de servidores distribuidos por toda la red. Sería conveniente que los servidores pudiesen restringir el acceso a los usuarios autorizados y autentificar las solicitudes de servicios. En este entorno no se puede confiar en que una estación de trabajo identifique a sus usuarios correctamente ante los servicios de red. Concretamente, se pueden dar las tres amenazas que se exponen a continuación:
  • Un usuario podría obtener acceso a una estación de trabajo concreta y fingir ser otro usuario que opera desde esa estación de trabajo.
  • Un usuario podría alterar la dirección de red de una estación de trabajo para que las solicitudes enviadas desde dicha estación parezcan proceder de la estación que ha sido suplantada.
  • Un usuario podría realizar escuchas en intercambios y usar un ataque de repetición para conseguir entrar en un servidor o interrumpir las operaciones.


Kerberos utiliza criptografía para verificar la identidad del usuario, manipulando dos tipos de claves:

Clave secreta del usuario: clave conocida únicamente por el usuario y por Kerberos, con la finalidad de autentificar un usuario frente a Kerberos. El Servidor de Autenticación (AS) conoce las passwords de todos los usuarios y las almacena en una base de datos centralizada. El AS comparte una única clave secreta con cada servidor. Esas claves fueron distribuidas físicamente o de alguna otra forma segura.

Clave de sesión: clave generada por Kerberos luego de autenticar al usuario, con la finalidad de autenticar el intercambio realizado por un determinado par de usuarios que definen una sesión. Esta clave es generada atendiendo una solicitud hecha por los usuarios, siendo válida por un tiempo pre-determinado (tiempo de vida) y conocida únicamente por aquellos para los cuales fue originalmente generada.

Cada usuario, o principal en términos de Kerberos, posee una clave de cifrado privada que se comparte con el KDC. Colectivamente, el conjunto de identificadores individuales y sistemas registrados en un KDC se denominan un dominio.



Un ticket de servicio cifrado almacena las credenciales de un usuario. El servidor de bases de datos descifra el ticket para verificar que las credenciales están asociadas a un inicio de sesión de usuario autorizado para el acceso. Mientras exista un ticket de servicio válido en la red, la instancia de IBM® Informix autoriza el acceso del usuario que ha iniciado la sesión al DBMS. El protocolo Kerberos tiene las siguientes características de seguridad:
Los tickets de servicio existen en la red durante un periodo limitado.

Sólo el cliente y el servidor puede descifrar estos tickets, por lo que los datos están protegidos si los tickets se interceptan desde la red.

La entrada del nombre de usuario y contraseña está limitada a la sesión de inicio de sesión inicial, lo que reduce el riesgo de una posible interceptación de credenciales de texto claro.

Componentes del software Kerberos

La instrumentación Athena comprende varios módulos:
  • Biblioteca de las aplicaciones Kerberos
  • biblioteca de encripción
  • biblioteca de la base de datos
  • programas de la Administración de base de datos
  • servidor de la administración
  • servidor de autenticación
  • software de difusión DB
  • programas del usuario
  • aplicaciones

El KDBM (el servidor de la administración) maneja las peticiones de los usuarios de cambiar sus contraseñas. El lado del cliente de este programa, que envía las peticiones al KDBM sobre la red, es el programa kpasswd. El KDBM también valida las peticiones de los administradores de Kerberos, que pueden agregar los principales a la base de datos, así como cambia las contraseñas para los mandantes existentes. El lado del cliente del programa de la administración, que también envía las peticiones al KDBM sobre la red, es el programa Kadmin.

El servidor KDBM valida las peticiones de agregar los principales a la base de datos o de cambiar las contraseñas para los mandantes existentes. Este servicio es único en que el servicio de distribución de tickets no publicará los boletos para él. En lugar, el servicio de autenticación sí mismo debe ser utilizado (el mismo servicio que se utiliza para conseguir un ticket distribuido). El propósito de esto es requerir al usuario ingresar una contraseña. Si esto no estaba, así pues, después si un usuario salió de su puesto de trabajo desatendido, un transeúnte podría recorrer para arriba y cambiar su contraseña para ellos, algo que debe ser prevenido. Asimismo, si un administrador salió de su puesto de trabajo sin vigilar, un transeúnte podría cambiar cualquier contraseña en el sistema.

Todas las peticiones al programa KDBM, están permitidas o negadas, se registran.
Los administradores del Kerberos utilizan el programa Kadmin para agregar los principales a la base de datos, o cambian las contraseñas de los mandantes existentes. Requieren a un administrador ingresar la contraseña para su nombre de la instancia admin cuando invocan el programa Kadmin. Esta contraseña se utiliza para traer un boleto para el servidor KDBM.

Los usuarios pueden cambiar sus contraseñas de Kerberos usando el programa kpasswd. Los requieren ingresar su contraseña anterior cuando invocan el programa. Esta contraseña se utiliza para traer un boleto para el servidor KDBM.

Autores de Kerberos:
  • Jennifer G. Steiner, proyecto Athena, Massachusetts Institute of Technology, Cambridge, MA 02139, steiner@ATHENA.MIT.EDU
  • Clifford Neuman, Departamento de informática, FR-35, Universidad de Washington, Seattle, WA 98195, bcn@CS.WASHINGTON.EDU. Clifford Neuman era un miembro del personal directivo del proyecto Athena durante la fase del diseño y de instrumentación inicial de Kerberos.
  • Jeffrey I. Schiller, proyecto Athena, Massachusetts Institute of Technology, Cambridge, MA 02139, jis@ATHENA.MIT.EDU




Conclusiones:

Al ver protocolos de autenticación que necesitas en tu vida diaria si eres una persona que tiene una vida en donde tiene que identificarse en varias plataformas en la red te das cuenta de que se usa una compleja logística para que la seguridad del web este segura. Así que KERBEROS es un protocolo que ayuda a que sea más seguro y que tendré la confianza de que la información de mi usuario esté segura.

Referencias:

CISCO (2006) Descripción del Kerberos un servicio de autenticación para los sistemas de red abierta
Recuperado el 11/11/17, de
https://www.cisco.com/c/es_mx/support/docs/security-vpn/kerberos/16087-1.html#kerberosdatabase

Gloria de la Cruz (2014) Protocolo de autenticación Kerberos
Recuperado el 11/11/17, de
http://gloriadelacrruz.blogspot.mx/

Marisa Andrea Malvaso (-) Tutorial T10- Kerberos
Recuperado el 11/11/17, de
http://penta.ufrgs.br/gereseg/unlp/t10home.htm

ORACLE (2011) ¿Qué es el servicio Kerberos?
Recuperado el 11/11/17, de
https://docs.oracle.com/cd/E24842_01/html/E23286/intro-5.html


IBM (2013) Protocolo de autenticación Kerberos
Recuperado el 11/11/17, de
https://www.ibm.com/support/knowledgecenter/es/SSGU8G_12.1.0/com.ibm.sec.doc/ids_sso_002.htm

Comentarios