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

Слепая SQL-инъекция

Вопрос

Приложение не показывает ни данных, ни ошибок БД. Можно ли эксплуатировать SQL-инъекцию?

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

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

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

Коротко

Правильный ответ: Да: слепыми техниками по разнице ответов или задержкам, бит за битом. Boolean-based и time-based техники задают базе вопросы «да/нет» и измеряют ответ или время.

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

  1. Нет: без вывода данных или ошибок инъекция ничего не даёт атакующему
  2. Если включён режим отладки и стек ошибок попадает в логи
  3. Да: слепыми техниками по разнице ответов или задержкам, бит за битомправильный ответ
  4. Да, но только через UNION-запросы, которые склеят данные в ответ

Разбор

Boolean-based и time-based техники задают базе вопросы «да/нет» и измеряют ответ или время. Это медленнее, но полностью рабочее. Поэтому скрытие ошибок не защита, а только неудобство. UNION как раз требует видимого вывода.

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

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