Критическая уязвимость SQL-инъекций обнаружена в Drupal core: под угрозой сайты на PostgreSQL

Drupal

20 мая 2026 года разработчики системы управления контентом Drupal выпустили экстренные обновления безопасности, закрывающие критическую уязвимость в ядре проекта. Основная проблема связана с SQL-инъекциями (разновидность атак на базы данных, при которых злоумышленник внедряет вредоносные SQL-запросы) в API абстракции баз данных Drupal. Уязвимость получила идентификатор CVE-2026-9082 (общеизвестная уязвимость) и оценку 6,5 балла по шкале CVSS v3 (система оценки степени опасности уязвимостей). Самое тревожное - атака доступна неавторизованным пользователям, то есть любому посетителю сайта.

Drupal используется на миллионах веб-сайтов по всему миру, включая государственные учреждения, крупные корпорации и образовательные платформы. Особенность данной уязвимости в том, что она затрагивает только сайты, работающие с PostgreSQL - одной из самых популярных реляционных баз данных с открытым исходным кодом. Однако последствия для владельцев таких ресурсов могут быть катастрофическими: злоумышленник способен не только извлекать данные, но и модифицировать их, а в некоторых случаях - повышать привилегии или выполнять произвольный код на сервере.

Факты инцидента

Уязвимость присутствует во всех версиях Drupal core начиная с 8.9.0 и до определённых релизов веток 10.x и 11.x. Конкретно затронуты диапазоны: от 8.9.0 до 10.4.10, от 10.5.0 до 10.5.10, от 10.6.0 до 10.6.9, от 11.0.0 до 11.1.10, от 11.2.0 до 11.2.12, от 11.3.0 до 11.3.10. Версии Drupal 9 и 8.9 уже достигли окончания жизненного цикла, однако разработчики в виде исключения предоставили патчи и для них - как временную меру, поскольку устаревшие сборки не получают регулярных исправлений безопасности.

Проблема кроется в API абстракции баз данных - наборе инструментов, который отвечает за формирование SQL-запросов и защиту от инъекций. Из-за ошибки нейтрализации специальных символов атакующий может отправить специально сформированный запрос, и тот выполнится в обход фильтров. Важно: атака возможна только при использовании PostgreSQL - для MySQL и других СУБД этот баг неактуален.

Как работает атака

Механизм SQL-инъекций давно известен специалистам, но каждый новый случай - повод напомнить о фундаментальных принципах безопасности. В Drupal core используют параметризированные запросы, которые теоретически должны предотвращать внедрение кода. Однако в данном случае разработчики допустили ошибку на уровне логики API, позволив передавать необработанные данные в части запроса, где они не должны были появиться. Это классический пример неправильной санитарии ввода.

Для эксплуатации уязвимости злоумышленнику не требуется иметь учётную запись на сайте. Достаточно лишь отправить HTTP-запрос с вредоносными параметрами, который будет обработан уязвимым компонентом. При успешной атаке он может выполнить произвольные SQL-команды - например, извлечь хеши паролей, изменить права доступа администратора или даже выполнить команды операционной системы через расширения баз данных (хотя в официальном описании говорится о возможном выполнении кода, но это зависит от конфигурации сервера).

Последствия и риски

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

Но есть и хорошая новость: для эксплуатации требуется, чтобы сайт использовал PostgreSQL. Многие проекты на Drupal работают с MySQL или MariaDB, поэтому они не подвержены этой конкретной уязвимости. Однако это не повод расслабляться - в состав того же обновления входят исправления для сторонних зависимостей Symfony и Twig (популярные PHP-фреймворк и шаблонизатор, интегрированные в Drupal). Эти библиотеки также получили важные патчи безопасности, затрагивающие все сайты, независимо от типа базы данных. В частности, исправлены уязвимости, связанные с возможностью обновления Twig-шаблонов пользователями с определёнными ролями (например, через модуль Views). Поэтому

Рекомендации для администраторов

Самый надёжный способ защититься - установить последние стабильные версии ядра Drupal. Для поддерживаемых веток это: Drupal 11.3.10, 11.2.12, 11.1.10, 10.6.9, 10.5.10 и 10.4.10. Если вы используете Drupal 9 или 8.9, разработчики опубликовали патчи для ручного применения, но настоятельно советуют как можно скорее перейти на одну из актуальных веток, так как старые версии уязвимы и для других ранее раскрытых проблем.

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

Вывод

Инцидент с CVE-2026-9082 - яркое напоминание о том, что даже зрелые системы с продуманной архитектурой защиты не застрахованы от ошибок в низкоуровневых компонентах. Совпадение релиза патча с обновлением популярных библиотек подчёркивает, насколько взаимосвязана современная экосистема веб-разработки. Администраторам Drupal стоит немедленно установить обновления, а пользователям PostgreSQL - сделать это в первую очередь. Бездействие может привести к тому, что ваш сайт станет лёгкой мишенью для атак с серьёзными последствиями.

Ссылки

Комментарии: 0