Разбор ошибки путаницы типов, ведущей к выполнению произвольного кода, которую PostgreSQL исправил в плановом обновлении ноября 2026 года. Описано, что происходит, кто затронут и как реагировать, с точки зрения защиты и без шагов атаки.
- CVE
- CVE-2026-6460 (путаница типов в PostgreSQL после ALTER ... SET DATA TYPE выполняет произвольный код)
- Серьёзность
- CVSS v3.1 8.8 (High; вектор AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H; присвоено PostgreSQL)
- Тип
- Путаница типов (CWE-843). Выполняет произвольный код от имени пользователя ОС, под которым работает база данных
- Условие
- Нужна аутентификация. Создатель объектов (учётная запись с низкими привилегиями)
- Затронуто
- PostgreSQL 14–18 (до исправленных версий ниже)
- Исправление
- 18.7 / 17.12 / 16.16 / 15.20 / 14.25 (опубликовано 12 ноября 2026 года)
- То же обновление
- В общей сложности исправлено 52 уязвимости. 14.25 — последнее обновление PostgreSQL 14
- Эксплуатация
- Не сообщается. В выпуске CISA KEV от 10 ноября нет
- Обходное решение
- Не указано
PostgreSQL 14 больше не получит исправлений
В объявлении PostgreSQL сказано, что 14.25 — последний выпуск PostgreSQL 14, который больше не будет получать исправлений безопасности и ошибок. Если вы используете 14, установите это обновление и запланируйте миграцию на поддерживаемую версию.
Что это за уязвимость
Проект описывает путаницу типов (CWE-843), которая позволяет создателю объектов выполнить произвольный код от имени пользователя операционной системы, под которым работает база данных, главным образом через ALTER ... SET DATA TYPE. Он также сообщает, что существуют и другие пути через команды определения данных. Причина — недостаточное отслеживание типизированных значений: значения не указывали свой тип сами, поэтому устаревшие значения могли появляться в записях словаря данных, переменных PL/pgSQL и других местах.
- Условие: учётная запись может войти в базу данных и создавать объекты. В терминах CVSS это низкие привилегии (PR:L) и отсутствие действий пользователя (UI:N).
- Этот сайт не описывает шаги эксплуатации и опасные операции.
- Исправление находится в ядре PostgreSQL. На официальной странице не сказано, нужны ли расширения или нестандартные настройки.
- Оценка CISA (SSVC) в записи CVE.org: exploitation: none, automatable: no, technical impact: total.
Затронутый объём
| Позиция | Подробности |
|---|---|
| Продукт | PostgreSQL (ядро) |
| Затронутые версии | До 18.7, 17.12, 16.16, 15.20 и 14.25 |
| Исправление (18) | 18.7 |
| Исправление (17) | 17.12 |
| Исправление (16) | 16.16 |
| Исправление (15) | 15.20 |
| Исправление (14) | 14.25 (последнее обновление для 14) |
| Обходные решения / меры смягчения | Не указаны |
- Дамп с повторной загрузкой и pg_upgrade не нужны. В объявлении PostgreSQL сказано, что достаточно остановить сервер и обновить бинарные файлы.
- Версии 13 и ранее уже сняты с поддержки. На официальной странице для этого CVE указаны 14–18.
Другие уязвимости в том же обновлении
Выпуск от 12 ноября 2026 года (18.7, 17.12, 16.16, 15.20, 14.25) исправляет 52 уязвимости безопасности и более 140 ошибок. Эта статья сосредоточена на CVE-2026-6460.
- Список из 52 уязвимостей, серьёзность каждого CVE и затронутые версии см. на странице сведений о безопасности PostgreSQL.
- В списке есть проблемы разных видов: выполнение произвольного кода, раскрытие памяти сервера, SQL-инъекция и обход проверки привилегий. Есть и исправления в клиентских инструментах (pg_dump, pg_restore, reindexdb и других).
- Некоторые исправления требуют дополнительных шагов после обновления (перестроение индексов GIN при подозрении на повреждение и индексов pg_trgm, новая полная резервная копия, если вы используете инкрементные копии, проверка ограничений в секционированных таблицах). Следуйте разделу «Updating» в объявлении о выпуске.
Как проверить, затронуты ли вы
Проверьте версию PostgreSQL
Выполните SELECT version();, чтобы увидеть версию сервера. Затронуты 18 ниже 18.7, 17 ниже 17.12, 16 ниже 16.16, 15 ниже 15.20 и 14 ниже 14.25.
Найдите все места, где он работает
Составьте список серверов, которые вы эксплуатируете, контейнеров, PostgreSQL, встроенного в приложения, и сред разработки и тестирования. Как вести список, см. в чек-листе инвентаризации активов.
Проверьте, какие учётные записи могут создавать объекты
Найдите роли, которые могут входить в базу данных и создавать или изменять таблицы и другие объекты. Проверьте, нет ли у учётных записей, которыми пользуются ваши приложения, больше привилегий, чем нужно.
Для управляемых сервисов прочитайте объявление провайдера
Если вы используете RDS, Cloud SQL или подобное, версию вашего экземпляра и статус провайдера смотрите в объявлении провайдера.
Что сделать сегодня
Обновите минорную версию до исправленного выпуска (приоритет)
Перейдите на исправленный выпуск вашей линии (18.7, 17.12, 16.16, 15.20 или 14.25) или новее. Перед обновлением убедитесь, что резервные копии есть и их можно восстановить (основы резервного копирования). Если есть реплики, сначала определите порядок и последовательность действий.
Проверьте шаги после обновления
В разделе «Updating» объявления о выпуске проверьте, какие из них относятся к вам: перестроение индексов GIN при подозрении на повреждение, перестроение индексов pg_trgm GiST и новая полная резервная копия, если вы используете инкрементные копии.
До обновления сузьте привилегии
На страницах PostgreSQL обходного решения нет. Как собственное дополнение этого сайта: до обновления ограничьте учётные записи, которые могут создавать объекты, минимумом и не давайте учётным записям, которыми пользуются ваши приложения, права создания, который им не нужен. Это не мера из бюллетеня, и она не заменяет обновления.
Подтвердите обновления в управляемых сервисах
Проверьте в объявлении провайдера поддерживаемые версии и график обновлений. Проверьте также, включены ли автоматические минорные обновления и когда окно обслуживания.
Если вы используете PostgreSQL 14, запланируйте миграцию
После обновления до 14.25 запланируйте переход на поддерживаемую версию. Назначьте срок и ответственного.
Состояние эксплуатации
- На страницах PostgreSQL эксплуатация не упоминается.
- Оценка CISA (SSVC) в записи CVE.org: exploitation: none, automatable: no, technical impact: total (от 12 ноября 2026 года).
- В выпуске каталога CISA KEV от 10 ноября её нет.
- Публичных сведений о масштабе, методах или участниках атак подтвердить не удалось.
- О проблеме сообщили несколько исследователей и организаций, на официальной странице есть благодарности.
Источники
- PostgreSQL — CVE-2026-6460 (описание, затронутые и исправленные версии, CVSS 8.8, 12 ноября 2026 года)
- PostgreSQL — PostgreSQL 18.7, 17.12, 16.16, 15.20, 14.25, and 19 RC 2 Released! (52 исправления, конец поддержки PostgreSQL 14, шаги после обновления)
- PostgreSQL — Security Information (список из 52)
- CVE.org — CVE-2026-6460 (опубликовано 12 ноября 2026 года; CWE-843, оценка CISA SSVC)
- CISA KEV — Known Exploited Vulnerabilities Catalog (в выпуске каталога от 10 ноября не значится)
Ограничение привилегий на создание объектов приведено здесь этим сайтом как общая защита; это не обходное решение, названное PostgreSQL. Последняя проверка: 13 ноября 2026 года.
Читайте далее
- Практика: Плейбук устранения уязвимостей / Чек-лист инвентаризации активов
- Подготовка: Основы резервного копирования
- Решение: Приоритизация по CVSS, EPSS и KEV
- Термины: Что такое SQL-инъекция / Что такое CVSS?