Missing Functional Level Access Control

Directory Tranversal-Directories

Para empezar este ejercicio observamos la URL y vemos que tiene un parámetro apuntando a un directorio llamado Documents.

Interceptamos la petición con Burp y la mandamos al repeater para ir probando payloads manuales, y así comprobar si la URL es vulnerable.

Como vemos en la imagen inferior, al agregar el payload, comprueba que el directorio Var existe:

Ahora probaremos con la carpeta etc y tambien vemos que nos devuelve el interior de la misma, listando todos sus archivos.

Directory Transversal-Files

Este ejercicio es muy similar al anterior, observamos que el parámetro de la URL page apunta a un archivo llamado message.txt.

Utilizaremos este parámetro para ir buscando directorios y ficheros a los cuales tengamos acceso y recopilar información del sistema vulnerable.

Primero probamos con el payload etc/shadow y como podemos observar en la imagen inferior, la petición la llega a realizar, pero no tenemos permisos para leer el contenido del fichero.

Por último leeremos el contenido del etc/passwd y vemos que finalmente hemos vulnerado el sistema , listando el contenido del archivo.

Local File Inclusion

En este ejercicio vemos que tenemos un archivo rlfi.php:

Seleccionamos en la pestañita de abajo el lenguaje y le damos a Go:

Observamos que en la URL nos salen dos parámetros uno llamado language y el otro action. Nos centraremos en el primero y intentaremos vulnerarlo.

Esta vez automatizaremos la tarea interceptando la petición y mandándola al Intruder, eligiremos una lista de payloads y comprobaremos las respuestas del servidor.

Por último probaremos el payload en la URL:

Remote file Inclusion

Para realizar la explotación remota, primeramente abriremos un server con python:

Dejamos en el server un archivo index.html y a través de la URL solicitamos ejecutar dicho archivo, explotando así el RFI.

Restrict Device Access

En este ejercicio observamos que al conectarnos desde el PC, nos salta un mensaje informando que no es posible ya que solamente podemos loguear con un smartphone o una tablet.

Para empezar interceptaremos la petición y veremos que en el user agent pone que conectamos mediante un SO linux x86_64:

Procederemos a cambiar el user agent por el de un Samsung Galaxy S8:

User Agent Samsung Galaxy: (Linux; Android 7.0; SM-G892A Build/NRD90M; wv)

Para finalizar, vemos que finalmente a traves del user agent hemos realizado un bypass desde el PC y hemos logueado como si fuera una tablet o un smartphone.

Restrict Folder Access

Aquí el ejercicio nos pide que cerremos la sesion de nuestro usuario y intentemos acceder a la carpeta Documents.

Cerramos la sesión y logueamos mediante la URL directamente a la carpeta Documents:

Hasta aquí esta serie de ejercicios de Bugcrowd Academy, nos vemos en la próxima entrega 😀

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *