Skip to main content

Command Palette

Search for a command to run...

Napping 1.0.1 - Vulnhub Machine

Resolución de la maquina Napping 1.0.1 de Vulnhub

Updated
4 min read

Holaa! Una vez más lo veo por aquí... Qué bueno, te apetece un ¿CTF?

Gracias a "hadrian3689" por la máquina que ha compartido, qué grande!! 😃

Descripción de la maquina.

Sistema Operativo

Linux 🐧

Dificultad

Fácil

Lanzamiento

22/10/2021

Creador

hadrian3689

Enumeración

Realizamos un escaneo con nmap, a sus servicios y versiones.

Bueno confirmamos que estamos ante un Windows... Mentira un Ubuntu.

Enumerando la web me encontré con este login.

Aunque por lo visto puedo registrarme... Vamos a hacerlo.

Interesante, ¿no crees? ¿Crees que el admin realmente prueba los links subidos? Vamos a corroborarlo.

Montamos un servicio web con python, vamos a subirlo a la página. Esperando a que el admin entre a nuestro servicio...

python -m http.server 80

Y en efecto lo hace.

¿Qué sigue ahora? Analizar las funciones de la web...

¿Qué tal cambiar la contraseña del admin, por medio del formulario "Reset Your Password". Cambiando la petición de POST a GET, haciendo que el admin le dé click y cambie su contraseña automáticamente al entrar a link? ¿Suena bien?

Ah esto, se le conoce como CSRF.

http://192.168.1.75/reset-password.php?new_password=123456&confirm_password=123456

Pero no obtuve respuesta, así que descartamos. 🤡

Una vez mas me encuentro con algo nuevo para mi.

Reverse Tabnabbing

Le recomiendo que mejor se pase a OWASP, ya que lo explican bastante bien. Dicho esto, pues omitiré un poco la explicación... solo un poco.

Objetivo: Hacer que el usuario, en este caso el admin, habrá nuestro link con un código malicioso, el cual va a hacer que la página donde abrió dicho link, cambie a una página maliciosa, que simula ser la legítima (login).

Ataque

Entonces para esto lo desglosé en ángulos pasos.

  • Crear el archivo html llamado payload.html, este redireccionara a una pagina que se hará pasar por el login legitimo de la maquina victima.

      vim payload.html
    

  • Crear la pagina index.html, para esto copiare el codigo fuente del login legitimo...

      vim index.html
    

  • Colocarse en escucha con netcat por el puerto donde se alojará nuestro, index.html es decir, el puerto 8000. Y presentarle al administrador nuestro servicio web con el archivo payload.html con python por el puerto 80.

    Ahora podemos visitar nuestro login en http://192.168.1.74/index.html. Y podremos ver que netcat captura la petición.

En el caso del admin, vamos a capturar la petición y sus ¡credenciales! 😃

Vamos a colocar http:/192.168.1.74/payload.html para que nuestro admin lo revise.

Esperamos...

Ah bien ahí, querido usuario daniel.

via GIPHY | How to order starbucks, Coffee gif, Seinfeld

Vamos a aplicar un decode del body, porque hay algunos caracteres codificados.

username=daniel&password=C%40ughtm3napping123

username=daniel
password=C@ughtm3napping123

Probé estas credenciales en la web, pero no tuve acceso, así que fui al servicio ssh.

Ah bueno, esto es mucho mejor que el acceso a un panel login.

Si GIF - Conseguir el mejor gif en GIFER

Escalada de privilegios

Iniciamos con el usuario daniel, asegure de ver algunas cosas como:

  • Permisos sudo.

  • Tareas cron.

  • Permisos en las carpetas /

  • Grupos en los que pertenezco.

  • Identificar usuarios del sistema.

  • Permisos de las carpetas dentro /home/

  • Analizar procesos.

Y bueno... Te diré las cosas esenciales que he identificado, para esta escalada.

  1. Existe otro usuario llamado adrian

  2. Pertenecemos al grupo 1002 (administrators)

Dicho esto, podemos entrar a la carpeta /home/adrian/.

Interesante, ¿No crees?

Después me enteré de que hay una tarea cron por detrás, ejecutando este archivo query.py, el usuario quien lo ejecuta es adrian.

Esto es gracias a que podemos ver los procesos con pspy.

Dicho esto, y debido a que somos parte del grupo administrators, podemos modificar el archivo query.py 🤨

Vamos a modificar el archivo para enviarnos una shell...

¿Listo? Esperemos...

Excelenteee. Aplicando tratamiento de la TTY...

Ahora inspeccionando los permisos sudo, encontré esto.

Así que, fui directo a GTFOBins, para aprovecharme del binario y ser root.

¿Cómo lo ve?

En efecto, es correcto, somos root.

Gif en whatsapp? ¡Si! [Lee para más detalles] | •K-Pop• Amino

Espero que se la pase bien, estimado lector, ¡nos vemos en el siguiente CTF!

Sabemos que tú también estabas 'Loco por Mary'! Así se ve su elenco 17 años  después del estreno [Fotos]


Referencias