The Hackers Labs Offensive

Iniciamos como siempre observando los puertos abiertos en la maquina.


 nmap -sCV -p80,8080 172.16.241.216 -oN target.txt
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-12-31 15:57 EST
Nmap scan report for offensive.thl (172.16.241.216)
Host is up (0.00070s latency).

PORT     STATE SERVICE VERSION
80/tcp   open  http    Apache httpd 2.4.62 ((Debian))
|_http-generator: WordPress 6.7.1
|_http-server-header: Apache/2.4.62 (Debian)
|_http-title: rodgar
8080/tcp open  http    Node.js Express framework
|_http-title: Error
MAC Address: 00:0C:29:6E:9D:15 (VMware)

Versiones y servicios que corren para cada uno de los puertos.


Si vamos a la web observamos un servicio simple.

Si hacemos un whatweb observamos que hay un CMS wordpress en especifico.


Si hacemos una enumeracion de sub/directorios pues llegamos a ellos pero el unico que nos muestra contenido es images los demas no tenemos directory listen o directamente un 404.


La imagen ahora vamos a descargarla y haber si hay algo.


Vamos por punto.

  • Primero intentamos extraer el contenido que haya usando steghide, tiene contraseña.

  • Asi que usamos esta segunda herramienta llamada stegseek que es para hacer fuerza bruta directamente.

  • Ultimo punto obtenemos credenciales para extraer el contenido, lo extraemos y tenemos una contraseña que debido al nombre de la imagen es para el panel de autenticacion del wordpress.


Tenemos un usario y una contraseña pero no podemos acceder al panel, vamos a ver el puerto 8080 haber que hay por ahi.


Puerto 8080

Tenemos 4 directorios observaremos el help, que suena a panel de ayuda.


Help nos muestra este panel.


Con el parametro ls, nos dirigimos a la ruta plugins del wordpress que corre para observar que plugins hay y asi observar que nos puede estar impidiendo llegar al panel del wordpress.

WPS Hide Login es un complemento ligero que te permite cambiar de forma fácil y segura la URL de la página del formulario de inicio de sesión a lo que desees.

Esto nos esta bloqueando.


Borramos el plugins con la funcion que tenemos rm. Ahora ya deberiamos poder acceder al panel administrativo del wordpress.


Ya podemos llegar y iniciamos session con las credenciales que tenemos.


Nos enviamos una revshell usando el plugin que hay ahi.


Buscando la forma de escalar privilegios, encontramos un servicio que corre interno en el puerto 5000 puerto que desde fuera no logramos ver pero internamente si.

Vamos a hacer un portfor usando chisel, yo useo chisel.


En estos articulos explico lo que vamos a hacer acontinuacion.


  • Como punto numero uno nos ponemos como cliente desde nuestra maquina atacante.

  • Y como segundo nos conectamos como cliente.


Ahora que podemos llegar al puerto observamos este panel donde debemos averigurar la combinacion correcta ya que ya tenemos las credenciales.


Interceptamos la peticion con Burp y ahora nos creamos una lista de posibles pings usando seq.


Ok lo tenemos listo fijado ya.


Este codigo ping es diferente con su codigo de estado a los demas lo probaremos.


Entramos a un panel que lo ejecuta maria.


Nos enviamos una revshell.


  • Primer punto podemos ejecutar una aplicacion en el directorio de maria, que hace un cat del /etc/shadow donde no me lo muestra todo si no que solo las primeras lineas lo que podria ser un indicativo que se esta usando head para hacerlo.

  • Y segundo tenemos la flag de user.


Si hacemos un strings para ver las cadenas imprimibles filtrando por head observamos que lo estan empleando dos veces de manera relativa y absoluta para catear las primeras lineas del etc/shadow.

Esto lo podemos deribar a un PATH Hijaking.


  • Punto uno nuestro directorio actual /home/maria.

  • Segundo observamos donde inicia el recorrido.

  • Tercero exportamos el PATH para que el recorrido no inicie por /usr/ si no por /home/maria.

  • Observamos que ahora inica en /home y no en /usr.


Somos root maquina resuelta.

Última actualización