Magic Vulnyx (Easy - 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-09-01 12:08 EDT
Nmap scan report for 192.168.5.93
Host is up (0.0021s latency).

PORT    STATE SERVICE     VERSION
22/tcp  open  ssh         OpenSSH 9.2p1 Debian 2+deb12u3 (protocol 2.0)
| ssh-hostkey: 
|   256 a9:a8:52:f3:cd:ec:0d:5b:5f:f3:af:5b:3c:db:76:b6 (ECDSA)
|_  256 73:f5:8e:44:0c:b9:0a:e0:e7:31:0c:04:ac:7e:ff:fd (ED25519)
80/tcp  open  http        nginx 1.22.1
|_http-title: Welcome to nginx!
|_http-server-header: nginx/1.22.1
139/tcp open  netbios-ssn Samba smbd 4
445/tcp open  netbios-ssn Samba smbd 4
MAC Address: 08:00:27:61:0A:DE (PCS Systemtechnik/Oracle VirtualBox virtual NIC)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Host script results:
| smb2-security-mode: 
|   3:1:1: 
|_    Message signing enabled but not required
| smb2-time: 
|   date: 2025-09-01T16:08:49
|_  start_date: N/A
|_nbstat: NetBIOS name: MAGIC, NetBIOS user: <unknown>, NetBIOS MAC: <unknown> (unknown)

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 12.22 seconds

Veremos varios puertos interesantes, entre ellos el puerto SMB y el puerto 80, sabemos que en el 80 suele alojarse un servidor web, si entramos dentro del mismo veremos una pagina normal de nginx por defecto, nada interesante, por lo que vamos a realizar un poco de fuzzing.

Gobuster

Info:

No veremos gran cosa, pero aunque nos ponga un Forbidden en el directorio de backup vamos a probar a realizar un fuzzing dentro del mismo a ver que vemos.

Info:

Veremos bastante interesante que nos muestra un recurso /conf esto ya va siendo interesante, por lo que vamos a realizar un poco mas de fuzzing en dicho directorio web, con la suerte de a ver si encontramos algun archivo de configuracion.

Info:

Por lo que vemos hemos descubierto el archivo smb.conf que esta expuesto en la web, por lo que vamos a meternos a ver que vemos.

Info:

Veremos estas lineas interesantes del archivo, nos esta mostrando de primeras un usuario llamado xerosec y despues un magic script con el archivo config.sh, pero nos vamos a centrar en el usuario, vamos a realizar fuerza bruta con dicho usuario para encontrar sus credenciales en SMB.

NetExec

Antes de realizar la fuerza bruta, vamos a limpiar el rockyou.txt para que este formateado en UTF-8 y no de errores con la herramienta.

Una vez echo esto, vamos a realizar la fuerza bruta.

Info:

Veremos que las ha encontrado, por lo que vamos a listar los recursos compartidos que tiene dicho usuario, que deberia de aparecer el /tmp.

Metemos como contraseña david1....

Info:

Veremos que se listo de forma correcta y por lo que vemos, vemos el recurso tmp, vamos a conectarnos a el.

Metemos como contraseña david1...

Y veremos que estaremos dentro, como antes vimos que estaba el magic script y si listamos no vemos el archivo config.sh vamos a crearnoslo nosotros para que se ejecute de forma automatica ya que es lo que hace esto.

config.sh

Lo guardamos y nos pondremos a la escucha.

Ahora tendremos que subir el archivo al SMB:

Si volvemos a donde tenemos la escucha veremos lo siguiente:

Vemos que ha funcionado, por lo que vamos a sanitizar la shell.

Sanitización de shell (TTY)

Antes de nada vamos a leer la flag del usuario.

user.txt

Escalate Privileges

Si listamos las capabilities que tenemos veremos lo siguiente:

Info:

Vemos que tendremos perl que no suele ser comun, por lo que podremos realizar lo siguiente para ser root.

Info:

Con esto veremos que seremos root, por lo que leeremos la flag de root.

root.txt

Last updated