Log in
Blog HbS
Slider

Raven - Write Up

portada

Os dejo el write up de la máquina Raven de vulnhub, espero que os guste.

URL de Vulnhub

https://www.vulnhub.com/entry/raven-1,256/

Descripción

Debemos acceder como root y encontrar 4 banderas

Búsqueda de objetivo

Una vez descargada la máquina virtual e iniciada, lo primero que debemos averiguar es la IP; para ello ejecutamos:

#nmap -Pn 192.168.39.0/24

Vemos que tiene habilitados 3 puertos.

Recopilación de información

Para esta fase vamos a ejecutar todas las herramientas que conozcamos:
-nmap
-nessus
-nikto
-…

Recordad siempre guardar los resultados en un fichero para no tener que volver a ejecutar los escaneres y perder tiempo.
Nmap
# nmap -sS -sV –script vuln,auth,default 192.168.39.185 -v -oA raven

Como resultado obtenemos:

Sobre el puerto 22

Sobre el puerto 80:

Sobre el puerto 111:

De esta información obtenemos varias vulnerabilidades, directorios expuestos y la instalación de un wordpress.

Nikto

# nikto -h 192.168.39.185 -o nikto_raven.txt

Como vemos nikto nos arroja bastante información y algunas vulnerabilidades, clickjacking, XSS,… vemos que tiene algunos directorios expuestos y que hay instalado un wordpress.

Nessus

Iniciamos nessus y escaneamos nuestro objetivo, no vamos a utilizar plantillas propias (que sería lo suyo) utilizamos las que vienen por defecto, y obtenemos:

Para el escaneo básico de red

Para el escaneo web

Wordpres Scan

# wpscan -u http://192.168.39.185/wordpress/ –enumerate vp,vt,u

De este escaneo obtenemos

La versión de wordpress:

El tema usado:

Un par de usuarios de wordpress:

 

Un usuario RSS:

Y directorios expuestos:

Web

Una vez terminados los escaneos, vemos qué hay iniciado en el puerto 80 a través de nuestro navegador.

Intentado hacer login, vemos que la web nos redirige a raven.local, así que modificamos nuestro fichero hosts para incluirlo:

#nano /etc/hosts

Como vemos el usuario michael existe pero la contraseña que he introducido no:

Vamos navegando e investigando todo lo que encontremos.

Flag1

La primera bandera la obtenemos dentro del propio código HTML, siempre hay que investigar el código fuente, más aun en estos retos.

Directorios expuestos

Una parte importante es rebuscar entre los directorios expuestos por la web, de las herramientas de escaneo hemos obtenido:

Y con nessus otro más el fichero de ios .DS_Store que contiene:

A través de este fichero vemos otra web disponible, tocará investigar:

Vamos navegando y encontramos interesante la instalación del PHPmailer:

Es interesante porque se puede acceder a través de metasploit:

He intentado algo rápido con el post local_exploit_suggester, pero no ha habido suerte:

Ataque manuales

SSH

Aunque tenemos herramientas para automatizar ataques, no está demás probar usuarios y contraseñas por defecto; de wpscan hemos obtenido dos usuarios (steven y michael); los probamos contra el servicio SSH

usuario/contraseña → michael/michael

Ya tenemos acceso al servidor.

Podéis probar con steven/steven, pero va a ser que no hay tanta suerte.

Miramos si el usuario michael está en el fichero sudoers, pero no.

Una vez dentro accedemos al fichero passwd para ver el resto de usuarios del sistema

Dado que esto es un CTF y normalmente las banderas a encontrar se encuentran en ficheros que se llaman flag, los buscamos:

Y encontramos la segunda bandera:

Flag2

Como hemos visto que hay un wordpress montado sobre un mysql, buscamos el fichero de configuración de wordpress wp-config.php

 

Lo visualizamos y obtenemos las credenciales de la base de datos:

Con esto ya tendríamos acceso.

Ver las bases de datos y seguir investigando:

Para aceder a la consola de wordpress he probado con la misma contraseña, pero no ha habido suerte.

Ataques de fuerza bruta

Mediante wpscan

Wpscan nos permite realizar ataques de fuerza bruta, así que adelante, ejecuto mis dos ataques en paralelo:

#wpscan -u http://raven.local/wordpress/ –username steven –wordlist rockyou.txt –threads 50

#wpscan -u http://raven.local/wordpress/ –username michael –wordlist rockyou.txt –threads 50

Se ha conseguido antes steven así que el otro lo he parado:

Una vez conseguida la contraseña, podemos acceder al escritorio de wordpress

Flag3

Dentro de los post vemos el flag3

Desde aquí lo que siempre se me ocurre es subir una webshell o similar, pero al no tener instalados plugins y no ser administrador del sitio, no podemos.

Ataques manuales II

SSH

A vueltas con el ssh, probamos con la misma contraseña que para wordpress.

​ Miramos si el usuario steven está en el fichero sudoers, y esta vez sí hay suerte:

El usuario steven puede ejecutar python, así que creamos una bash con python elevando privilegios:

#sudo python -c 'import pty;pty.spawn("/bin/bash")'

Flag4

Ya somos usuario root, por lo que podemos volver a buscar banderas:

Y esto es todo, una máquina con un poco de todo, contraseñas por defecto, ataque por fuerza bruta y elevación de privilegios a través de python.

Seguro que hay más formas, hemos conseguido acceso desde metasploit con usuario www-data, podríamos intentar una elevación de privilegios; podríamos sacar más información de la base de datos, mirar la web security-doc, …

Trabajo, si fuese un auditoría, quedaría mucho, pero el objetivo del CTF está conseguido.

Always Learning

Entrevista a Rubén López Barrio docente del curso ...
Diario de guerra de un comercial informático (Cap....
Agrega tu email para recibir novedades de seguridad
Estoy de acuerdo con el Términos y Condiciones