shenron-3 VulnHub

Escaneo de puertos

nmap -p- --min-rate 5000 -sS <IP>

Info:

Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-05-27 14:23 EDT
Nmap scan report for 192.168.5.148
Host is up (0.00056s latency).

PORT   STATE SERVICE VERSION
80/tcp open  http    Apache httpd 2.4.41 ((Ubuntu))
|_http-title: shenron-3 | Just another WordPress site
|_http-generator: WordPress 4.6
|_http-server-header: Apache/2.4.41 (Ubuntu)
MAC Address: 00:0C:29:CC:AB:32 (VMware)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running: Linux 4.X|5.X
OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5
OS details: Linux 4.15 - 5.8
Network Distance: 1 hop

TRACEROUTE
HOP RTT     ADDRESS
1   0.56 ms 192.168.5.148

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

Tendremos que editar el archivo hosts...

Gobuster

Info:

Por lo que vemos tiene un wordpress por lo que haremos lo siguiente...

Info:

Nos saca al usuario admin...

Info:

Por lo que vemos las credenciales son las siguientes...

Por lo que nos logeamos en wordpress...

Una vez dentro si nos vamos a Themes en la seccion Editor, seleccionamos la casilla 404.php y ahi inyectamos una Reverse Shell...

Una vez puesta en esa plantilla, lo duardaremos dandole a Update File, hecho eso nos vamos dentro de wordpress a una URL que no exista para que nos salga la pagina 404.php y se nos haga la Reverse Shell, pero antes estaremos a la escucha...

Y nos vamos por ejemplo...

Al no existir en la pestaña nos saldra Page not found y ya habriamos conseguido la shell como www-data....

Sanitizamos la shell...

Si nos vamos a /var/www/html/wp-config.php y lo leemos, veremos lo siguiente...

Por lo que vemos probaremos a utilizar la misma contraseña que utilizamos con el usuario admin pero con este usuario llamado shenron...

Y veremos que si sirve....

leemos la flag en la home del mismo usuario...

local.txt (flag1)

Vemos un archivo llamado network en la home y tiene el SUID activado como root por lo que ejecutamos ese archivo como root, si nos lo pasamos a nuestro host con python3...

host

Haremos lo siguiente...

Info:

Vemos que ejecuta un netstat por lo que cambiaremos el PATH creando nosotros un netstatmalicioso para ser root....

Volviendo al servidor victima...

Lo guardamos en /tmp/ como netstat y hacemos lo siguiente...

Y ahora cuando ejecutamos de nuevo...

Nos pondra que se nos añadio en el archivo sudoers por lo que ya podremos ser root...

Info:

Y seremos root, leemos la flag...

root.txt (flag2)

Last updated