Статья #65 · Уязвимости

Broken Access Control: что это значит

Broken Access Control возникает, когда сервер не проверяет, разрешено ли конкретному пользователю читать объект или выполнять действие. Скрытая кнопка и сложный URL не являются защитой: запрос можно отправить напрямую.

Автор: редакция NDK VPN Обновлено: 02.08.2026 Время чтения: 3 мин.

Короткий ответ

Проверка полномочий должна выполняться на сервере для каждого объекта и операции, с запретом по умолчанию. Особенно внимательно тестируют смену идентификаторов, роли, экспорт, массовые операции и административные API.

Горизонтальное и вертикальное повышение

В первом случае пользователь получает данные другого пользователя того же уровня, во втором — функцию более привилегированной роли. Оба сценария часто начинаются с изменения ID или параметра запроса.

Надёжная модель

Сервер связывает текущую сессию, требуемое действие и конкретный ресурс, а не доверяет роли или owner_id из браузера. Решения о доступе лучше централизовать и покрывать тестами.

Что искать в проверке

Попробуйте чужие идентификаторы, отсутствующие и просроченные токены, прямой вызов скрытого endpoint, изменение метода и пакетный запрос. Фиксируйте как успешные ответы, так и утечки в ошибках.

Чек-лист действий

  1. Опишите роли и разрешённые действия.
  2. Запрещайте доступ по умолчанию.
  3. Проверяйте объект на сервере.
  4. Тестируйте API от разных пользователей.
  5. Журналируйте отказ и административные действия.

Что часто делают неправильно

Источники и документация

Вопросы по теме

IDOR — это Broken Access Control?

Да, прямой доступ к объекту по изменяемому идентификатору — распространённый частный случай.

Достаточно ли непредсказуемого UUID?

Нет. UUID усложняет перебор, но сервер всё равно обязан проверять право на конкретный объект.

Нужен ли WAF?

Он может блокировать часть аномалий, но не знает вашу бизнес-модель и не заменяет проверку авторизации в приложении.

Продолжить

Следующие статьи