
Готовимся анонсировать Pentest award 2025, поэтому решили в последний раз опубликовать подборку кейсов победителей в кратком содержании, чтобы каждый мог вдохновиться, представить свою работу в списке победителей и лучше понять, какие заявки отправлять в этом году.
🥇 Начнем с «Пробива веба» и автора @shin0_by
Объект исследования
Веб-сервис с личным кабинетом пользователей, использующий двухфакторную аутентификацию (2FA).
Результат
Account takeover с обходом 2FA, определение способа полного компрометации всех аккаунтов через перебор параметра UserStatus.
Ход исследования
1) Перечисление пользователей:
Входная форма позволяла определить существование учетных записей по различным ответам сервера. Запуск автоматического подбора логинов дал список валидных учетных записей.
2) Атака password spraying:
Вход в учетную запись не блокировался после нескольких неудачных попыток ввода пароля, а период блокировки не увеличивался. Это позволило выполнять перебор паролей с задержкой в 30 минут, что дало успешный доступ к нескольким учетным записям.
3) Обход 2FA:
При попытке входа система требовала код из SMS. Однако анализ параметров запроса показал наличие параметра mode4, отвечающего за состояние аутентификации. Изменение значения sms на registration перенаправляло пользователя на страницу завершения регистрации, где можно было задать новый пароль и войти без фактического подтверждения личности.
4) Захват учетных записей:
На странице смены пароля обнаружена cookie UserStatus, которая служила уникальным идентификатором пользователя. Подмена этого параметра в cookies на значение другого пользователя позволяла войти в его учетную запись. Разбор структуры UserStatus показал, что половина его битов определяет поля, а вторая половина — их значения. Это снизило число возможных значений с 1,1 триллиона до 1,05 миллиона, что сделало массовый подбор реальным.
Полноценный текст с картинками доступен на Хакере👈
Объект исследования
Веб-сервис с личным кабинетом пользователей, использующий двухфакторную аутентификацию (2FA).
Результат
Account takeover с обходом 2FA, определение способа полного компрометации всех аккаунтов через перебор параметра UserStatus.
Ход исследования
1) Перечисление пользователей:
Входная форма позволяла определить существование учетных записей по различным ответам сервера. Запуск автоматического подбора логинов дал список валидных учетных записей.
2) Атака password spraying:
Вход в учетную запись не блокировался после нескольких неудачных попыток ввода пароля, а период блокировки не увеличивался. Это позволило выполнять перебор паролей с задержкой в 30 минут, что дало успешный доступ к нескольким учетным записям.
3) Обход 2FA:
При попытке входа система требовала код из SMS. Однако анализ параметров запроса показал наличие параметра mode4, отвечающего за состояние аутентификации. Изменение значения sms на registration перенаправляло пользователя на страницу завершения регистрации, где можно было задать новый пароль и войти без фактического подтверждения личности.
4) Захват учетных записей:
На странице смены пароля обнаружена cookie UserStatus, которая служила уникальным идентификатором пользователя. Подмена этого параметра в cookies на значение другого пользователя позволяла войти в его учетную запись. Разбор структуры UserStatus показал, что половина его битов определяет поля, а вторая половина — их значения. Это снизило число возможных значений с 1,1 триллиона до 1,05 миллиона, что сделало массовый подбор реальным.
Полноценный текст с картинками доступен на Хакере