Post

Blog Writeup - Vulnyx

Información
Máquina: Blog
Creador: d4t4s3c
SO: Linux
Dificultad: Easy

En el caso de esta máquina el propio creador d4t4s3c nos da la IP de la misma en el login de la máquina.

En mi laboratorio la IP que vamos a usar será:

1
192.168.0.30

Realizo un ping a la máquina para confirmar que hay visibilidad entre máquinas

Realizamos un nmap para ver que servicios están corriendo en la máquina.

1
nmap -sVC 192.168.0.30

El parámetro -sVC es el conjunto de -sV (Service Version, te muestra las versiones de los servicios) y -sC (Script Scan, nos ayuda a encontrar vulnerabilidades conocidas o servicios en el objetivo).

Disponemos de un servicio HTTP en el puerto 80 y un servicio SSH en el puerto 22, visitamos la web.

El index es un ping que nos da la pista de que se trata de un blog

Puesto que no encontramos nada procedemos a realizar un escaneo de directorios con dirbuster

1
gobuster dir -u "http://192.168.0.30" -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

Encontramos un directorio llamado /my_weblog, nos dirigimos a él.

Encontramos un blog, mirando el código fuente de la página nos damos cuenta que es un Nibbleblog

Buscando en la documentación de nibbleblog (ahora bludit) he encontrado que por defecto el usuario con privilegios es “admin”

Intentamos entrar al panel de login con la URL

http://192.168.0.30/my_weblog/admin/

pero sin éxito, intentamos un FUZZING para encontrar el panel de login

1
gobuster fuzz -w /usr/share/wordlists/wfuzz/general/admin-panels.txt -t 200 -u "http://blog.nyx/my_weblog/FUZZ" --exclude-length 270

Encontramos lo que parece ser el panel de control

Intentamos una fuerza bruta sabiendo que el usuario por defecto es admin

1
hydra -l admin -P /usr/share/wordlists/rockyou.txt 192.168.0.30 http-post-form "/my_weblog/admin.php:username=^USER^&password=^PASS^:Incorrect"

Obtenemos la password para acceder al panel de control

Una vez dentro vamos a intentar explotar la vulnerabilidad CVE-2015-6967 que permite ejecución remota de código a través del plugin My Image

Creamos y subimos la revshell a través del plugin My Image

Ponemos el puerto que hemmos elegido a la escucha

1
nc -nlvp 4444

Ejecutamos la revshell desde la URL

http://192.168.0.30/my_weblog/content/private/plugins/my_image/image.php

Conseguimos la shell como el usuario www-data

Encuentro la posible explotación del binario git

Hago una búsqueda en GTFObins

Antes de explotar el binario es necesario hacer un tratamiento de la TTY

Lo exploto ejecutándolo como el user admin con

1
sudo -u admin /usr/bin/git -p help config

Nos dejará meter un texto, invocamos la shell con !/bin/bash y nos convertimos en admin

Encontramos la flag de user dentro de su home

Hacemos el mismo procedimiento para escalar privilegios, observamos si como admin podemos ejecutar algún binario explotable como root

Encontramos el mcedit, haciendo una búsqueda en GTFObins no encontramos nada.

Ejecutamos el binario como root

1
sudo /usr/bin/mcedit

Encuentro una forma de invocar una shell desde el programa

Nos convertimos en root a través de la shell de mcedit

Y por último obtenemos la flag de root!

This post is licensed under CC BY 4.0 by the author.