Выбор ответа Senior Аутентификация и сессии обновлено

Ссылка сброса пароля из заголовка Host

Вопрос

Ссылка для сброса пароля строится как https://{request.headers.Host}/reset?token=.... Чем это опасно?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: С поддельным Host письмо жертве уйдёт со ссылкой на домен атакующего вместе с токеном. Заголовок Host контролирует клиент, а прокси и фреймворки часто его пропускают.

Варианты ответа

  1. Ничем: браузер подставляет Host сам, и подделать его в запросе к сайту невозможно
  2. Тем, что токен попадёт в заголовок Referer при переходе со страницы сброса
  3. Тем, что токен будет виден в логах почтового сервера и у всех промежуточных релеев
  4. С поддельным Host письмо жертве уйдёт со ссылкой на домен атакующего вместе с токеномправильный ответ

Разбор

Заголовок Host контролирует клиент, а прокси и фреймворки часто его пропускают. Жертва получает настоящее письмо от сервиса, но ссылка ведёт к атакующему, и токен сброса утекает при переходе. Базовый URL нужно брать из конфигурации.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.