Выбор ответа Senior SSRF, файлы и редиректы обновлено

DNS rebinding

Вопрос

Сервис резолвит домен из URL, проверяет, что IP внешний, а затем вызывает requests.get(url). Какая атака обходит такую защиту?

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

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

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

Коротко

Правильный ответ: DNS rebinding: при проверке домен даёт внешний IP, а при запросе внутренний. Между проверкой и использованием имя разрешается дважды (уязвимость TOCTOU).

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

  1. Clickjacking: прозрачный iframe заставит сервис запросить внутренний адрес вместо внешнего
  2. Подмена заголовка Host, после которой запрос уйдёт на внутренний виртуальный хост
  3. Отравление кеша CDN: в кеш попадёт ответ внутреннего сервиса под внешним адресом
  4. DNS rebinding: при проверке домен даёт внешний IP, а при запросе внутреннийправильный ответ

Разбор

Между проверкой и использованием имя разрешается дважды (уязвимость TOCTOU). Атакующий управляет DNS с коротким TTL и отдаёт разные ответы. Защита: подключаться к уже проверенному IP (с правильным Host и SNI) или ходить через egress-прокси, который сам запрещает внутренние адреса. Остальные атаки к этой схеме не относятся.

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

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