ГлавнаяБлог → Безопасность

Что такое SQL-инъекция простыми словами

SQL-инъекция - одна из самых старых и опасных атак. Объясняем на примере простыми словами, как злоумышленник «подсовывает» команду базе и как этому помешать.

Что такое SQL-инъекция простыми словами
Краткий ответ

SQL-инъекция - внедрение команды в поле ввода, которую база данных выполняет. Защита: подготовленные запросы, проверка ввода и аудит самописного кода.

Суть атаки на пальцах

База данных понимает команды, а сайт передаёт ей данные из полей - например, логин из формы. Если поле не проверено, злоумышленник вместо логина вводит кусок команды, и база выполняет её: выдаёт данные, меняет записи или вовсе удаляет таблицы.

Чем опасна инъекция

  • Кража базы: логины, пароли, заказы, данные клиентов.
  • Изменение данных - например, подмена цен или контента.
  • Получение административного доступа к сайту.
  • Удаление данных - вплоть до полного опустошения базы.

Как работает защита

Современные CMS используют подготовленные запросы: команда и данные идут раздельно, поэтому «подсунуть» команду через поле нельзя. Проблема возникает в самописных проектах и устаревшем коде, где запросы собираются строкой вручную.

Как защитить свой сайт

  1. Убедитесь, что сайт на актуальной версии CMS и плагинов.
  2. Для самописного кода - используйте подготовленные запросы и экранирование.
  3. Проверяйте и фильтруйте всё, что приходит от пользователей.
  4. Закажите аудит, если проект старый и самописный.
Важно: следы SQL-инъекции не всегда видны снаружи. Если есть сомнения в самописном коде - проведите аудит безопасности.

Интернет-магазины и самописные проекты - в зоне риска. О защите магазинов читайте в статье «Как защитить интернет-магазин».

Частые вопросы

SQL-инъекция актуальна сегодня?
Да. В популярных CMS её находят и закрывают, а в самописном коде она встречается часто.
Что может украсть инъекция?
Данные пользователей, заказы, пароли и полный доступ к базе данных.
Как защититься от SQL-инъекции?
Использовать подготовленные запросы, фильтровать ввод и регулярно проверять самописный код.

Сайт не работает прямо сейчас?

Оставьте заявку - через 30 минут вы будете точно знать, что случилось, сколько стоит ремонт и когда сайт снова начнёт приносить деньги.

Нажимая кнопку, вы соглашаетесь с политикой обработки персональных данных.

Спасти сайт - диагностика 0 ₽