FRISTILEAKS 1.3

Hola a todos, aquí teneís un nuevo walkthrought de la VM de VulnHub creada por Ar0xa, es nivel básico osea que recomendable para aquellos que empezamos en este mundillo 😀

Recursos y software utilizado:

Kali Linux

Metasploit

VirtualBox

FristiLeaks 1.3 Virtual Machine

Guía de explotación:

Iniciamos poniendo la VM en Host Only Adapter y realizamos nuestro primer escaneo con Nmap para ver puertos y servicios que andan abiertos, no obstante con la opción -sC también hacemos usos de los scripts que vienen por defecto con Nmap ya que ahorran bastante trabajo.

NMAPscan.png

Observamos que tenemos abierto el puerto 80 por lo tanto empezaremos por el fichero robots.txt que nos devuelve tres entradas /cola/ – /sisi/ – /beer/ las cuales procedemos a comprobar. Obteniendo en las tres este resultado:

fristinourl.jpg

Para el próximo paso estuve un poco estancado pero dado la temática del CTF (“Drink Fristi”) y los nombres de las carpetas que me mostraba el robots.txt (todo nombre de bebidas), decidí probar con el directorio /fristi/ y …

adminportal-1.png

Booom! parece ser que por esta vez la lógica funcionó :D.

Una vez en el portal vemos que nos pide username, password y no tenemos absolutamente nada. Por protocolo miramos el source code de la página:

usersourcecode.png

base64pass.png

En la primera imagen vemos lo que parece un usuario y más abajo un tochaco en base64 que procederemos a decodificar obteniendo esto:

decoded.png

Mmmmmm, ni idea al principio de lo que podia ser, por probar metí user: eezeepz y password: keKkeKKeKKeKkEkkEk y conseguí entrar en el panel de administración que nos permitiría subir archivos.

loginsuccesful-2374228516-1517568550473.png

Como el objetivo es subir una webshell para tener acceso al server primero cree un archivo “fake.php” obteniendo esta respuesta del server:

phpfalsonosepuedesubir.png

Visto que no nos deja subir archivos .php, utilizaremos como bypass la técnica de doble extensión os dejo el artículo para que lo leaís :D.

En primera instancia utilicé la webshell de b374k y navegué por el servidor en busca de pistas de como continuar el CTF y nos encontramos con estas dos:

hintonwwwnotestxt.png

homeezezeznotestxthint2.png

Básicamente la segunda nos da la clave del CTF “runthis” in /tmp/ y my account privileges.

Para una mayor interacción y practicar un poco con otros payloads creamos con msfvenom uno y lo subimos:

shellmsfvenom.png

Renombramos shell.php a shell.php.jpg y subimos el archivo:

bypassshelldobleextension.png

Ponemos el multi/handler de Metasploit esperando la ejecución de nuestra shell a traves de la URL y ejecutamos el payload:

multihandlermsfconsole.png

Con esto conseguimos una sesion de meterpreter al cual utilizamos el comando shell y posteriormente migramos a una TTY con el comando python -c ‘import pty; pty.spawn(“/bin/sh”)’.

Una vez sin restricciones por la shell ejecutamos el comando que nos decía en la segunda pista del CTF:

permisosyejecucioncomandos.png

Nos dirigimos a la carpeta de administrador /admin/ que ya tendrá permisos para ser vista desde cualquier usuario y vemos lo que contiene.

cdhomeadmin.png

Observamos tres archivos interesantes creados por el usuario admin: cryptpass.py, cryptedpass.txt y whoisyourgodnow.txt los cuales mediante el comando cat vemos lo que contienen en el interior:

cattodosarchivos.png

Observamos que es un script con el cual se ha encriptado el contenido de los archivos, por lo cual, para ver el mensaje en claro tendremos que realizar un script que haga el proceso totalmente reverso al que tenemos. Tras unas horitas de pruebas y con ayuda de este recurso realizamos este script:

pythondcodescript.png

Pasamos el texto de los dos archivos a nuestra máquina atacante y los ejecutamos con el script:

scriptydesencriptado.png

Logamos con el user: fristigod y password: LetThereBeFristi y utilizamos el comando sudo -l para ver si podemos abusar de los privilegios de sudo para escalar a root:

cambioattyfristigod-user.png

sudolcomandosquepuedeusar.png

Parece ser que va a ser que sí.. Cómo se puede ver en la zona señalada, nos dice que podemos ejecutar un archivo (al parecer SUID) en el directorio indicado, con el user fristi por lo cual nos dirigimos hacia /var/fristigod/.secret_admin_stuff y intentamos ejecutar el archivo doCom.

Primeramente hicimos una prueba y nos arrojo como teníamos que usar el archivo, acto seguido lo probamos con el comando pwd y al ver que funcionaba usamos el comando /bin/bash y abrimos una shell con el usuario root :D.

comandoroot.png

Si tienen dudas para ver que tipo de archivo es pueden usar el comando file.

Ya desde la consola del usuario root nos dirigimos a su directorio y obtenemos la flag final del CTF:

catroottxt.png

Y0U KN0W Y0U LOVE FR1ST1 :DDDDDDD

Con esto ya tenemos finalizado otro CTF!, espero que os haya gustado y ya sabeís PRACTICAR, PRACTICAR, PRACTICAR! 🙂

Anuncios

Deja un comentario