Auditoría y CTFExplotaciónLinuxPentestingRabbit Hutch

Commodore64 Still Ready

Buenas a todos! CTF de Vulnhub

«Welcome to my third boot2root / CTF this one is called Sidney. The VM is set to grab a DHCP lease on boot. As before, gaining root is not the end of this VM. You will need to snag the flag, and being me, it’s never where they normally live… B-) If you are having trouble with the NIC, make sure the adapter is set to use the MAC 00:0C:29:50:14:56 Some hints for you: If you are hitting a wall, read https://de.wikipedia.org/wiki/MOS_Technology_6502 The flag is audio as well as visual SHA1SUM: 114ABA151B77A028AA5CFDAE66D3AEC6EAF0751A sidney.ova Many thanks to Rasta_Mouse and GKNSB for testing this CTF. Special thanks and shout-outs go to GKNSB and Rasta_Mouse, hopefully he streams this one live too! Also a shout-out to g0tmi1k for #vulnhub and offering to host my third CTF.»



Atención Spoiler!!

Primero comenzamos haciendo un descubrimiento de red y una vez localizado el objetivo simplemente haciendo un escaner para saber los puertos abiertos y sus servicios.
Ejecutaremos nikto para realizar un escaneo del sito web, detectando la versión del servidor, el tipo de CMS instalado, vulnerabilidades etc…
Ejecutamos dirb para ver los directorios del servidor Apache, usando el diccionario que nos encontramos en la carpeta de dirb llamado big.txt.
Damos con el directorio commodore64 muy interesante donde partiremos y encontraremos información muy valiosa en su codigo fuente.
En la descripcion de la máquina virtual y segun lo visto con el codigo fuente, debemos investigar sobre commodore 64. Ademas en el codigo fuente nos da posible un usuario y el patron usado en la contraseña es decir 3letras y 4 digitos sin espacios…algo en la wikipedia tenemos que encontrar.
Bien ahora tenemos dos opciones. Lo haremos con los dos metodos para obtener lo mismo.
Usaremos wireshark + hydra, y el otro metodo es hacer todo con burpsuite.
Con wireshark realizaremos un login con el posible usuario y la pass vacía para poder capturar los paquetes.
Analizamos el protocolo HTTP con el metodo POST que es el que nos interesa, y en la capa de aplicacion Hypertext Transfer Protocol, vemos lo capturado en el paquete como por ejemplo la cookie de sesion, y el formulario de envio con el metodo POST para acceder al login cuyo name es el input_username en texto plano…Esto sera de gran importancia para realizar el ataque con burpsuite y con hydra.
Con burpsuite hacemos lo mismo, configuramos el proxy del navegador en localhost y realizamos de nuevo la peticion HTTP con el metodo POST del login y analizamos lo capturado con burp. Nos lo pinta mas bonito que wireshark, y se ve los tres campos name, y el usuario en texto plano de la peticion HTTP.
Una vez obtenida la password ya sea con burpsuite o con hydra vamos a crear con msfvenom un payload en php reverse, para poder conseguir una sesion meterpreter y a su vez iniciaremos el metasploit para tener el listener a la escucha de la conexión entrante que se recibira.
Bien al crear el payload sino se pone el puerto, por defecto es el 4444, y en el multi/handler pusimos el 5555, por tanto debemos modificar el source del archivo php y cambiar el puerto.
Hacemos una peticion HTTP con curl y recibiremos nuestra sesion meterpreter, con una shell reversa del servidor.
Visulizamos el archivo etc/passwd. Y nos tendremos que fijar muy bien el tercer campo por la izquierda osea el User ID(UID). UID 0(reservado a root) y del 1-99 (reservado a otras cuentas de usuario).
Se hará sudo -l y veremos que un usuario en el cual nos logeamos, puede ejecutar cualquier comando como root.
Bien una vez realizada la escalada de privilegios, nos dirijimos al directorio /root para poder capturar la bandera.
Al final del vídeo os muestro otra alternativa para poder conseguir escalar privilegios. Será a través de crontab y el uso de un exploit, por la versión particular de Ubuntu.
Espero que os sirva esta solución al CTF 🙂
Un saludo Naivenom