Lo primero será hacer el reconocimiento con nmap:
{{pasted_image_20231127192559.png|}}
Y ahora que sabemos que hay un servidor web, vamos a analizarlo con whatweb, donde vemos que utiliza wordpress:
{{pasted_image_20230702212604.png|}}
Ahora vamos a entrar en la web:
{{pasted_image_20230702212610.png|}}
Hay que tener en cuenta que muchas veces en las webs de wordpress hay un menú de login al que podemos acceder poniendo en la dirección wp-login.php:
http://10.10.11.125/wp-login.php
{{pasted_image_20230702212618.png|}}
Por otra parte, si pulsamos en home veremos que no carga la página porque la dirección IP no está apuntando a esta dirección:
{{pasted_image_20230702212625.png|}}
{{pasted_image_20230702212628.png|}}
Por lo que tendremos que configurar el fichero /etc/hosts y decir que la IP de la máquina apunte al dominio backdoor.htb:
{{pasted_image_20230702212635.png|}}
{{pasted_image_20230702212638.png|}}
Y ahora ya nos carga, aunque sea la misma página pero ahora ya podemos acceder a ella a través del dominio, porque antes sólo podíamos con la IP:
{{pasted_image_20230702212648.png|}}
Ahora vamos a comprobar si podemos acceder a un directorio de wordpress que se llama content, donde se almacenan los ficheros de la web, para ello en el buscador podemos poner wp-content/ plugins/:
{{pasted_image_20230702212707.png|}}
Accedemos dentro del directorio ebook-download donde se almacenan los plugins:
{{pasted_image_20230702212715.png|}}
Ahora podemos buscar si existe alguna vulnerabilidad dentro de las carpetas ebook downloads de las webs de wordpress con una herramienta que se llama searchsploit:
{{pasted_image_20230702212721.png|}}
Y nos encontró una vulnerabilidad, ahora vamos a ejecutar este comando para inspeccionar la vulnerabilidad:
{{pasted_image_20230702212732.png|}}
Y se nos muestra esto, donde podemos ver cómo se aprovecha de uno de los ficheros para ganar acceso a una ruta del sistema a través de path traversal:
{{pasted_image_20230702212738.png|}}
{{pasted_image_20230702212740.png|}}
Y si copiamos y pegamos la dirección pero en vez de usar el wp-config ponemos /etc/passwd, veremos cómo accedemos al fichero:
http://backdoor.htb/wp-content/plugins/ebook-download/filedownload.php?ebookdownloadurl=/etc/passwd
{{pasted_image_20230702212747.png|}}
{{pasted_image_20230702212750.png|}}
Si vemos el contenido vemos como se nos entrega la información de este fichero, por lo que estamos dentro de un Local File Inclussion:
{{pasted_image_20230702212758.png|}}
Y además ya sabemos que hay un usuario que se llama user y conocemos su directorio de trabajo:
{{pasted_image_20230702212808.png|}}
Ahora, tomamos nota de esta información y vamos a ver si encontramos credenciales con path traversal en la ruta wp-config que encontramos antes con searchsploit:
{{pasted_image_20230702212816.png|}}
Usamos esa dirección que se nos muestra:
http://backdoor.htb/wp-content/plugins/ebook-download/filedownload.php?ebookdownloadurl=wp-config.php
{{pasted_image_20230702212824.png|}}
Y se nos descarga un archivo php
{{pasted_image_20230702212830.png|}}
Y dentro de este archivo obtenemos esta información, donde hay unas credenciales, pero ninguna de estas funciona para autenticarnos:
{{pasted_image_20230702212838.png|}}
Ahora vamos a investigar los servicios que están corriendo en esta máquina; y para ello en linux hay un directorio donde se puede ir mirando los servicios que corren en una máquina, el cual es el directorio proc:
{{pasted_image_20230702212850.png|}}
Entonces, podemos ir probando los servicios que hay detrás de la máquina objetivo poniendo en la dirección cada una de estas rutas a través de fuerza bruta, lo cual lo haremos con python (el funcionamiento de este código se explicará en mis apuntes de jupyter en el apartado hacking → Requests:
{{pasted_image_20230702212857.png|}}
Y tras ejecutarlo, nos da como válidos algunas URL donde detectó que se recibió una respuesta diferente:
{{pasted_image_20230702212903.png|}}
Y en una de estas respuestas podemos detectar como se establece una conexión por el puerto 1337 y el servicio gdbserver, que casualmente es uno de los que encontró nmap abierto:
{{pasted_image_20230702212911.png|}}
{{pasted_image_20230702212913.png|}}
Pues vamos a buscar a ver si existe algún exploit de gdbserver con la herramienta searchsploit; y vemos que sí existe una vulnerabilidad que nos permite realizar una ejecución remota de comandos:
{{pasted_image_20230702212919.png|}}
Nos descargamos la herramienta que se nos muestra:
{{pasted_image_20230702212925.png|}}
Si ejecutamos este script de python, se nos imprimen las instrucciones para utilizarlo:
{{pasted_image_20230702212933.png|}}
Viendo las instrucciones tenemos que crear primero el payload con msfvenom; y poniendo nuestra dirección IP y el puerto:
{{pasted_image_20230702212940.png|}}
Y ahora lo modificamos:
{{pasted_image_20230702212948.png|}}
Ahora, siguiendo las indicaciones nos ponemos en escucha con netcat por el puerto que hayamos puesto, que en este caso es el 443:
{{pasted_image_20230702212955.png|}}
Y ahora lanzamos el ataque, donde primero ejecutamos el fichero python descargado de antes, después ponemos la IP y puerto de la máquina objetivo donde se encuentre esa vulnerabilidad; y por último el fichero .bin generado con msfvenom:
{{pasted_image_20230702213002.png|}}
Y ya tenemos la reverse shell por netcat:
{{pasted_image_20230702213011.png|}}
Una vez estemos dentro, podemos activar una consola con su prompt y todo:
{{pasted_image_20230702213022.png|}}
Y ya tenemos la flag:
{{pasted_image_20230702213032.png|}}