CTF dance-samba Intermediate
URL Download CTF = https://drive.google.com/file/d/15lv_VxLNwKVKx-5oHYyt_142tpsL6zPK/view?usp=sharing
Instalación
Cuando obtenemos el .zip nos lo pasamos al entorno en el que vamos a empezar a hackear la maquina y haremos lo siguiente.
unzip dance-samba.zipNos lo descomprimira y despues montamos la maquina de la siguiente forma.
bash auto_run.sh dance-samba.tarInfo:
██████╗ ██╗ ██╗███╗ ██╗██████╗ ██████╗ ██╗
██╔══██╗██║ ██║████╗ ██║╚════██╗██╔══██╗██║
██████╔╝██║ █╗ ██║██╔██╗ ██║ █████╔╝██║ ██║██║
██╔═══╝ ██║███╗██║██║╚██╗██║ ╚═══██╗██║ ██║╚═╝
██║ ╚███╔███╔╝██║ ╚████║██████╔╝██████╔╝██╗
╚═╝ ╚══╝╚══╝ ╚═╝ ╚═══╝╚═════╝ ╚═════╝ ╚═╝
==
@+:@ @##@
@++:-----+@ @@#+:----:+#
#-+-----:+:---------:
*::-----++-----::::#
::------+:--------:
#-+------+:-::-----#@
*::+=@@#++-------::@
@+= @++::+#@@@#*#
#-@
*+#++@
+-:::+-@
:-:+:::+
@+::*::::
*::++-::*
=:--:-:++ @-#
#*:---:--++@ @@
@::-:--++*
@::-:++#
*++*
:: Plataforma de máquinas vulnerables ::
:: Desarrollado por Pwn3d! y Dockerlabs - creado por @d1se0 ::
█▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█
█ FLAG{Pwn3d!_is_awesome!} █
█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█
[✔] bc ya está instalado.
[✔] Docker ya está instalado
[!] Limpiando previos contenedores e imágenes
[✔] Cargando la máquina virtual
[✔] Activando máquina virtual
[✔] Máquina activa. Dirección IP: 172.17.0.2
[!] Presiona Ctrl+C para limpiar y salirPor lo que cuando terminemos de hackearla, le damos a Ctrl+C y nos eliminara la maquina para que no se queden archivos basura.
Escaneo de puertos
Info:
Vemos un samba y un ftp, primero enumeraremos samba.
enum4linux
Info:
Por lo que vemos encontramos un nombre de usuario en samba llamado macarena y un recurso compartido con el mismo nombre, pero lo comprobaremos de la siguiente forma.
Pero nos pide contarseña, por lo que seguiremos buscando.
FTP
Ya que nos podemos conectar como anonimo desde el ftp veremos que contiene.
Si listamos lo que hay.
Veremos que hay un archivo llamado nota.txt, nos lo descargamos haciendo lo siguiente.
Info:
Una vez descargado, leeremos su contenido el cual sera.
Vemos que donald puede ser una posible contraseña de macarena por lo que probaremos a introducirla en el samba.
samba
Info:
Si ponemos como contraseña donald veremos que funciono y nos lista los recursos compartidos.
Ahora nos meteremos en el recurso compartido llamado macarena de la siguiente forma.
Una vez dentro si listamos lo que hay.
Veremos que samba esta compartiendo de forma local la carpeta del usuario macarena en el servidor victima, pero no podremos salirnos de esta carpeta.
Lo que si podemos hacer es crear y cargar carpetas y archivos, por o que haremos lo siguiente.
Crearemos la carpeta .ssh/ y dentro de ella cargaremos nuestra id_rsa.pub de nuestro host a parte de crear un archivo authorized_keys que contenga nuestro id_rsa.pub para podernos conectar desde el ssh proporcionando nuestra id_rsa de nuestro host.
Si no tenemos una clave publica de nuestro usuario en nuestro host, la crearemos de la siguiente forma.
Copiaremos nuestra id_rsa.pub a nuestro directorio actual.
Despues dentro de samba cargaremos nuestro archivo id_rsa.pub de nuestro host dentro del .ssh/.
Ahora en nuestro host copiaremos el id_rsa.pub y lo pasaremos a un archivo que crearemos llamado authorized_keys.
Volviendo a samba cargaremos el archivo authorized_keys de la siguiente forma.
Y si listamos, tendremos que ver lo siguiente.
Ahora ya podremos conectarnos por ssh mediante nuestra id_rsa de la siguiente forma.
SSH
Hecho eso seremos el usuario macarena dentro del ssh y leeremos la flag.
user.txt
Escalate Privileges
Si queremos hacer sudo -l nos pedira la contarseña, pero no servira la de samba que era donald tendremos que obtener la contraseña de macarena dentro del ssh, por lo que haremo lo siguiente.
Si nos vamos a /home/secret veremos en su contendio un archivo llamado hash que si lo leemos pone lo siguiente.
Parece estar codificado pero de 2 formas diferentes, primero lo tendremos que decodificar en Base32 y obtendremos esto:
Ahora esto lo decodificaremos en Base64 y obtendremos esto:
Por lo que vemos es la contraseña de macarena y si ahora probamos hacer sudo -l poniendo la contraseña supersecurepassword veremos que funciona y veremos lo siguiente.
Podemos ejecutar como root el binario file, pero si nos vamos a /opt/ veremos un archivo llamado password.txt que solo puede leer root por lo que podremos hacer lo siguiente.
Info:
Veremos que la contraseña de root es rooteable2 y si la probamos, veremos que es verdad.
Ponemos la contraseña obtenida y ya seremos root, por lo que leeremos la flag.
true_root.txt
Last updated