Suidy HackMyVM (Intermediate - 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-09 03:22 EDT
Nmap scan report for 192.168.5.8
Host is up (0.00057s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0)
| ssh-hostkey: 
|   2048 8a:cb:7e:8a:72:82:84:9a:11:43:61:15:c1:e6:32:0b (RSA)
|   256 7a:0e:b6:dd:8f:ee:a7:70:d9:b1:b5:6e:44:8f:c0:49 (ECDSA)
|_  256 80:18:e6:c7:01:0e:c6:6d:7d:f4:d2:9f:c9:d0:6f:4c (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:19:4F:BB (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.87 seconds

Veremos que hay un puerto 80 que aloja una pagina web, si entramos dentro solamente veremos un hi por lo que no veremos nada interesante, vamos a realizar un poco de fuzzing a ver que encontramos.

Si inspeccionamos el codigo veremos esto en el HTML pero nada fuera de lo normal.

Gobuster

Info:

Veremos una cosa interesante, tiene un robots.txt por lo que vamos a investigar que contiene.

Info:

Veremos lo que parece ser un codigo morse camuflado entre /\, vamos a quitarle dichas barras y ver que pone.

No veremos nada interesante de nuevo, pero si seguimos investigando en el .txt si bajamos abajo del todo, veremos esto:

Probemos a entrar dentro, una vez dentro veremos esto:

Nos comenta que en este directorio se encuentras las credenciales de un usuario con dicho formato de contraseña, tambien esta hablando en femenino, por lo que puede ser que el usuario sea algun nombre en femenino.

Escalate user theuser

Info:

Veremos muchisimos archivos, pero solamente uno al que se refiera como un usuario femenino que seria el archivo llamado alba.txt, vamos a ver que vemos dentro de dicho archivo.

Vemos lo que parecen unas credenciales, si las probamos veremos que no nos sirve, por lo que vamos a probar directamente con las credenciales de ejemplo que nos esta mostrando en la pagina web.

SSH

Vamos a conectarnos por SSH de la siguiente forma:

Metemos como contraseña thepass y veremos que estamos dentro, por lo que leeremos la flag del usuario.

user.txt

Escalate user suidy

Si listamos los permisos SUID que tenemos con dicho usuario veremos lo siguiente:

Info:

Veremos este permiso de aqui bastante interesante:

Vamos a ejecutar el binario a ver que sucede para analizarlo:

Info:

Con esto veremos que ya seremos directamente el usuario suidy pero si investigamos mucho no vemos nada interesante con dicho usuario, pero si nos fijamos en los permisos del binario veremos lo siguiente:

Vemos que pertenece al grupo de theuser y que con dicho usuario podemos modificar el binario a nuestro gusto, vamos a comprobar que tengamos gcc:

Info:

Vemos que si lo tenemos, ahora nos vamos a pasar el binario de pspy64 para ver los procesos que se estan corriendo por dentro a nivel de sistema, para investigar un poco.

URL = Download pspy64

host

Maquina victima

Ahora lo ejecutaremos de la siguiente forma:

Info:

Vemos que se esta ejecutando un crontab como el usuario root en este caso con el script llamado timer.sh el cual podemos creer que puede estar ejecutando el binario llamado suidyyyyy el cual podemos modificar, por lo que vamos a realizar lo siguiente a ver si funciona.

Vamos a crear un binario y compilarlo en la maquina victima.

suid.c

Ahora lo compilamos de la siguiente forma en la home de suidy.

Ahora tendremos que esperar un poco, una vez esperado un poco ejecutaremos lo siguiente:

Info:

Y con esto veremos que seremos root por lo que leeremos la flag de root.

root.txt

Last updated