Выбор ответа Middle Авторизация и безопасность API спрашивают часто обновлено
IDOR (BOLA)
Вопрос
Пользователь A получает свой заказ через GET /orders/1001. Подставив /orders/1002, он видит заказ пользователя B. Как называется уязвимость?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: IDOR, в OWASP API Top 10 это Broken Object Level Authorization. Сервер проверил, что пользователь вошёл, но не проверил, что объект принадлежит ему.
Варианты ответа
- XSS: в ответ со страницы заказа попадают данные чужого пользователя
- CSRF: запрос к чужому заказу отправлен от имени пользователя A
- IDOR, в OWASP API Top 10 это Broken Object Level Authorizationправильный ответ
- SQL-инъекция: подстановка id в путь меняет условие в запросе к базе
Разбор
Сервер проверил, что пользователь вошёл, но не проверил, что объект принадлежит ему. В OWASP API Security Top 10 2023 это API1, самая частая проблема API. Тест простой и обязательный: двумя пользователями пройтись по чужим id во всех эндпоинтах, включая PUT и DELETE.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.