19 ~Boiler CTF - Linux
Última actualización
Última actualización
Lo primero que haremos será realizar un ping, para saber dos cosas, la primera para ver si tenemos conexión con la maquina y la segunda para deducir el sistema operativo mediante el ttl.
En este caso el ttl es de 63 siendo un sistema operativo linux, pero realmente el ttl del sistema Linux es de 64, esta disminución es debido a los nodos intermediarios que tiene la red.
Una vez tenemos conexión con la maquina, lanzaremos un escaneo con la herramienta nmap.
Descripción de los parámetros:
-p- : Escanea los puertos especificados, en este caso escanea los 65535 puertos.
--open : Muestra solo los puertos abiertos.
-sS : Escanea mediante TCP SYN.
--min-rate : Envía paquetes no mas lentos que el número indicado por segundo en nuestro caso 5000.
-Pn : Omite el descubrimiento de host.
-n : No realiza resolución DNS.
-vvv : Muestra la información mientras se esta realizando el escaneo.
IP : La IP que queremos escanear.
-oG : Guarda la salida del escaneo en un formato grepeable.
Una vez finalizado el escaneo, realizaremos un escaneo un poco mas exhaustivo.
Descripción de los parámetros:
-p : Escanea los puertos especificados.
-sC : Lanza varios scripts defaults de nmap.
-sV : Determina los servicios que están corriendo en los puertos además de información extra.
IP : La IP que queremos escanear.
-oN : Guarda la salida en el formato de nmap.
Lo primero que vemos es el servicio FTP, donde no contiene nada de interés, el siguiente servicio es HTTP, vamos a entrar a la pagina a ver que contiene, y vemos que es una pagina default de apache Vamos a utilizar la herramienta gobuster para descubrir nuevas rutas.
Descripción de los parámetros:
dir : Utiliza el modo de enumeración de directorios/archivos.
-u : Le indicamos que le vamos a pasar una url.
URL : La url objetivo.
-w : Le indicamos que vamos a usar un diccionario.
/PATH/ : Le indicamos la ruta del diccionario a usar.
-t 50 : Le indicamos el numero de peticiones hacia el servidor.
--no-error : No muestra errores por pantalla.
-z : No muestra la barra de progresos por pantalla.
-o : Guarda la salida en un archivo.
Vemos una ruta llamada /joomla, donde volveremos a realizar un escaneo de nuevas rutas y hemos encontrado algunas rutas interesantes.
Analizamos la ruta _test, y vemos que nos dirige a un sitio que tiene sar2html.
Investigando en ella vemos que al seleccionar un sistema operativo, en la url podemos intentar un RCE.
Al listar los archivos del directorio, vemos que hay un archivo llamado log.txt.
Al ver el contenido del archivo vemos unas credenciales, donde podríamos utilizarla para la sesión de ssh.
Realizaremos una enumeración del sistema, y vemos que tenemos buscando permisos SUID, tenemos permiso SUID en el comando find.
Descripción de los parámetros:
-perm : Le indicamos que vamos a buscar permisos.
-u=s : le indicamos que vamos a buscar permisos de usuario setuid.
2>/dev/null : Mandamos los errores al /dev/null.
Y con esto somos ROOT de la maquina.
Vamos a buscarlo en la pagina , por el comandos find y vemos que tenemos una opción con el permisos SUID.