Skip to main content
HackTheBox machines – Tentacle WriteUp

HackTheBox machines – Tentacle WriteUp

Tentacle es una de las maquinas existentes actualmente en la plataforma de hacking HackTheBox basada en Linux

Tentacle es una de las maquinas existentes actualmente en la plataforma de hacking HackTheBox y es de dificultad Difícil.

En este caso se trata de una máquina basada en el Sistema Operativo Linux.

 

Escaneo de puertos

Como de costumbre, agregamos la IP de la máquina Tentacle 10.10.10.224 a /etc/hosts como tentacle.htb y comenzamos con el escaneo de puertos nmap.

Encontramos varios puertos abiertos así que vamos a tratar de enumerar los mismos para ver que información podemos obtener.

 

Enumeracion

Probamos el acceso a través del navegador en el puerto 3128, se trata de squid, un software de proxy http y nos devuelve un error

Acceso a squid

 

Pero a pesar del error, conseguimos dos datos interesantes, un posible nombre de usuario j.nakazawa@realcorp.htb y un dominio srv01.realcorp.htb.

Debido a que no podemos obtener mucha más información en este punto vamos a realizar una enumeración de los DNS a ver que subdominios podemos encontrar

Añadimos los mismos al fichero /etc/hosts y tratamos de acceder pero tenemos problemas.

Utilizaremos ahora proxychains para acceder a través del squid que vimos anteriormente a los nuevos subdominios descubiertos, si no lo tenemos instalado podemos hacerlo con el siguiente comando

Configuraremos el mismo en el modo dinámico y añadiremos los siguientes proxys al fichero /etc/proxychains.conf, o como en nuestro caso, hacemos una copia para separar el fichero que utilizamos normalmente con el utilizado para esta máquina

Accedemos al site de wpad.realcorp.htb abriendo una ventana en el navegador de la siguiente forma

Aunque esta nos devuelve un error 403, probaremos entonces a obtener el fichero wpad.dat (que suele ser el nombre por defecto) y descargar el mismo

Cuyo contenido es el siguiente

Observamos entonces que tenemos dos cidr /24 completas, la 10.197.243.0/24 y la 10.241.251.0/24 por lo que escanearemos las mismas con nmap.

Después de estar un rato analizando las posibilidades existentes, obtenemos una dirección válida con la ip 10.241.251.113 y cuyo escaneo nos muestra lo siguiente

Vemos que dispone del puerto 25 abierto, utilizado por OpenSMTPD así que buscaremos en google alguna vulnerabilidad al respecto y encontramos el CVE-2020-7247 y un exploit de la misma.

Al exploit le hemos realizado una serie de modificaciones que son las siguientes:

  • Sustituimos la opción de incluir parámetros en la ejecución del comando en lugar de solicitar los mismos por consola
  • Editamos el mail del usuario root por el que descubrimos anteriormente en la página de error de squid

Quedaría entonces como vemos a continuación:

 

Ahora que tenemos modificado nuestro exploit procederemos a su ejecución 

 

Y veremos como hemos obtenido una shell en nuestra escucha en netcat

 

Somos root, aunque esta no es la máquina que queremos conseguir, por lo que enumeraremos la misma con el fin de obtener más información al respecto.

Revisamos la home de los usuarios y encontramos un fichero .msmtprc en la home del usuario j.nakazawa

Cuyo contenido es el siguiente

 

Se trata de las credenciales para la conexión a través de kerberos, y como vimos anteriormente en el escaneo con nmap, el puerto utilizado por kerberos se encontraba abierto.

Probamos el acceso por ssh, pero sin éxito, así que vamos a tratar de crear un ticket de kerberos para posteriormente loguearnos con el mismo.

Instalamos el cliente en nuestro kali, si no lo tenemos ya instalado, con el siguiente comando:

A continuación sustituiremos cualquier línea en el fichero /etc/hosts que apunte a 10.10.10.224 por lo siguiente

Y añadiremos la siguiente configuración al fichero /etc/krb5.conf

 

Completada esta parte vamos a utilizar kinit para crear el ticket de nuestro usuario

Y para verificar que se ha creado correctamente vamos a ver un listado de los tickets existentes en nuestro sistema

Por último, accederemos por ssh con nuestro ticket

Llegados a este punto, si al acceder por ssh solicita una contraseña, revisa los pasos ya que te habrás dejado alguna configuración de aplicar.

 

Obteniendo la flag de user

Una vez estamos dentro de la máquina, nos dirigimos a la home del usuario y cogemos nuestra flag

 

Escalado de privilegios

Seguimos para root, aunque revisando los usuarios existentes, necesitaremos realizar un escalado más antes de llegar hasta él. Enumeramos el sistema y encontramos una tarea en el crontab del usuario admin

Este, ejecuta el fichero log_backup.sh cada minuto, así que vamos a revisar el contenido de este fichero

 

La tarea se encarga de comprimir los logs del squid y moverlos a la home del usuario admin y posteriormente, borrarlos. Conocido esto, vamos a tratar de crear un fichero .k5login con los datos del usuario conocido con la idea de que ese mismo fichero se mueva a la home del usuario admin, permitiendonos loguearnos con la cuenta del mismo.

Así que creamos nuestro fichero en una ruta con permisos de escritura

Y copiamos el fichero a la carpeta de logs del squid

Tan sólo nos queda probar el acceso por ssh 2 o 3 veces hasta que se ejecute la tarea, moviendo nuestro fichero y consiguiendo acceder con el usuario admin

 

A continuación, y viendo que se trata de un usuario con permisos de administrador, vamos a tratar de obtener el listado de usuarios existentes en kerberos

Y observamos que nuestro usuario admin es administrador del kerberos por lo que podemos tirar por esta parte.

Utilizaremos la tool de kadmin para poder ejecutar comandos como administrador y crear nuestro usuario root en la máquina. Dicho esto, accedemos a la administración

Y crearemos nuestro usuario root

Veámoslo a continuación:

Una vez completada la creación del usuario, utilizamos ksu para loguearnos con el mismo

Y ya somos root.

 

Obteniendo la flag de root

Ahora que ya estamos como root, procedemos a la home del usuario para conseguir nuestra flag

Y ya tenemos nuestra flag de root para completar esta máquina y conseguir nuestros puntos.

 

Si eres usuario de HackTheBox y te gustó mi writeup, por favor, dame respeto en el siguiente enlace

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *