Разработчики системы управления базами данных PostgreSQL выпустили пакет исправлений, закрывающий 28 уязвимостей в различных компонентах продукта. Часть проблем позволяет злоумышленнику выполнить произвольный код на сервере или клиенте, другие приводят к раскрытию конфиденциальных данных, обходу политики безопасности и отказу в обслуживании. Обновление затронуло все поддерживаемые ветки PostgreSQL - начиная с версии 14 и заканчивая версией 19, находящейся в стадии бета-тестирования.
Детали уязвимостей
По данным бюллетеня, опубликованного 13 августа 2026 года, уязвимости присутствуют в PostgreSQL 14.x до версии 14.24, в PostgreSQL 15.x до 15.19, в PostgreSQL 16.x до 16.15, в PostgreSQL 17.x до 17.11 и в PostgreSQL 18.x до 18.6. Исправленные версии уже доступны для загрузки. Для участников тестирования PostgreSQL 19 подготовлена бета-версия 3, в которую также включены исправления.
Среди наиболее серьёзных проблем выделяются переполнения буфера, которые ведут к выполнению произвольного кода. Так, уязвимость CVE-2026-14664 возникает при обработке регулярных выражений, CVE-2026-14669 связана с функцией форматирования to_char, CVE-2026-14670 затрагивает процедурный язык plperl, а CVE-2026-14676 - расширение pg_stat_statements. Все они получили оценку CVSS 8.8, что близко к максимальному уровню опасности. Эксплуатация таких уязвимостей может позволить атакующему полностью скомпрометировать сервер баз данных, если он сможет выполнить специально сформированный запрос или обработать вредоносные данные.
Ещё одна серьёзная проблема, CVE-2026-15741, связана с выражением EXTRACT в SQL-запросах. Из-за ошибки при разборе выражения возможна SQL-инъекция, то есть внедрение произвольного SQL-кода в запрос. Это классический вектор атаки, который может привести к несанкционированному чтению, изменению или удалению данных в базе. Уязвимость также оценена в 8.8 балла.
Ряд уязвимостей затрагивает клиентскую часть PostgreSQL. Например, CVE-2026-6464 в клиенте psql позволяет обрабатывать строки данных как команды psql при преждевременном завершении операции COPY FROM STDIN. Это может привести к выполнению команд от имени локального пользователя, запустившего клиент. CVE-2026-18408 также связана с psql: суперпользователь сервера, с которого выполняется резервное копирование через pg_dump, может добиться выполнения кода на клиентской машине. Такие сценарии особенно опасны в средах, где администраторы баз данных работают с привилегированными учётными записями.
Не обошлось без уязвимостей, раскрывающих информацию. CVE-2026-14668 позволяет через определённый тип данных ctid получить доступ к произвольным областям памяти серверного процесса. Это может раскрыть фрагменты памяти, содержащие чувствительные данные других пользователей или внутренние структуры системы. Другая проблема, CVE-2026-14672, создаёт оракул существования пользователя: из-за различий в ответах при нестандартных настройках количества итераций для хеширования паролей злоумышленник может подбирать имена учётных записей, что упрощает последующие атаки.
Уязвимости, вызывающие отказ в обслуживании, связаны с целочисленными переполнениями и выходом за границы буферов. Например, CVE-2026-14662 затрагивает обработку полнотекстового поиска, а CVE-2026-14677 - 32-битные версии процедурных языков plperl и pltcl. В результате атакующий может вызвать аварийное завершение серверного процесса, сделав базу данных недоступной. Для организаций, использующих PostgreSQL в критически важных системах, это может означать простой сервисов и финансовые потери.
Отдельного внимания заслуживают уязвимости, связанные с обходом политики безопасности. CVE-2026-14666 позволяет игнорировать кэширование политик защиты строк при изменении ролей. Это может привести к тому, что пользователь получит доступ к данным, которые должны быть скрыты. CVE-2026-14681 связана с некорректным применением шифрования GSSAPI при одновременном использовании SSL. В некоторых конфигурациях шифрование может быть ослаблено, что создаёт риск перехвата данных при передаче по сети.
Всего в бюллетене перечислено 28 уязвимостей, каждой из которых присвоен идентификатор CVE. Уровень опасности варьируется от 3.8 до 8.8 балла по шкале CVSS v3.1. Многие проблемы имеют высокие оценки, поэтому разработчики рекомендуют устанавливать обновление в приоритетном порядке.
На момент публикации бюллетеня нет данных о том, чтобы какие-либо из перечисленных уязвимостей использовались в реальных атаках. Тем не менее, высокая оценка критичности и наличие готовых векторов эксплуатации повышают риск их применения в ближайшее время. Известно, что злоумышленники часто анализируют свежие исправления и создают эксплойты для закрытых уязвимостей, особенно если они ведут к удалённому выполнению кода.
PostgreSQL широко используется как в открытых проектах, так и в корпоративных средах. Она работает в веб-приложениях, финансовых системах, государственных информационных системах и облачных сервисах. Поэтому уязвимости в ней затрагивают огромное количество организаций по всему миру. Администраторам баз данных следует как можно скорее обновить используемые версии до актуальных: 14.24, 15.19, 16.15, 17.11 или 18.6. Если организация участвует в тестировании PostgreSQL 19, необходимо перейти на бета-версию 3.
Перед обновлением стоит проверить совместимость используемых расширений и приложений, а также сделать резервную копию баз данных. В некоторых случаях могут потребоваться дополнительные действия после обновления, например перезапуск службы или пересборка расширений. Инструкции по обновлению приведены в официальной документации PostgreSQL.
Регулярное обновление системы управления базами данных остаётся одной из ключевых мер защиты от подобных угроз. В этом выпуске закрыто сразу 28 уязвимостей, и среди них много таких, которые могут привести к полной компрометации сервера или утечке данных. Откладывать установку исправлений не стоит, особенно если серверы PostgreSQL доступны из интернета или обрабатывают важную информацию.
Ссылки