# Домашняя работа №5 (Задачи по аутентификации на PortSwigger)
###### tags: `Домашние задания Web Application Penetration Testing`
Первые 2 задачи мы выполнили на занятии, начинаем с третьего задания.
1) Задача: Password reset broken logic
Как следует из описания задачи, имеется ошибка в работе восстановления пароля. Проверим данный функционал.

Попробуем просто указать нужный нам логин на смену пароля в запросе.

Запрос отработал без ошибок.
Авторизуемся под новым паролем. Задание выполнено.
2) Задача: Username enumeration via subtly different responses
Похожее задание мы уже выполняли, но теперь нам необходимо перебрать дополнительно к паролю еще и логин. Делаем тестовый запрос на вход по логину и паролю и ловим его в Burp.

Список логинов и паролей у нас есть, переходим в intruder и добавляем их там.
![Uploading file..._pimuhq1jv]()
Начинаем перебирать, сразу выставим фильтр по коду ответа с 3xx для того, чтобы сразу увидеть ответ с паролем. Через некоторое время получаем его.

Авторизуемся, задача выполнена.
3) Задача: Username enumeration via response timing
Аналогично предыдущей задачи начинаем с проверки авторизационной формы.

Обнаруживаем блокировку по ip. Мы можем управлять сменой ip через передачу любого нового ip через заголовок X-Forwarded-For. Использую Intruder будем подставлять туда различные числа чтобы сбрасывать счетчик.
С помощью Pitchwork определям сначало логин по времени ответа.

А затем и пароль.

Задача выполнена.
4) Задача: Broken brute-force protection, IP block
Судя по описанию задачи блокировка ip будет происходить после нескольких попыток неверного ввода пароля. Проверим это.

Так и есть, на 3 раз нас блокирует. Но, если мы используем после 2 неправильных попыток, правильную, блокировки не будет. Используем это.

Сдаем флаг.
5) Задача: Username enumeration via account lock
В данной задаче происходит блок учетной записи при нескольких неправильных попытках.
Поэтому нам нужно проверить сначало наличие правильной учетки для этого используем cluster bomb и пустые пароли для логинов.
А затем найдя учетку используем уже перебор паролей через снайпера.
По длине ответа получаем пароль.
