Page cover

🔑Lab de contraseñas - Easy

Nuestro cliente Inlanefreight nos contrató para evaluar hosts individuales en su red, centrándonos en el control de acceso.

La empresa implementó recientemente controles de seguridad relacionados con la autorización que les gustaría que probáramos. Hay tres hosts dentro del alcance de esta evaluación. El primer host se utiliza para administrar y gestionar otros servidores dentro de su entorno.


Objetivo

Examina el primer objetivo y envía la contraseña de root como respuesta.

Escaneo de puertos

sudo nmap -v -sV -T5 10.129.202.219              
 
PORT   STATE SERVICE VERSION
21/tcp open  ftp     vsftpd 3.0.3
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.4 (Ubuntu Linux; protocol 2.0)

Solamente tiene abiertos los puertos 21 y 22, por lo que centraremos nuestros bruteforce contra estos servicios.

Bruteforce de SSH

Como ya hemos visto en esta sección, tenemos 2 diccionarios:

  • username-list: Diccionario de usuarios

  • password.list: Diccionario de contraseñas

Vamos a lanzar el bruteforce contra SSH y el usuario root:

Hydra no consigue hacer bruteforce con el diccionario normal, asi que vamos a mutarlo con hashcat:

Volvemos a lanzar el bruteforce pero hydra no consigue descifrar ningún usuario ni contraseña válido, por lo que vamos a atacar el otro servicio activo: FTP

Bruteforce de FTP

Y bummmm! Conseguimos las credenciales del usuario Mike. Al conectarnos por FTP nos encontramos varios id_rsa para conectarnos por ssh y un authorized_keys que puede contener información relevante:

Conexión por SSH

Ahora que tenemos los archivos en nuestra máquina de atacante, vamos a intentar conectarnos por SSH:

Al intentar conectarnos por SSH nos dice permission denied, por lo que necesitamos conectarnos a través del id_rsa:

Nos dice que los permisos del id_rsa son muy abiertos, entonces vamos a limitarlos:

Cracking con ssh2john

Igualmente nos pide el passphrase, por lo que vamos a crackear este id_rsa con ssh2john y John the Ripper para intentar extraer la contraseña en plano:

Ahora que tenemos el passphrase vamos a conectarnos por SSH:

Enumeración

Una vez que estamos dentro vamos a empezar a enumerar información, por ejemplo el historial de la terminal:

Como vemos, obtenemos la contraseña del usuario root, almacenada en el historial de la terminal 🏆

Escalada de privilegios

Última actualización

¿Te fue útil?