Can you hack me?
๐ Dificultad: Principiante
๐ RECONOCIMIENTO
En primer lugar, tras conectarnos a la mรกquina, utilizamos el comando:
ping -c 1 192.168.1.53
para verificar la conectividad de red.

A continuaciรณn, se realiza el comando:
nmap -sVC -p- -n --min-rate 5000 192.168.1.53
para realizar un escaneo de puertos y servicios detallado en la direcciรณn IP.

Como podemos observar durante el escaneo que el puerto 22 perteneciente al servicio SSH y el puerto 80 perteneciente al servicio HTTP estรกn abiertos por lo que a continuaciรณn se indagarรก mรกs.
๐ EXPLORACIรN
Se utiliza el comando:
sudo nmap -sCV -p21,22,80,3306 -v 192.168.1.53
para obtener mรกs informaciรณn sobre ese puerto especรญficamente.

Seguimos indagando mรกs sobre los puertos y ahora exploramos el servicio HTTP. Antes que nada se aรฑadiรณ en el fichero /etc/hosts
el dominio canyouhackme.thl con su correspondiente IP.

Revisamos el cรณdigo fuente y encontramos un mensaje relevante.

Descubrimos un posible nombre de usuario llamado juan por lo que realizaremos un ataque de fuerza para poder obtener una contraseรฑa y asรญ poder conectarnos como descubrimos al servicio SSH.
๐ EXPLOTACIรN
Con la informaciรณn obtenida anteriormente, realizamos el comando:
hydra -l juan -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.53
que utiliza la herramienta Hydra para realizar un ataque de fuerza bruta contra el servicio SSH de una mรกquina con la IP 192.168.1.53.

Al realizar el ataque de fuerza bruta, hemos descubierto la contraseรฑa de juan. Sabiendo esto, nos conectamos a travรฉs de SSH al usuario con el comando:
ssh juan@192.168.1.53

๐ PRIVILEGIOS
Al estar dentro y ejecutar:
whoami
aรบn no somos root, por lo que hacemos:
sudo -l
para ver si hay algo para explotar pero observamos que no podemos ejecutar sudo.
Listamos permisos SUID y capabilities, pero no tenemos nada que nos pueda ayudar.
find / -perm -4000 -user root 2>/dev/null -o -type f -exec getcap {} \; 2>/dev/null

Verificamos los grupos a los que pertenece el usuario y observamos que forma parte del grupo Docker.

Vamos a verificar si podemos aprovechar nuestra pertenencia al grupo Docker. Para mรกs informaciรณn, podemos consultar HackTricks, donde revisamos los detalles sobre Docker.
find / -name docker.sock 2>/dev/null

Listamos las imรกgenes y confirmamos que tenemos una llamada Alpine.
docker images

Con esto, ahora podemos ejecutar la imagen montando en el host y utilizando chroot para obtener acceso como root.
docker run -it -v /:/host/ alpine chroot /host/ bash


Hemos finalizado con รฉxito todas las etapas del proceso y cumplido con todos los requisitos.
ยกBuena suerte en tu bรบsqueda de las flags! Recuerda prestar atenciรณn a cada detalle, examinar los archivos y servicios detenidamente, y utilizar todas las herramientas a tu alcance para encontrarlas. ยกLa clave estรก en la perseverancia y en no dejar nada sin explorar! ยกAdelante, hacker! ๐ป๐๐
Last updated
Was this helpful?