Autenticación : autenticación del identificador presentado por el usuario. Se requiere autenticación para acceder a servicios de Internet como:
Un resultado positivo de la autenticación (además del establecimiento de relaciones de confianza y la generación de una clave de sesión) es la autorización del usuario, es decir, el otorgamiento de derechos de acceso a los recursos definidos para el desempeño de sus tareas.
Dependiendo de la importancia del recurso, se pueden utilizar diferentes métodos de autenticación para acceder a él:
tipo de recurso | Tecnología de autenticación |
---|---|
La autenticación es necesaria para acceder a los sistemas de información que contienen información cuya divulgación no tiene consecuencias significativas. | El requisito mínimo para la autenticación es el uso de contraseñas reutilizables. |
El acceso a la información, cuya modificación, divulgación o destrucción no autorizada cause un daño significativo. | Requiere el uso de contraseñas de un solo uso , y el acceso a todos los demás tipos de recursos requiere el uso de una autenticación sólida. |
Acceso a los sistemas de información información confidencial. | Requiere el uso de autenticación fuerte mutua. |
Según el grado de relación de confianza, la estructura, las características de la red y la lejanía del objeto, la verificación puede ser unidireccional o mutua. También hay autenticación fuerte (criptográfica) y de un solo factor. De los sistemas de un factor, los más comunes en este momento son los sistemas de autenticación de contraseña. El usuario tiene una identificación y una contraseña , es decir, información secreta conocida solo por el usuario (y posiblemente por el sistema) que se utiliza para autenticarse. Dependiendo de la implementación del sistema, la contraseña puede ser de un solo uso o reutilizable. Consideremos los principales métodos de autenticación según el principio de complejidad creciente.
Con este tipo de autenticación, el nombre de usuario y la contraseña se incluyen en la solicitud web ( HTTP POST o HTTP GET ). Cualquiera que intercepte el paquete descubrirá fácilmente la información secreta. Incluso si el contenido restringido no es muy importante, es mejor no usar este método, ya que el usuario puede usar la misma contraseña en varios sitios web . Las encuestas de Sophos muestran que, en 2006 y 2009, el 41 % de los usuarios utilizan una sola contraseña para todas sus actividades en línea, ya sea en el sitio web de un banco o en un foro local [1] [2] . Además, entre las desventajas de la autenticación de contraseña, se debe tener en cuenta un bajo nivel de seguridad: la contraseña se puede espiar, adivinar, recoger, informar a personas no autorizadas, etc.
Esta es una autenticación en la que la contraseña del usuario se transmite en forma de hash . Parecería que en cuanto al nivel de confidencialidad de la contraseña, este tipo no difiere mucho del anterior, ya que al atacante no le importa si es realmente una contraseña real o solo un hash de ella: habiendo interceptado el mensaje, todavía obtiene acceso al punto final. Pero esto no es del todo cierto: la contraseña siempre se codifica con la adición de una cadena de caracteres arbitraria, que se genera de nuevo para cada conexión. Por lo tanto, con cada conexión, se genera un nuevo hash de contraseña y la interceptación no funcionará. La autenticación Digest es compatible con todos los servidores y navegadores populares .
El protocolo HTTPS le permite cifrar todos los datos transmitidos entre el navegador y el servidor, no solo los nombres de usuario y las contraseñas. HTTPS (basado en la seguridad TLS ) debe usarse cuando los usuarios deben ingresar información personal confidencial, como una dirección, número de tarjeta de crédito o información bancaria. Sin embargo, el uso de este protocolo es significativamente[ cuanto? ] ralentiza la velocidad de acceso.
Los mecanismos de autenticación que utilizan certificados digitales suelen utilizar un protocolo de desafío y respuesta. El servidor de autenticación envía al usuario una secuencia de caracteres, el llamado desafío. La respuesta es una solicitud del servidor de autenticación firmada con la clave privada del usuario. La autenticación de clave pública se usa como un mecanismo de autenticación seguro en protocolos como SSL y también se puede usar como uno de los métodos de autenticación dentro de los protocolos Kerberos y RADIUS .
Muchos sitios diferentes usan cookies como medio de autenticación , estos incluyen chats, foros, juegos. Si la cookie puede ser robada, al falsificarla, puede autenticarse como un usuario diferente. En el caso de que los datos de entrada se filtren mal o no se filtren en absoluto, el robo de cookies se convierte en una empresa no muy difícil [3] . Para mejorar en algo la situación, se utiliza la protección por dirección IP , es decir, las cookies de sesión se asocian a la dirección IP desde la que se autorizó inicialmente al usuario en el sistema. Sin embargo, una dirección IP puede falsificarse mediante la suplantación de IP , por lo que tampoco puede confiar en la protección de la dirección IP . Por el momento, la mayoría de los navegadores [4] usan cookies con el indicador HTTPonly [5] , que evita que los scripts accedan a las cookies.
Una de las principales desventajas de tales sistemas es que la piratería da acceso a muchos servicios a la vez.
ID abiertoEs un sistema abierto de autenticación de usuario descentralizado. OpenID permite que un usuario tenga un nombre de usuario y una contraseña para diferentes sitios web . La seguridad se proporciona mediante la firma de mensajes. La transferencia de claves para la firma digital se basa en el uso del algoritmo Diffie-Hellman , también es posible la transferencia de datos a través de HTTPS . Posibles vulnerabilidades de OpenID :
Gigantes como BBC [6] , Google [7] , IBM , Microsoft [8] MySpace , PayPal , VeriSign , Yandex y Yahoo! [9] [10] [11]
openauthSe utiliza para autenticar a los usuarios de AOL en los sitios web [12] . Les permite usar los servicios de AOL , así como cualquier otro integrado por encima de ellos. Le permite autenticarse en sitios que no son de AOL sin tener que crear un nuevo usuario en cada sitio. El protocolo funciona de manera similar a OpenID [13] . También se han tomado medidas de seguridad adicionales:
OAuth permite que un usuario permita que un servicio de Internet acceda a los datos del usuario en otro servicio de Internet [14] . El protocolo se utiliza en sistemas como Twitter [15] , Google [16] ( Google también admite un protocolo híbrido que combina OpenID y OAuth )
En muchos sentidos, la seguridad de los usuarios en Internet depende del comportamiento de los propios usuarios. Por ejemplo, Google muestra desde qué dirección IP se habilitan las sesiones de usuario, registra la autorización y también le permite realizar las siguientes configuraciones:
A menudo, se le dice al usuario desde qué dirección IP se autenticó por última vez.
Para aumentar la seguridad en la práctica, se utilizan varios factores de autenticación a la vez. Sin embargo, es importante comprender que no todas las combinaciones de varios métodos constituyen autenticación multifactor. Se utilizan varios factores:
Uno de los métodos de autenticación multifactor más confiables hasta la fecha se basa en el uso de dispositivos de hardware personales: tokens . Básicamente, un token es una tarjeta inteligente o una llave USB. Los tokens le permiten generar y almacenar claves de cifrado, lo que proporciona una autenticación sólida.
El uso de contraseñas clásicas "reutilizables" es una vulnerabilidad grave cuando se trabaja desde las computadoras de otras personas, por ejemplo, en un cibercafé . Esto llevó a los principales fabricantes del mercado de autenticación a crear generadores de contraseñas de un solo uso basados en hardware . Dichos dispositivos generan la siguiente contraseña de acuerdo con un programa (por ejemplo, cada 30 segundos) o previa solicitud (presionando un botón). Cada una de esas contraseñas solo se puede usar una vez. La validación de la exactitud del valor ingresado en el lado del servidor es verificada por un servidor de autenticación especial que calcula el valor actual de la contraseña de un solo uso mediante programación. Para preservar el principio de autenticación de dos factores, además del valor generado por el dispositivo, el usuario ingresa una contraseña permanente.