На странице
apsyleg1 мин
#portswigger #access-control #web-security

Контроль доступа на основе Referer

Лаборатория

Referer-based access control · Apprentice

Решение

Дано

This lab controls access to certain admin functionality based on the Referer header. You can familiarize yourself with the admin panel by logging in using the credentials administrator:admin.

To solve the lab, log in using the credentials wiener:peter and exploit the flawed access controls to promote yourself to become an administrator.

Анализ задания

Есть админка, в ней есть функция повышения прав, которая использует заголовок Referer в качестве данных для управления доступом. Нам дали креды для входа в админку, изучим, как работает функция повышения прав. Для решения нужно повысить пользователю wiener права до административных.

Разведка

Идём смотреть админку. Знакомая форма повышения прав.

После нажатия кнопки повышения прав — запрос:

GET /admin-roles?username=carlos&action=upgrade
Referer: https://0a2b00b703d010d680d8fd69008300f7.web-security-academy.net/admin

Окей, зайдём теперь wiener и попробуем выполнить этот запрос, только заменив session от пользователя wiener. Запрос GET /admin-roles?username=wiener&action=upgrade, Referer берём как в случае запроса админа.

Лаба решена.