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.

1URLDirectory.png

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

2peticioninterceptada.png

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

3repeatercompruebadirectorios.png

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

4payloadvulnrable.png

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.

Url.png

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.

etcshadownopermisos.png

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

etcpasswdyleemoselfichero.png

Local File Inclusion

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

urlinicio.png

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

urlparametros.png

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.

 

intruder.png

intruderserverresponse.png

Por último probaremos el payload en la URL:

URLexploited.png

Remote file Inclusion

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

REMOTEpythonserver.png

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

REMOTEindexhtml.png

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.

remoteenunciado.png

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

useragentPC.png

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)

useragentsamsunggalaxy.png

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.

imagenfinal.png

Restrict Folder Access

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

imageninicio.png

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

urldocuments.png

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

Anuncios

Deja un comentario