Mientras realizaba una prueba de lápiz de rutina para un cliente, me topé con una caja que tenía OpenSSH 7.2p1 en ejecución.
A través de una búsqueda en Google descubrí esta vulnerabilidad con la versión de OpenSSH anterior
Fui a investigar más a fondo. Pude entender algunos de los detalles de la vulnerabilidad y la vulnerabilidad. Sin embargo, necesito ayuda para entender algunas cosas más.
Tengo una comprensión básica de cómo funciona exactamente SSH. Este es un recurso que está muy en sintonía con el entendiendo que tengo.
Ahora investigando el problema más a fondo, por lo que entiendo es que en el servidor X11Forwarding yes
se requiere en el archivo de configuración sshd. Debido a que tengo acceso SSH a la caja, verifiqué que se cumplió esta condición.
Lo siguiente que entiendo es que se necesita una cuenta con el shell configurado en /bin/false
o una cuenta de usuario con comandos forzados para poder demostrar la explotación en sí.
Además, además, el usuario anterior ya debe estar autenticado. (¿Es correcto este entendimiento?)
Así que entré en el cuadro e intenté ver si existe algún usuario que cumpla con las condiciones anteriores.
Hice un cat /etc/passwd | grep /bin/false
y apareció una lista de usuarios que tenían su shell configurado en / bin / false. Uno de estos usuarios fue el usuario llamado mongodb
, que tenía su directorio de inicio configurado en /home/mongodb
y también estaba protegido por una contraseña como lo indica el x
en el archivo passwd
.
Leí sobre la instalación de mongodb y llegué a saber que se instala con su propio usuario.
Ahora hay algunas cosas que necesito ayuda para comprender:
- ¿Cuál es el uso de este usuario
mongodb
? Miré a fondo / inicio y no pude encontrar un directorio de inicio para este usuario a pesar de que se mencionó en el archivo de contraseña. - ¿Cómo y cuándo se autentica este usuario?
- ¿Hay alguna forma de que cuando este usuario se autentique con el sistema, se pueda aprovechar para explotar el error de inyección del comando xauth autenticado OpenSSH?
Perdone mi menor comprensión de los usuarios de Linux o SSH y avíseme si hay recursos que me ayuden a comprender mejor estos conceptos básicos.