Выбор ответа Middle Инъекции: SQL, NoSQL, команды обновлено

Права учётки БД

Вопрос

Зачем приложению отдельная учётка БД с минимальными правами, если запросы и так параметризованы?

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

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

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

Коротко

Правильный ответ: Глубокая оборона: если инъекция найдётся, ущерб ограничен правами. Ни одна мера не идеальна: где-то найдётся сырой запрос.

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

  1. Чтобы запросы выполнялись быстрее: СУБД меньше проверяет права
  2. Это требование всех СУБД для подключения из приложения по сети
  3. Чтобы для части запросов можно было не делать параметризацию
  4. Глубокая оборона: если инъекция найдётся, ущерб ограничен правамиправильный ответ

Разбор

Ни одна мера не идеальна: где-то найдётся сырой запрос. Учётка без DDL, без доступа к чужим схемам и без функций чтения файлов превращает катастрофу в инцидент. На скорость это не влияет и параметризацию не отменяет.

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

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