Выбор ответа Senior Тестирование веба обновлено

Доступ к чужому заказу

Вопрос

Страница заказа открывается по адресу /orders/10452. Какая проверка безопасности здесь обязательна?

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

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

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

Коротко

Правильный ответ: Под другим пользователем открыть чужой заказ: нужен отказ. Это проверка на IDOR (небезопасная прямая ссылка на объект): сервер должен проверять, что заказ принадлежит текущему пользователю, а не просто отдавать запись по номеру.

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

  1. Под другим пользователем открыть чужой заказ: нужен отказправильный ответ
  2. Проверить, что номер заказа отображается крупным шрифтом
  3. Проверить, что страница заказа открывается быстрее секунды
  4. Проверить, что адрес страницы короче 100 символов

Разбор

Это проверка на IDOR (небезопасная прямая ссылка на объект): сервер должен проверять, что заказ принадлежит текущему пользователю, а не просто отдавать запись по номеру. Подставлять чужой номер нужно и в адрес, и в запрос API, ожидая 403 или 404. Номера часто идут по порядку, и перебором можно выгрузить чужие адреса и телефоны. Шрифт, скорость и длина адреса к безопасности не относятся. 404 вместо 403 иногда предпочтительнее: не раскрывает, что заказ существует.

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

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