Базы данных / SQL junior
SQL-инъекция — что это и как проверить?
Ответ
Вставка SQL-кода в поле ввода: ' OR 1=1 -- в поле логина. Если приложение подставляет ввод напрямую в SQL — получаем доступ ко всем данным. Как проверить: ввести спецсимволы и SQL-фрагменты в поля формы и посмотреть на аномальный ответ или ошибку. Защита — параметризованные запросы (PreparedStatement).
Разбор: SQL-инъекция — это внедрение SQL-кода через поля ввода, когда пользовательский ввод напрямую конкатенируется в запрос (например, ' OR 1=1 -- в логине), что даёт доступ к чужим данным; проверяют, подставляя спецсимволы и SQL-фрагменты и наблюдая аномальный ответ или ошибку. Дистракторы путают её с перехватом трафика, переполнением буфера и ошибочно винят ORM, тогда как защита — это как раз параметризованные запросы (PreparedStatement), а не отказ от ORM.
Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.