Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Módulos de autenticación y su orden

4 tareas · 38 min · Principiante

Cuando alguien entra a un servidor Linux, el servicio que lo recibe no decide solo: consulta una pila de módulos (PAM) que se lee de arriba abajo, y el resultado depende tanto de qué módulos hay como del orden en que están. Un módulo de más al principio, o uno de menos en una fase, deja una puerta abierta sin que ninguna línea parezca grave por separado. En Aserríos del Sinú lees las pilas de cuatro servicios de un mismo servidor y las mides contra la regla interna. Todo es lectura de evidencia ficticia, con pilas simplificadas.

0 de 4 · 0%

Objetivo de la sala

Cuando alguien entra a un servidor Linux, el servicio que lo recibe no decide solo: consulta una pila de módulos (PAM) que se lee de arriba abajo, y el resultado depende tanto de qué módulos hay como del orden en que están. Un módulo de más al principio, o uno de menos en una fase, deja una puerta abierta sin que ninguna línea parezca grave por separado. En Aserríos del Sinú lees las pilas de cuatro servicios de un mismo servidor y las mides contra la regla interna. Todo es lectura de evidencia ficticia, con pilas simplificadas.

Cada línea de una pila PAM tiene un tipo (auth, account, session…), una bandera de control y un módulo. La bandera decide qué pasa con el resultado del módulo. Con required, un fallo hace fallar toda la pila de ese tipo, pero se siguen evaluando las líneas de abajo. Con sufficient, un éxito (si ningún required anterior falló) da la pila por buena y las líneas siguientes no se leen.

Por eso sufficient es útil para ofrecer varias vías (cuenta local o del directorio), pero también es la bandera que más veces esconde un módulo importante que quedó debajo.

Responde para continuar

En una pila de auth, un módulo `sufficient` acierta y ningún required anterior ha fallado. ¿Qué ocurre con las líneas de auth que siguen?

Ver pista de ayuda

Piensa en el nombre de la bandera: ya es suficiente.

pam_permit es un módulo que siempre concede. Tiene usos legítimos, pero en una fase auth y con bandera sufficient puesto antes de los módulos que verifican la contraseña, convierte el servicio en uno que deja pasar a cualquiera: el primer módulo acierta siempre y el resto nunca se lee.

Abre los cuatro archivos de /pam y mira la primera línea de auth de cada uno; el nombre del servicio es el del archivo, sin la extensión.

Responde para continuar

¿Qué archivo de pam.d tiene el módulo que concede siempre antes que los que verifican la contraseña?

La regla interna dice que toda pila de cara a personas lleva pam_access, que restringe quién puede entrar. En login.txt el módulo está, pero la fase account tiene una línea sufficient del directorio antes de él. Para una cuenta del directorio, esa línea acierta y la pila termina sin pasar por la lista de acceso.

Compara la fase account de login.txt con la de sshd.txt, donde el orden es otro.

Responde para continuar

¿Qué módulo de la fase account de login no se evalúa para las cuentas del directorio por culpa del orden?

pam_faillock cuenta los intentos fallidos y bloquea la cuenta temporalmente. En una pila va en tres lugares: con preauth antes de verificar la contraseña, con authfail después, y en la fase account. Sin él, un servicio acepta intentos indefinidos de adivinar una contraseña. Se mide cuántos de los servicios del servidor lo usan, no si lo usan bien: es el primer paso de la revisión.

Cuenta en los cuatro archivos de /pam cuántos contienen pam_faillock.

Responde para continuar

¿En cuántos de los cuatro servicios revisados aparece pam_faillock?

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad