Year-Of-The-Rabbit Writeup - Try-Hack-Me
nmap
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
sudo nmap -p- --open -sS -sCV -n -Pn 10.10.65.163
[sudo] password for kali:
Starting Nmap 7.94SVN ( https://nmap.org ) at 2023-11-16 20:52 EST
Nmap scan report for 10.10.65.163
Host is up (0.22s latency).
Not shown: 65477 closed tcp ports (reset), 55 filtered tcp ports (no-response)
Some closed ports may be reported as filtered due to --defeat-rst-ratelimit
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.2
22/tcp open ssh OpenSSH 6.7p1 Debian 5 (protocol 2.0)
| ssh-hostkey:
| 1024 a0:8b:6b:78:09:39:03:32:ea:52:4c:20:3e:82:ad:60 (DSA)
| 2048 df:25:d0:47:1f:37:d9:18:81:87:38:76:30:92:65:1f (RSA)
| 256 be:9f:4f:01:4a:44:c8:ad:f5:03:cb:00:ac:8f:49:44 (ECDSA)
|_ 256 db:b1:c1:b9:cd:8c:9d:60:4f:f1:98:e2:99:fe:08:03 (ED25519)
80/tcp open http Apache httpd 2.4.10 ((Debian))
|_http-title: Apache2 Debian Default Page: It works
|_http-server-header: Apache/2.4.10 (Debian)
Service Info: OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 85.76 seconds
ports: 21/ftp - 22/ssh - 80/http
empezamos enumerando el puerto 80
al parecer no hay mucho en la pagina web.
aplicaremos fuzzing utilizando gobuster
podemos enumerar un directorio llamado /assets asi que vamos a investigar tenemos un archivo .mp4 que no parece ser importante. y un archivo llamado style.css. si miramos dentro del el vemos algo interesante.
tenemos una nota que nos sugiere una direccion asi que vamos a investigar
tenemos mensaje en pantalla que nos sugiere desactivar el javascript
al parecer desactivar el javascript no funciona debido a que nos sigue redirigiendo al .mp4 que hemos conseguido anteriormente.
vamos a interceptar esta peticion con burpsuite
al parecer burpsuite nos dice que se esta aplicando otra redireccion asi que vamos a investigar.
al parecer burpsuite sugiere dos rutas de redireccion
hemos conseguido un direcctorio oculto. vamos a investigar
solo podemos conseguir una imagen. la descargaremos a nuestro equipo de trabajo para intentar conseguir algún tipo de información oculta
Recopilación de información oculta
al parecer la imagen esta encriptada. necesitaremos desencriptarla para poder ver la informacion
probamos con la herramienta strings
1
strings archivo
tenemos una nota que nos da informacion sobre el usuario para el servicio ftp y nos dice que la contraseña puede ser una de las siguientes
vamos a crear un pequeño diccionario con estas contraseñas y lo usaremos para aplicarle fuerza bruta al puerto ftp
tenemos credenciales para el puerto ftp
1
[21]ftp: host: 10.10.113.73 login: ftpuser password: 5iez1wGXKfPKQ
tenemos conexion por el puerto ftp. vamos a enumerar
hemos conseguido un archivo. con el comando mget *
podemos descargarnos todo.
al parecer el archivo esta encriptado de alguna manera. tendremos que buscar la forma de desencriptarlo
haciendo una busqueda en internet al parecer el codigo que vemos es un codigo de programacion llamado Brainfuck. asi que buscaremos alguna manera de desencriptar este codigo ya que parece que esta ofuscado
tenemos nuevas credenciales. nos falta enumerar el puerto ssh asi que probablemente estas sean las credenciales para dicho puerto.
tenemos un mensaje para Gwendoline que dice lo siguiente
1
2
3
4
5
6
1 mensaje nuevo
Mensaje de Root a Gwendoline:
"Gwendoline, no estoy contento contigo. Revisa nuestro escondite de leet s3cr3t. Te dejé un mensaje oculto allí".
FINALIZAR MENSAJE
al parecer tenemos otro mensaje oculto en algun lugar llamado leet s3cr3t
buscaremos el direcctorio “s3cr3t” con el comando
1
find / -name "s3cr3t" 2>/dev/null
tenemos otro archivo oculto hacemos un cat de este archivo oculto que hemos encontrado
tenemos un nuevo mensaje con lo que parece ser credenciales del usuario Gwendoline
1
2
3
4
5
Tu contraseña es horrible, Gwendoline.
¡Debe tener al menos 60 caracteres! No sólo MniVCQVhQHUNI
¡Honestamente!
Tuyo sinceramente
cambiamos de usuario
1
2
su gwendoline
passwd: MniVCQVhQHUNI
tenemos conexion somos el usuario gwendoline. nos falta escalar privilegios.
tenemos permisos de root para ejecutar el binario /usr/bin/vi sobre la ruta /home/gwendoline/user.txt
aprovecharemos esto para escalar privilegios utilizando el comando vi para editar el archivo user.txt y poder espaunear una bash como root
Utilizaremos el siguiente comando
1
2
3
4
5
sudo -u#-1
-u#-1
con este comando le indicamos que al usuario actual le vamos a restar 1 ( -1 ) lo que nos dara como resultado 0 y el numero 0 es el usuario root, asi que aprovecharemos esto