Notas de Luis

Hacemos el reconocimiento con nmap:

En primer lugar revisamos el ftp como anonymous, pero está vacío:

Y esto corre dentro del puerto 80:

Si hacemos fuzzing, encontramos un wordpress:

Y en la web vemos el usuarios elyana:

Y al ser wordpress, también tenemos el wp-login.php:

Si en el panel de login ponemos el usuario elyana, vemos que el mensaje de error cambia, por lo que nos muestra que este usuario existe:

Con esta información, podemos hacer un ataque de fuerza bruta, pero vemos que no encuentra las credenciales:

Por lo que haremos una enumeración de plugins:

wpscan --url http://10.10.7.50/wordpress/ -e p

Y encontramos este que es vulnerable:

Tenemos un script que explota un local file inclusion y podemos leer archivos internos de la máquina:

https://github.com/p0dalirius/CVE-2016-10956-mail-masta

Por tanto lo ejecutamos de la siguiente forma para intentar leer el fichero /etc/passwd:

python3 CVE-2016-10956_mail_masta.py -t http://10.10.123.20/wordpress/ -f /etc/passwd

Y vemos que funciona:

De todos modos, en más webs nos enseñan alternativas para leer archivos internos de la máquina, como ene sta otra de wpscan:

https://wpscan.com/vulnerability/8609

Lo probamos en el navegador y funciona:

Pero si queremos obtener el fichero wp-config.php, tenemos que hacer uso de un wrapper:

http://10.10.6.206/wordpress/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=php://filter/convert.base64-encode/resource=../../../../../wp-config.php

Esto lo tenemos que decodificar ya que viene en base64:

Y vemos las credenciales del usuario elyana:

Elyana:H@ckme@123

Por tanto iniciamos sesión en el panel de autenticación de wordpress y ya estamos dentro:

Una vez dentro vamos a la parte de theme editor y luego al archivo de footer.php, que tendremos que modificar con un archivo malicioso:

Nos bajamos el php de pentest monkey para enviarnos una reverse shell y lo configuramos de la siguiente forma:

Lo pegamos en el footer.php::

Cargamos la página oficial:

Y recibimos la reverse shell:

Dentro de la máquina, dentro del directorio Elyana, vemos que hay una pista que nos dice que la contraseña está escondida en el sistema y que la encontremos:

Investigando vemos que dentro del /etc/crontab se llama a un script dentro del directorio backups:

Y este es el contenido del script:

Por tanto le añadimos el código para enviarnos una bash como root:

Nos ponemos en escucha con netcat y recibimos la conexión como root:

Ahora, si visualizamos las flags, veremos que están en base64, pero podemos decodificarlas fácilmente y ya las obtenemos:

computing/hacking/ctf/tryhackme/maquina_all_in_one.txt · Última modificación: por 127.0.0.1