HiddenDocker
El escaneo de puertos muestra abiertos el 22 y el 5000
Detrás del 5000 hay una aplicación que tiene un campo vulnerable a SSTI
Se envía un payload típico de SSTI para obtener una reverse_shell.
Una vez obtenida se puede ver la flag de user
Iniciando el reconocimiento se puede comprobar que existen contenedores de docker
Para poder acceder a él se debe hacer un Port Forwarding con Chisel, pudiendo luego acceder a una web detrás del puerto 80 muy similar a la de Dockerlabs.es
Como se está usando tecnología php, hay que hacer fuzzing también por estas extensiones, encontrando un directorio y 2 archivos php. También se puede hacer contra nuestro localhost en caso de haber traído el puerto con chisel
En machine.php se pueden cargar archivos, pero solo admite extensiones .zip. Con extensiones similares a php se detecta que admite phar
En este caso se utilizó la shell de PentestMonkey, que una vez subida se llama desde el directorio /uploads. Se puede obtener la shell tanto en el mismo host con IP 172.17.0.1 o en la máquina atacante con Socat.
En el directorio opt hay una nota sobre donde hay una clave para el usuario root
Con sudo se observa que se puede usar grep y cut sin contraseña, por lo que se usará grep para leer el archivo de la clave
Como root con esta contraseña se puede entrar por SSH al equipo principal y obtener la flag de root.
