Инъекция SQL

Инъекция SQL – тип вредоносного программного обеспечения, которое работает только с базами данных SQL, используя их ошибки и уязвимости.

Принцип действия

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

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

Виды атак

Инъекция SQL классифицируют в зависимости от типа атаки:

  1. Классический (Union-based). Благодаря внедрению вредоносного кода в базу данных киберпреступник получает полный доступ к ней. Наиболее редкий вид атаки на сегодняшний день, поскольку почти все СУБД защищены от него.
  2. Основанный на ошибках (Error-based). Злоумышленник анализирует текст каждой ошибки, чтобы получить подробную информацию о БД и ее уязвимостях.
  3. Логический (Boolean-based). Злоумышленник использует метод перебора, чтобы получить подробную информацию о БД. Он отправляет логические запросы к базе данных, чтобы получить ответ в формате True или False.
  4. Временный (Time-Based). Аналогичен предыдущему, только в качестве исходного материала берется не логический ответ, а время отклика базы данных.
  5. Индивидуальный (Out-of-band). Крайне редкий вид инъекции SQL, так как злоумышленник анализирует индивидуальное поведение каждой БД для поиска уязвимостей.

Особенности

Злоумышленник использует специальное ПО, которое автоматизирует процесс поиска и анализа ошибок. Оно помогает создавать шаблоны для атаки на базы данных, чтобы получить необходимые сведения.

Полученную информацию киберпреступник анализирует и создает более детальную атаку, чтобы получить удаленный доступ к базе.

Изначально программное обеспечение создавалось для поиска уязвимостей внутри БД. После его нахождения администраторы исправляли ошибки, повышая защиту самой базы данных от взлома.