XUT_ / MACHINES / THM

0029

Lian_Yu

THMMACHINENONEEASY

Introduction

lian-yu

Bienvenido a Lian_Yu, este es un CTF de principiante con temática de Arrowverse. Captura las flags y diviértete.

Getting the Flags

Nos hacen varias preguntas en esta máquina:

  1. ¿Cómo se llama el directorio que has encontrado?

Empezaremos haciendo un escaneo de puertos.

lian-yu

Ahora escaneamos dichos puertos más a fondo.

lian-yu lian-yu

Ahora procedemos al listado de directorios web.

lian-yu

Dirsearch no encuentra nada, vamos a mirar manualmente la web.

lian-yu

Parece una página estática, pero llama la atención que únicamente la palabra "arrow" (flecha) está en negrita. Primero miraré si robots.txt existe, pero acto seguido voy comprobar que /arrow/ no sea un directorio.

No existe ninguno de los dos.

Voy a probar con otro enumerador, vamos con gobuster.

lian-yu

Bingo! Parece que hemos encontrado el directorio. Al meter /island no funcionó, así que volví a realizar un escaneo sobre este nuevo directorio y lo encontré.

lian-yu

  1. ¿Cómo se llama el archivo que has encontrado?

En el directorio island/ nos encontramos con lo siguiente:

lian-yu

Si miramos el código fuente vemos la palabra secreta:

lian-yu

En el directorio /2100/ vemos lo siguiente:

lian-yu

Si miramos el código fuente dice que podemos adquirir aquí nuestro .ticket, pero ¿cómo?

Si enumeramos con la extensión .ticket lo tenemos:

lian-yu

  1. ¿Cuál es la contraseña FTP?

Si leemos el archivo encontramos lo que probablemente sea la contraseña de FTP, aunque parece encodeada.

lian-yu

Después de un rato decodeando encontramos que está encodeada en base58.

lian-yu

  1. ¿Cuál es el nombre del archivo con la contraseña SSH?

Vamos a meternos al servidor FTP con el posible username que encontramos antes vigilante y la contraseña obtenida.

lian-yu lian-yu

Del texto .other_user sacamos algunos posibles usernames:

lian-yu

Parecen ser 3 fotos, vamos a ver qué contienen realmente.

lian-yu

Parece que Leave_me_alone.png contiene información. Las herramientas revelan que hay un error de formato. Vamos a cambiar los magic bytes por los de png.

De esto:

lian-yu

A esto:

lian-yu

Así encontramos lo que parece una contraseña:

lian-yu

Si ahora usamos steghide sobre las imágenes nos damos cuenta de que aa.jpg parece contener datos.

lian-yu

Si ahora probamos con la contraseña obtenida a extraerlo:

lian-yu

Vamos a unzippearlo y a ver qué contiene.

lian-yu

Parece que hemos encontrado el nombre del archivo.

lian-yu

  1. ¿Cuál es la flag user.txt?

Con la contraseña nos metemos por SSH, vamos a realizar fuerza bruta con todos los posibles nombres de usuario que tenemos hasta la fecha.

lian-yu

Ahora hacemos la fuerza bruta con la contraseña.

lian-yu

Ahora entramos por SSH.

lian-yu

Si buscamos la flag y la leemos:

lian-yu

  1. ¿Cuál es la flag root.txt?

Ahora tenemos que encontrar la forma de escalar privilegios. Vamos a ver el id de nuestro usuario:

lian-yu

Somos parte de muchos grupos, podrías ser interesante si no encontramos otro vector de escalada. Vamos a comenzar con nuestra checklist de privesc.

lian-yu

Parece que podemos ejecutar pkexec como root.

lian-yu

Buscando en GTFOBins vemos que es un claro vector de escalada. Vamos a proceder.

lian-yu

Ahora listamos la flag y la leemos.

lian-yu