# Домашняя работа №5 (Задачи по аутентификации на PortSwigger) ###### tags: `Домашние задания Web Application Penetration Testing` Первые 2 задачи мы выполнили на занятии, начинаем с третьего задания. 1) Задача: Password reset broken logic Как следует из описания задачи, имеется ошибка в работе восстановления пароля. Проверим данный функционал. ![](https://i.imgur.com/jHdUJsq.png) Попробуем просто указать нужный нам логин на смену пароля в запросе. ![](https://i.imgur.com/5sgJVJO.png) Запрос отработал без ошибок. Авторизуемся под новым паролем. Задание выполнено. 2) Задача: Username enumeration via subtly different responses Похожее задание мы уже выполняли, но теперь нам необходимо перебрать дополнительно к паролю еще и логин. Делаем тестовый запрос на вход по логину и паролю и ловим его в Burp. ![](https://i.imgur.com/MMFGB0T.png) Список логинов и паролей у нас есть, переходим в intruder и добавляем их там. ![Uploading file..._pimuhq1jv]() Начинаем перебирать, сразу выставим фильтр по коду ответа с 3xx для того, чтобы сразу увидеть ответ с паролем. Через некоторое время получаем его. ![](https://i.imgur.com/xwabiDx.png) Авторизуемся, задача выполнена. 3) Задача: Username enumeration via response timing Аналогично предыдущей задачи начинаем с проверки авторизационной формы. ![](https://i.imgur.com/ww0rTXX.png) Обнаруживаем блокировку по ip. Мы можем управлять сменой ip через передачу любого нового ip через заголовок X-Forwarded-For. Использую Intruder будем подставлять туда различные числа чтобы сбрасывать счетчик. С помощью Pitchwork определям сначало логин по времени ответа. ![](https://i.imgur.com/vQrs0zc.png) А затем и пароль. ![](https://i.imgur.com/YGJ8cEO.png) Задача выполнена. 4) Задача: Broken brute-force protection, IP block Судя по описанию задачи блокировка ip будет происходить после нескольких попыток неверного ввода пароля. Проверим это. ![](https://i.imgur.com/WhaQiJ8.png) Так и есть, на 3 раз нас блокирует. Но, если мы используем после 2 неправильных попыток, правильную, блокировки не будет. Используем это. ![](https://i.imgur.com/iQIyEka.png) Сдаем флаг. 5) Задача: Username enumeration via account lock В данной задаче происходит блок учетной записи при нескольких неправильных попытках. Поэтому нам нужно проверить сначало наличие правильной учетки для этого используем cluster bomb и пустые пароли для логинов. А затем найдя учетку используем уже перебор паролей через снайпера. По длине ответа получаем пароль. ![](https://i.imgur.com/0fWl8ou.png)