Десятилетняя уязвимость в PostgreSQL превращает учетную запись резервного копирования в «бэкдор»

Postgresql уязвимость безопасность Cve репликация база данных csoonline.com

Уязвимость PostGREShell в PostgreSQL позволяла учетной записи резервного копирования получать полный контроль над базой данных и сервером. Установите обновления и проверьте учетные записи с атрибутом REPLICATION.

Критическая уязвимость в PostgreSQL оставалась незамеченной более десяти лет, потенциально превращая обычную учетную запись для резервного копирования в путь к полному компрометации базы данных и сервера.

Проблема, названная Cyera Research PostGREShell, существует в функционале репликации базы данных и может позволить злоумышленнику с учетной записью низкого уровня привилегий, обладающей атрибутом REPLICATION, загружать и выполнять произвольный код.

«Уязвимость позволяет учетной записи «резервного копирования» с низкими привилегиями загружать и выполнять произвольный код на сервере базы данных, достигая удаленного выполнения кода в системах Windows, Linux и macOS», — заявил исследователь Cyera Владимир Токарев в своем блоге. «Этот первоначальный доступ расширяется до полного суперпользователя PostgreSQL с постоянным бэкдором, превращая обычную учетную запись репликации в полный компрометации базы данных и сервера».

Уязвимость, отслеживаемая как CVE-2026-6471, затрагивает версии PostgreSQL начиная с 9.4, выпущенной в 2014 году, и была исправлена во всех поддерживаемых версиях PostgreSQL, включая версии 18.6, 17.11, 16.15, 15.19 и 14.24, выпущенные 13 августа.

Хотя уязвимость затрагивала установки PostgreSQL в Windows, Linux и macOS, условия, необходимые для выполнения кода, различались в зависимости от платформы, отметил Токарев.

Существующих защит было недостаточно

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

PostgreSQL уже имеет механизмы защиты, предназначенные для предотвращения загрузки не-суперпользователями произвольных библиотек из небезопасных расположений файловой системы. Механизм «check_restricted_library_name()» ограничивает места, откуда такие пользователи могут загружать плагины, предотвращая обход каталогов и использование абсолютных путей.

Однако, по данным Cyera, путь выполнения кода репликации никогда не вызывал эту проверку безопасности.

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

При загрузке вредоносной библиотеки ее инициализационный код выполнялся бы внутри процесса сервера PostgreSQL.

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

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

Учетные записи резервного копирования превращаются в суперпользователей

Проблема не ограничивается выполнением кода.

Поскольку выходной плагин выполняется внутри процесса сервера PostgreSQL, Cyera утверждает, что вредоносный код может работать вне обычной модели разрешений SQL. Вредоносный плагин может манипулировать внутренними компонентами PostgreSQL, чтобы повысить привилегии злоумышленника до уровня суперпользователя и изменить внутренние данные аутентификации.

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

Cyera продемонстрировала несколько механизмов сохранения доступа, включая модификации конфигурации аутентификации PostgreSQL и использование предварительно загруженных библиотек, которые могли сохраняться после перезапуска базы данных. Токарев отметил, что такой доступ также может быть использован для получения более глубокого доступа к среде организации.

Компания сообщила о проблеме команде безопасности PostgreSQL в феврале, которая рассмотрела результаты, присвоила уязвимости идентификатор CVE и выпустила исправления в августе.

Хотя уязвимость не получила критической оценки CVSS (7,2), Cyera настоятельно рекомендовала клиентам немедленно установить исправления, отметив, что плагины PostgreSQL являются популярной целью для злоумышленников. Их поиск угроз в VirusTotal обнаружил 114 вредоносных плагинов PostgreSQL в дикой природе, включая трояны, майнеры криптовалют и обратные оболочки, хотя в раскрытии информации не было указано, что какие-либо из этих плагинов связаны с эксплуатацией CVE-2026-6471.

Помимо установки исправлений, пользователям было рекомендовано проверять учетные записи с атрибутом REPLICATION, ограничивать доступ к репликации и блокировать ненужные исходящие SMB и NFS-соединения с серверов баз данных.

Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.

В тренде:


Похожие новости: