Pregunta

Soy nuevo en el tema de la criptografía y estoy estudiando PKI y PKCS, etc. Entiendo el concepto básico de PKI y cómo se usa para el cifrado / descifrado. Sin embargo, estoy confundido acerca de cómo se usa un token de hardware como un token USB o una tarjeta inteligente para el inicio de sesión seguro en su computadora. Estos son los pasos según los entiendo y la parte que me confunde (disculpe de antemano la longitud de la pregunta):

Escenario: la computadora xyz en la red contiene datos a los que solo pueden acceder los usuarios que pertenecen al grupo SECRET. Los usuarios Bob y Joe están en este grupo y se les han emitido tokens USB que pueden usar para proporcionar credenciales que les permitirán acceder a estos recursos. El token USB emplea autenticación de dos factores y requiere un pin para ingresar. El token es compatible con PKCS11.

  1. Bob inserta el token USB en la máquina Linux
  2. Un módulo PAM-PKCS11 reconoce este evento y le pide a Bob que ingrese su pin.
  3. Una vez que Bob ingresa correctamente su PIN de 4 dígitos, el módulo verifica la validez del certificado en el token de Bob mediante (esto varía, pero ¿cuál es el mínimo?) :
    • Ubicar el certificado raíz para buscar una CA de confianza
    • Comprobando las fechas de validez del certificado y las listas de revocación
    • Id. de coincidencia en el token con el archivo de usuario (¿dónde ?, falta un paso) o directorio (LDAP, etc.)
  4. Si todo se ve bien, el módulo informa a PAM del resultado exitoso.
  5. Esta línea está etiquetada como suficiente para que PAM acepte la autenticación y Bob haya iniciado sesión y pueda ver la información restringida a los usuarios del grupo SECRETO.

La parte que me falta es dónde está almacenada la información acerca de si Bob puede acceder a esta máquina y cómo está vinculado exactamente a Bob, el usuario de la red (o incluso del escritorio). Entiendo que otros datos de identificación sobre Bob se almacenarán en el USB, incluida una identificación (por ejemplo, dirección de correo electrónico). Sin embargo, ¿cómo es esta fuerte seguridad? ¿Dónde se emplea crypto durante el proceso de inicio de sesión, en todo caso (o no es el propósito real de estos tokens)? Si alguien se apodera del USB y conoce el pin de 4 dígitos, eso parece ser todo lo que se necesita, ¿verdad? Además, ¿es esencialmente la confianza en la CA la que permite confiar en que otro usuario no puede obtener un nuevo token USB y usar una CA de confianza para obtener un nuevo certificado, pero especificar que todos los datos de identificación sean iguales a los de Bob? Sé que hay una parte crítica que me falta ... pero después de leer docenas de artículos, la explicación de esta área parece pasada por alto. ¿Es una buena idea usar un token de hardware como un medio suficiente para que la autenticación inicie sesión en una máquina que contiene datos confidenciales? ¿O es el propósito de estos tokens principalmente almacenar de forma segura los pares de claves que se utilizan en otras aplicaciones? ¡Gracias por su ayuda!

¿Fue útil?

Solución

PAM (como su nombre lo indica) solo maneja la autenticación. La autenticación consiste en probar quién es el usuario, es decir, "probarme quién soy quien dices que eres". Esto está separado de la Autorización que es, es decir, " ¿Tiene acceso a este recurso? & Quot ;.

La autenticación tiene tres aspectos:
1. lo sé
2. tengo
3. Yo soy

Una combinación típica de nombre de usuario / contraseña encaja en 1. Mientras que un token u otro dispositivo PKCS encaja en 2, y la biométrica, como el reconocimiento de iris o la lectura de huellas dactilares, encaja en el número tres.

Cuanto más de estos aspectos tenga en su seguridad, mejor / más estricta será la seguridad. En este caso, el inicio de sesión se ajusta a 1 y 2, por lo que es más seguro que solo un nombre de usuario y una contraseña. Si alguien quitaba su pin y le robaba el dispositivo, entonces sí, no probaría que lo está usando. Pero tampoco lo haría si Bob le diera su nombre de usuario y contraseña a alguien.

El objetivo del token es introducir el segundo factor de " que tiene " algo, el hecho de que también necesite un PIN significa que " saber " También se requiere algo. Entonces, el sistema puede tener más confianza de que la persona es quien dice ser.

La parte faltante a la que se refiere es Autorización , como se indica, es un proceso independiente para la autenticación y ocurre solo después de que el usuario se haya autenticado. En este caso, PAM ha autenticado a Bob y ha confirmado al SO que Bob está usando el sistema. Sin embargo, el sistema operativo tendría que realizar otra comprobación en el paso 5 para confirmar que Bob tenía acceso al recurso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top