Postgres Professional выпустила внеочередное обновление безопасности для Postgres Pro Enterprise. Релиз закрывает 28 уязвимостей PostgreSQL. Среди них — ошибки, через которые злоумышленник может удалённо выполнить код на сервере СУБД. О выпуске 31 августа 2026 года сообщил CNews со ссылкой на разработчика.
Если база 1С работает на Postgres Pro Enterprise, для установки придётся остановить PostgreSQL. Выгружать базы и запускать pg_upgrade не нужно. Но сначала выясните редакцию и ветку СУБД. В опубликованных материалах нет номеров исправленных сборок, поэтому пакет нужно сверить с бюллетенем Postgres Professional.
Почему обновление выпустили вне графика
Postgres Professional выпускает исправления безопасности отдельно от функциональных обновлений. Поэтому администратору не приходится ждать следующей версии с новыми возможностями. Уязвимые бинарные файлы можно заменить раньше.
Postgres Professional разделила исправленные ошибки на три группы по характеру воздействия. Самая опасная получила оценку CVSS 8.8. Ошибки из этой группы могут привести к выполнению чужого кода на сервере базы данных.
Проблема не сводится к серверным функциям. Исправления затронули pg_dump, psql, логическое декодирование и расширения PostgreSQL. Некоторые ошибки открывали путь к SQL-инъекции или запуску команд операционной системы через служебные утилиты.
| Тип воздействия | Пример CVE | Затронутый компонент | Возможное последствие |
|---|---|---|---|
| Переполнение буфера | CVE-2026-14664 | Обработка регулярных выражений | Выполнение произвольного кода |
| Переполнение буфера | CVE-2026-14669 | Функция to_char() | Выполнение произвольного кода |
| Переполнение буфера | CVE-2026-14670 | PL/Perl | Выполнение произвольного кода |
| Переполнение буфера | CVE-2026-14676 | pg_stat_statements | Выполнение произвольного кода |
| Переполнение буфера | CVE-2026-19385 | pg_dump | Выполнение произвольного кода |
| Ошибка типов | CVE-2026-14671 | Кеш плана contrib/refint | Обращение с данными как с объектом другого типа |
| Ошибка типов | CVE-2026-14680 | Аргументы типа internal | Нарушение проверки типов |
| Ошибка типов | CVE-2026-16238 | pg_restore_attribute_stats() | Некорректная обработка восстанавливаемой статистики |
| Ошибка типов | CVE-2026-16239 | Связка CLOSE и DECLARE | Некорректная работа с курсорами |
| SQL-инъекция | CVE-2026-15741 | EXTRACT() при депарсинге | Обход разграничения доступа |
| Запуск команд оболочки | CVE-2026-18408 | psql \unrestrict при восстановлении дампа | Выполнение команд ОС |
| Загрузка библиотеки | CVE-2026-6471 | Логическое декодирование | Подключение произвольного модуля |
| Обработка данных как команд | CVE-2026-6464 | COPY FROM STDIN и psql | Выполнение строк дампа как команд psql |
Связи между CVE, компонентами и последствиями перечислил CNews со ссылкой на Postgres Professional. Вывод из таблицы не самый приятный: закрытого сетевого порта недостаточно. Уязвимость может сработать при восстановлении дампа, загрузке расширения или работе плагина логического декодирования.
Но список CVE не подсказывает, какой пакет нужен вашему серверу. Сначала подтвердите продукт и его ветку.
Проверьте редакцию СУБД до согласования остановки
Новость касается Postgres Pro Enterprise. Не переносите эти рекомендации на обычный PostgreSQL, Postgres Pro Standard или другую редакцию. Переданные материалы не подтверждают, что для них подходят те же пакеты.
Проверьте дистрибутив привычным для вашей инфраструктуры способом: через менеджер пакетов, список установленного ПО или документы развёртывания. Результата SELECT version(); может не хватить. Поставщик сборки мог изменить строку версии, а для выбора пакета нужны точные сведения.
Запишите редакцию, полную версию, ветку пакетов и операционную систему. Потом сопоставьте эти четыре значения с бюллетенем безопасности или инструкцией Postgres Professional. Номер базовой версии PostgreSQL из новости для выбора пакета не годится.
Среди переданных материалов нет официального бюллетеня Postgres Professional и номеров исправленных сборок Postgres Pro Enterprise. Поэтому команды установки здесь тоже нет. Без точного имени пакета легко обновить чужую ветку или подключить неподходящий репозиторий.
| Что обнаружено | Решение | Что пока не требуется |
|---|---|---|
| Установлена Postgres Pro Enterprise, ветка и ОС известны | Найти для этой ветки исправленный пакет в документации Postgres Professional | Выгружать и загружать базы |
| Установлена Postgres Pro Enterprise, но точная ветка неизвестна | Снять сведения о пакетах и сверить их с документацией разработчика | Назначать окно до выбора пакета |
| Установлена другая редакция Postgres Pro | Искать отдельный бюллетень для этой редакции | Ставить пакет Enterprise |
| Установлен обычный PostgreSQL | Проверять его официальный выпуск безопасности отдельно | Переносить инструкцию Postgres Pro Enterprise |
| Редакцию установить не удалось | Поднять документы развёртывания и сведения менеджера пакетов | Подбирать пакет по пересказу новости |
| Исправленный пакет найден, окно согласовано | Сделать проверяемую резервную копию, остановить PostgreSQL и обновить бинарные файлы | Запускать pg_upgrade |
Порядок такой: определите продукт, найдите пакет и лишь потом назначайте остановку. Если начать с окна, сервер встанет, а готового обновления у вас ещё не будет.
Подготовьте возврат до замены бинарных файлов
Внеочередное обновление заменяет бинарные файлы, сообщает Postgres Professional в публикации CNews. На время установки PostgreSQL нужно остановить. Выгружать и заново загружать базы или запускать pg_upgrade для этого выпуска не требуется.
Миграции данных нет, но резервная копия всё равно нужна. До остановки убедитесь, что последняя копия завершилась без ошибки. Затем проверьте, что она разворачивается отдельно от рабочей базы. Файл дампа на диске ещё не означает, что базу удастся вернуть.
Если резервирование давно не проверяли, сначала выберите схему в руководстве по резервному копированию PostgreSQL для 1С. Для быстрого возврата после неудачной установки одной копии базы может оказаться мало. Сценарий должен вернуть и нужные настройки кластера.
Перед обновлением сохраните версию пакетов, параметры запуска службы, пути к данным и конфигурационным файлам. Эти сведения пригодятся после старта. По ним проще отличить ошибку пакета от изменившейся настройки.
В окно входят четыре операции: штатная остановка PostgreSQL, установка пакета, запуск службы и проверка баз 1С. Заранее назвать длительность нельзя. В материалах нет размера пакета, способа установки и сведений о вашей инфраструктуре.
После запуска проверьте базу и журналы
Запущенная служба ещё не означает, что работа закончена. Подключитесь к каждой базе через клиент 1С. Выполните знакомую операцию, которая читает и записывает данные. После этого откройте журнал PostgreSQL за время остановки и первого запуска.
Проверьте WAL, фоновые процессы и autovacuum. Если сервер передаёт метрики в централизованную систему, сравните состояние до и после установки. Порядок проверки от памяти и iowait до сеансов, блокировок и WAL есть в материале про мониторинг 1С на Linux и PostgreSQL.
Postgres Professional перечислила и специальные действия после обновления. Не запускайте их все подряд. Сначала найдите соответствующий объект или функцию в своей конфигурации.
| Условие | Что проверить | Действие после обновления |
|---|---|---|
| В базах есть GIN-индексы | Состояние индексов и актуальность статистики | При необходимости выполнить ANALYZE |
Используется btree_gist для float4 или float8 | Индексы расширения на этих типах | Переиндексировать затронутые индексы |
Используется btree_gist для bit или bit varying | Индексы расширения на битовых типах | Переиндексировать затронутые индексы |
Есть btree-индекс по ltree, а значение содержит больше 14 653 меток | Длину значений и список индексов по ltree | Переиндексировать подходящие индексы |
| Работает логическое декодирование | Используемые output-плагины и параметр output_plugin_libraries | Добавить доверенные плагины в разрешённый список |
| Перечисленных объектов нет | Доступность баз, журнал запуска, WAL и фоновые процессы | Не запускать лишнюю переиндексацию |
Рекомендации по GIN, btree_gist, ltree и логическому декодированию CNews приводит со ссылкой на Postgres Professional. Последняя строка задаёт границу работ. Нет нужного типа индекса — нет и причины его переиндексировать.
Переиндексация расходует место на диске и может повлиять на доступность объекта. Если индекс велик или база не терпит долгих блокировок, вынесите эту работу в отдельное окно. Точный способ зависит от версии, схемы и допустимых блокировок. В материалах о выпуске этих сведений нет.
Что проверить до возврата пользователей
Убедитесь, что PostgreSQL запущен под прежней учётной записью и читает нужный каталог данных. Ошибка в пути может выглядеть как штатный запуск. Только запустится новый пустой кластер, а рабочие базы останутся в другом каталоге.
Теперь подключитесь к базе через 1С. SQL-клиент проверяет доступность PostgreSQL, но не всю цепочку. В ней ещё есть сервер 1С, драйвер СУБД и конкретная информационная база.
После подключения просмотрите журнал PostgreSQL. Ищите ошибки загрузки библиотек и расширений, доступа к файлам, чтения конфигурации. При логическом декодировании отдельно проверьте запуск слотов и загрузку разрешённых output-плагинов.
Пользователей можно возвращать после прикладной проверки. Выберите короткую операцию, которая читает и записывает данные в тестовом контуре рабочей базы. Согласуйте её с ответственным за конфигурацию 1С: одной команды для всех решений нет.
Порядок обновления Postgres Pro Enterprise
Если сервер 1С работает с Postgres Pro Enterprise, порядок действий такой:
- Подтвердите редакцию, операционную систему и точную ветку установленных пакетов.
- Найдите исправленную сборку именно для этой ветки в бюллетене Postgres Professional.
- Проверьте резервную копию и возможность развернуть её отдельно от рабочей базы.
- Согласуйте остановку, остановите PostgreSQL и установите выбранный пакет.
- После запуска проверьте базы 1С, журнал, GIN, специальные индексы и
output_plugin_librariesпо условиям из таблицы.
Не подбирайте пакет по пересказу новости. В переданных материалах нет официального бюллетеня Postgres Professional, команд установки и оценки простоя. Команду возьмите из документации для своей ветки, а окно рассчитайте по состоянию конкретного сервера.