Skip to main content

Thehackerslabs machines – Offensive Writeup

Thehackerslabs machines – Offensive Writeup

Offensive es una de las maquinas existentes actualmente en la plataforma de hacking Thehackerslabs y es de dificultad Profesional.

 

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

 

Empezaremos con el escaneo de puertos una vez tenemos la ip que tiene la maquina a vulnerar,  en mi caso será la 192.168.0.250

 

Una vez tenemos los puertos abiertos, con nmap le pasamos el parámetro -sCV para que le pase los scripts por defecto y conseguir mas información de cada uno de ellos.

 

La web que vemos por el puerto 80 es lo siguiente, y viendo que nos da un virtualhost, lo añadimos a /etc/hosts.

 

Con wappalyzer que tenemos un wordpress pero confirmaremos con feroxbuster y también vemos un fichero un tanto curioso llamado wp-login.jpg

 

Confirmado wordpress, usamos wpscan para revisar plugins, usuarios, versiones,etc.

 

Si nos damos cuenta en el output, nos da el mensaje «Could not find a login interface to perform the password attack against» es decir, no tiene acceso al login por lo que no puede intentar por fuerza bruta saber cual es la contraseña.

Probamos a ir al recurso http://offensive.thl/wp-admin y efectivamente nos redirije

Tenemos que tener claro que ciertos plugins, lo que hacen es «esconder» la pagina de login y esto puede ser una pista de por donde tenemos que ir.

 

Sin nada que mas ver por este puerto, cambiamos al 8080 que también vimos abierto:

 

Usamos feroxbuster de nuevo para ver qué nos encontramos

 

Nos ha encontrado lo que aparentemente serian comandos de linux y una ayuda, la cual leemos:

 

Según lo que leemos, deberíamos de poder listar, descargar, abrir y borrar archivos pero sólo en el path /var/www :

 

Leemos carpetas en el path que tenemos asignado! Jugaremos con jq para verlo de forma mas simple accediendo a wordpress

 

Desde aquí podemos leer el archivo wp-config.php, posiblemente este un usuario y contraseña que podamos usar. Los anotamos.

 

Seguimos con la idea que teníamos antes del plugin para la página de login, buscamos en el directorio wp-content/plugins

 

Viendo el ultimo plugin y como se llama, parece que puede ser el culpable de no poder acceder al login, buscamos en google y según vemos, cambia la url.

 

Si recordamos, también tenemos el comando rm, y si todo va bien, podemos borrar la carpeta del plugin y con esto conseguiremos que no se acceda, por lo que deberíamos de ver el login.

 

Probamos con las credenciales del fichero wp-config.php pero no son las correctas dado que el usuario que solo hemos encontrado es administrator, pero tampoco se ha reutilizado la contraseña, pero si recordamos en el primer escaneo es feroxbuster, vimos un fichero jpg un tanto curioso asi que accedemos.

 

Aparentemente no tiene nada, probamos a descargarla por si tiene algo en los metadatos o incrustado.

 

Le toca el turno a stegseek y encontramos un fichero con lo que posiblemente pueda ser la contaseña del usuario administrator

 

Probamos con las credenciales y dentro!

 

Lo que ahora toca es tener una shell en el sistema y para ello, usaremos el plugin que también vimos, wptem, con el que deberiamos de poder enviarnos una reverse shell.

 

Viendo que procesos son los que hay corriendo, vamos el siguiente que además, el propietario es el unico usuario del sistema.

 

Pero este puerto no lo hemos visto desde fuera, podria que ser que iptables este bloqueandolo

 

Visto esto,  usaremos socat para poder ver el puerto

 

Ahora ya desde nuestra maquina podemos acceder a la web, pero parece que aunque el usuario y contraseña ya estan puestos, necesitaremos un pin de 4 digitos.

 

Nos crearemos un diccionario de todos los numeros desde el 0000 al 9999, posteriormente, usamos ffuf para encontrar el pin.

 

Conseguido el pin, ingresamos y vemos que podemos ejecutar comandos como el usuario maria, asi que nos mandamos una reverse shell.

 

Una vez conectados, si miramos el home del usuario vemos que tenemos un binario SUID como root.

 

Lo ejecutamos y miraremos con strings si hay algo que nos ayude.

 

Lo que parece que ejecuta con head las 8 primeras lineas, con strings vemos como lo hace, al parecer la primera ejecucion lo hace con un path absoluto pero el segundo NO por lo que puede ser vulnerable a path hijacking.

 

Creamos un fichero llamado head, le damos permiso de ejecucion y le inyectamos el que se convierta en SUID el binario /bin/bash

 

Si todo va bien, al ejecutar de nuevo el binario app, /bin/bash deberia de convertirse en SUID.

 

Y asi nos convertimos en root

 

Hasta aquí la maquina Offensive de la plataforma Thehackerslabs

 

 

Deja una respuesta

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