Anthem – TryHackMe

Anthem – TryHackMe

Hoy vamos a realizar la máquina “Anthem” de TryHackMe, en ella gracias a la recopilación de información podremos obtener el acceso de usuario y gracias a un archivo oculto podremos escalar privilegios hasta el usuario administrador.

Dificultad asignada por THM: Fácil

La ip de la máquina en mi caso será: 10.10.37.156

Esta sala se divide en tres tareas:

Tarea 1:  Análisis del sitio web.

Ejecutemos nmap y verifiquemos qué puertos están abiertos:

 nmap -A -p- <IP>

Explicación de banderas usadas:

-p- = con esto le indicamos aa nmap que analice desde el puerto 1 (-p1) hasta el puerto 65535 (-65535), es decir todos los puertos.

-A = Habilita la detección del sistema operativo, la detección de versiones, el escaneo de scripts y el traceroute.

Nmap nos detecta un total de 14 puertos abiertos:

Con este escaneo se pueden responder a las preguntas planteadas en TryHackMe:

  • ¿En qué puerto está el servidor web?.
  • ¿En qué puerto está el servicio de escritorio remoto?.

Con esta información procedo a acceder al servidor web:

 Aparentemente es un simple blog con dos entradas, las entradas son las siguientes, ordenadas de forma ascendente por fecha de publicación:

Entrada 1:

Entrada 2:

Esto ya se ve bien, en la entrada 1 tenemos un nombre de el autor “James Orchard Halliwell”, investigando un poco se puede ver que era un erudito:

A lo mejor las credenciales que necesitamos obtener se relaciona a algo de él o algo que creo durante su vida. Por otro lado en la entrada 2 tenemos una dirección de correo JD@anthem.com, y el autor de esta entrada es “Jane Doe” este nombre es comúnmente usado para referirse a alguien indeterminado o sin identidad específica, es básicamente lo mismo que decir “fulano de tal”, pero podemos ver que la dirección de correo de “Jane Doe” es JD@athenm.com, por lo que intuyo que la sintaxis de las direcciones de correo de los usuario de este sitio sería (primera inicial)(segunda inicial)@anthem.com.

Procedo a hacer una búsqueda de los directorios de este blog con gobuster:

Explicación de banderas:

dir = Utiliza el modo de brutceforcing de directorio/archivo.

–url = Sirve para especificar la url que se va a usar.

–wordlist = Sirve para especificar la lista que gobuster usará para detectar los directorios, en este caso use “big.txt”.

> = Para que la salida del comando se vaya al archivo “directorios.txt”.

 

Y este fue el resultado:

Hay varios directorios de interés, sin embargo, veo que tiene el archivo robots.txt, en los CTF habitualmente suelen haber pistas en él, procedo a revisarlo:

Y he encontrado información muy útil.

En este punto ya se pueden responder las preguntas planteadas de:     

  • ¿Cuál es una posible contraseña en una de las páginas que buscan los rastreadores web?
  • ¿Qué CMS está usando el sitio web?
  • ¿Cuál es el dominio del sitio web?

Ahora seguimos tratando de obtener el nombre del administrador, recuerdas que en la primera entrada el autor era “James Orchard Halliwell” y en dicha entrada había un poema, que en español dice algo más o menos así:

“Nacido un lunes

Bautizado el martes

Casado el miércoles

Se enfermó el jueves

Empeoró el viernes

Murió el sábado

Enterrado el domingo.

Ese fue el final …”

Eso no está escrito ahí porque si, probemos buscar ese poema en Google y nos sale el nombre de esa canción, que puede ser el nombre puesto para el administrador del sitio:

Recuerdas que te dije que “James Orchard Halliwell”, el “autor” de la primera entrada tendría algo que ver, pues esta canción fue en primeras instancias recopilada por él:

Es por esto por lo que debes prestar mucha atención a los pequeños detalles.

Bien ya con un posible nombre para el administrador, ahora nos pide que obtengamos su dirección de correo, si bien anteriormente vimos que la sintaxis que usan en este sitio es (primera inicial)(segunda inicial)@anthem.com, pues basta con solo acoplar eso al nombre y apellido que hemos conseguido.

En este punto ya se pueden responder las preguntas planteadas de:

  • ¿Cómo se llama el administrador?
  • ¿Podemos encontrar la dirección de correo electrónico del administrador?

 Tarea 2: Encuentra las banderas

Bandera 1: Empecemos por lo más básico, revisar el código fuente del sitio web, en primeras instancias revisaré el código fuente de las entradas del blog, ya que en ellas fue donde conseguimos la información anteriormente, primero revisaremos el de la entrada 2:

Bueno, eso fue rápido.

Bandera 2: Sin necesidad de cerrar la pestaña donde estábamos viendo el código fuente, más abajo hay algo interesante:

Bandera 3: En la entrada 2 tenemos que el autor de la entrada y del blog en general es “Jane Doe” y tenemos un enlace a su perfil:

Una vez dentro de su perfil está la bandera en cuestión:

Bandera 4: Y por último, ya que la primera bandera estaba en una entrada del blog, a lo mejor otra bandera está en la otra entrada, así que si miramos el código fuente de la entrada 1:

Tarea 3: Etapa final

Lo primero que se nos plantea es poder obtener las credenciales para iniciar sesión con el escritorio remoto, podemos probar introduciendo el nombre  que conseguimos hace un momento pero en la misma pregunta nos dicen claramente que  la máquina virtual no esta dentro de un dominio, por lo cual ya podemos sospechar que, a lo mejor debemos iniciar sesión con el correo electrónico del administrador, pero claro, al no estar la máquina en un dominio sería algo tonto intentar iniciar sesión con las iniciales del administrador seguido de “anthem.com”, por lo cual si probamos únicamente de nombre de usuario poner las iniciales (básicamente poner la dirección de correo del administrador quitando “anthem.com”, quedando así solo dos letras) y de contraseña la encontrada en el archivo robots.txt a lo mejor podremos conseguir algo.

Bien, para entrar al escritorio remoto de la maquina en cuestión usaremos rdesktop (ip):

Y ahora introduciremos las credenciales tal y como comentamos al principio:

Y hemos conseguido acceso como usuario:

Ahora leemos el user.txt que se encuentra en el escritorio:

Ahora hay que escalar privilegios, y fíjense muy bien en la pista que ofrece TryHackMe, dice que la contraseña del usuario administrador esta “oculta”, lo que me hace pensar que a lo mejor está en un fichero oculto en el sistema, así que activamos la visualización de archivos ocultos:

Al entrar al disco local C, hay una carpeta que está oculta llamada “backup”, raro ¿no?.

Y dentro de ella un archivo llamado “restore”:

Sin embargo, si intentamos abrirlo nos dice que no tenemos permisos para abrirlo:

Al ver sus propiedades, en la pestaña de seguridad hay un mensaje que traducido dice algo como: “Ningún grupo o usuario tiene permiso para acceder a este objeto. Sin embargo, el propietario de este objeto puede asignar permisos.”:

Entonces solo hay que ver quién es el propietario del archivo que casualmente es el usuario con el que nos hemos logeado:

Sabiendo esto podemos asignarnos permisos para poder leer este archivo:

Luego de eso, probamos abrir el archivo y tenemos la posible contraseña del administrador:

Ahora solo queda logearse como administrador:

Y finalmente leer el root.txt:

En este punto ya se pueden responder las preguntas planteadas de:

  • ¿Cuál es el contenido de user.txt?.
  • ¿Podemos detectar la contraseña del administrador?.
  • ¿Cuál es el contenido de root.txt?.

Con esto hemos finalizado la habitación, cabe resaltar que, con las credenciales conseguidas en la web, hay un directorio que es el nombre del CMS, ahí te aparecerá una ventana de logeo, con el correo del administrador y la contraseña encontrada en el robots.txt puedes acceder al panel de administración del CMS, échale un ojo ?:

Opinión personal:

  • Difícultad de acceso 12% 12%
  • Difícultad de escalación de privilegios 12% 12%

He hecho esta puntuación en opinión personal, basándome en estos valores:

Fácil: 1% – 30%

Medio: 31% – 70%

Difícil: 71% – 100%

Anuncio

Sobre el Autor

Martin Frias

Founder of Coldd Security

REDES SOCIALES

Newsletter

Estadísticas

  • 163.169
  • 55

TheHackerSnow

0

Share This