SuidyRevenge HackMyVM (Hard - Linux)

Escaneo de puertos

nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn <IP>
nmap -sCV -p<PORTS> <IP>

Info:

Starting Nmap 7.95 ( https://nmap.org ) at 2025-05-16 14:14 EDT
Nmap scan report for 192.168.5.19
Host is up (0.0014s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0)
| ssh-hostkey: 
|   2048 99:04:21:6d:81:68:2e:d7:fe:5e:b2:2c:1c:a2:f5:3d (RSA)
|   256 b2:4e:c2:91:2a:ba:eb:9c:b7:26:69:08:a2:de:f2:f1 (ECDSA)
|_  256 66:4e:78:52:b1:2d:b6:9a:8b:56:2b:ca:e5:48:55:2d (ED25519)
80/tcp open  http    nginx 1.14.2
|_http-title: Site doesn't have a title (text/html).
|_http-server-header: nginx/1.14.2
MAC Address: 08:00:27:A3:A0:CF (PCS Systemtechnik/Oracle VirtualBox virtual NIC)
Service Info: OS: 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 6.86 seconds

Veremos que hay un puerto 80 que aloja una pagina web, si entramos dentro veremos una pagina super simple que pone lo siguiente:

No veremos nada interesante, a parte de un posible nombre de usuario, por lo que vamos a realizar un poco de fuzzing.

Si inspeccionamos la pagina veremos lo siguiente:

Vemos que nos muestra una ruta web la cual vamos a probar en el navegador.

Si entramos vemos que existe, pero nos saltara un 403 Forbbiden por lo que vamos a realizar un fuzzing con gobuster y estamos viendo que tambien nos comenta en el comentario que se trata de una backdoor con PHP por lo que vamos a utilizar una lista especial de backdoors.

Gobuster

URL = Download List backdoor_list.txt SecLists

Info:

Vemos que nos ha encontrado un archivo .php si entramos en el veremos lo siguiente:

Por lo que vemos el paraemtro va por CMD, por lo que vamos a probar lo siguiente:

Info:

Veremos que esta funcionando, por lo que vamos a listar el directorio actual:

Info:

Vemos que no solo esta este archivo, tambien hay otro, vamos a ver el otro.

Info:

Escalate user murda

Vemos que este utiliza el parametro file por lo que vamos a probar a leer el passwd.

Info:

Vemos que nos ha dejado, vamos a probar a lanzar fuerza bruta hacia el usuario llamado murda ya que es el primer usuario creado y si nos fijamos cambia algunas letras respecto al usuario que esta en la pagina que se menciono antes.

Hydra

Info:

Veremos que hemos conseguido las credenciales de dicho usuario, por lo que vamos a conectarnos por SSH.

SSH

Metemos como contraseña iloveyou y veremos que estaremos dentro.

Escalate user violent

Si leemos el archivo secret de la /home del usuario murda veremos lo siguiente:

Info:

Vemos que esta hablando de alguna id_rsa del usuario violent, vamos a investigar eso un poco mas.

Info:

Vemos que nos ha encontrado una id_rsa que como vimos antes es del usuario violent, vamos a copiarnosla y pasarla a nuestro host.

id_rsa

Teniendo dicho archivo en nuestro host vamos a establecerle los permisos necesarios.

Ahora vamos a probar a conectarnos por SSH mediante dicho usuario con la clave PEM.

Info:

Vemos que nos pide la contraseña de dicho id_rsa por lo que esta funcionando, vamos a intentar crackearlo con john.

Info:

Vemos que hemos obtenido la contraseña, por lo que vamos a utilizarla utilizando el mismo comando que antes.

Metemos como contraseña ihateu y veremos que estamos dentro.

Escalate user theuser

Si hacemos sudo -l veremos lo siguiente:

Vemos que podemos ejecutar el binario violent como el usuario root, por lo que vamos a investigar dicho binario.

Pero no veremos nada interesante, buscando mucho sin encontrar resultados, vamos a probar a generar un diccionario de palabras de la pagina principal del servidor de la maquina victima y tirarle fuerza bruta al usuario theuser a ver si funciona.

Ahora vamos a utilizar dicho diccionario.

Info:

Veremos que ha funcionado, por lo que vamos a escalar directamente a dicho usuario metiendo dicha contraseña.

Metemos como contraseña different y veremos que seremos dicho usuario, por lo que leeremos la flag del usuario.

user.txt

Escalate Privileges

Ahora que somos el usuario theuser veremos que nuestro objetivo es hacer algo con el siguiente binario:

Info:

Si recordamos en otra maquina que he hackeado que tiene este mismo binario, vamos a utilizar lo mismo que utilice en dicha maquina.

payload.c

Ahora que hemos creado ese binario malicioso, haremos lo siguiente:

Ahora tendremos que esperar a que se establezca los permisos SUID de nuevo, ya que por detras hay una tarea programada que establece root a dicho binario permisos SUID.

Info:

Veremos que ha funcionado, por lo que haremos lo siguiente:

Info:

Por lo que vemos ya seremos root por lo que leeremos la flag de root.

root.txt

Last updated