Injection - DockerLabs
| OS | Dificultad | Creator |
|---|---|---|
| Linux | Muy Fàcil | ElPinguinoDeMario |
Reconocimiento
Vemos el puerto 22 y el puerto 80.
Vamos a ver el puerto 80.
Tenemos un panel de login.
Vamos a hacer fuzzing con Gobuster.
Vemos el directorio /config.php, pero no hay nada, está en blanco.
Si hacemos varios intentos de contraseña, vemos este error.
Vamos a probar una inyección SQL.
sqlmap -u http://172.17.0.2/index.php --forms --dbs --batch
Nos muestra lo siguiente:
Ahora usamos el siguiente comando para acceder a register:
sqlmap -u http://172.17.0.2/index.php --forms -D register --tables --batch
Accedemos a users y listamos las columnas:
sqlmap -u http://172.17.0.2/index.php --forms -D register -T users --columns --batch
Por último, listamos las dos columnas que hay: passwd y usernames, y tenemos credenciales.
sqlmap -u http://172.17.0.2/index.php --forms -D register -T users -C passwd,usernames --dump --batch
Ahora, si accedemos a la web, nos dice lo siguiente:
Vamos a ver si las credenciales son válidas para SSH.
Las credenciales son válidas para el SSH. Vamos a ver cómo escalamos privilegios.
Si hacemos una búsqueda de permisos SUID con el comando:
find / -perm -4000 2>/dev/null
Encontramos el binario env.
Vamos a explotarlo haciendo una búsqueda en GTFOBins.
¡YA SOMOS ROOT!