CVE-2026-50737
KrytyczneCVSS 9.0Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 9 - wyżej niż 9% wszystkich znanych CVE
Streszczenie
W pglogical, podczas stosowania replikowanych zmian dla wiersza z brakującymi kolumnami, oceniane są domyślne wyrażenia tabeli na subskrybencie. Proces apply działa z uprawnieniami superużytkownika PostgreSQL, więc funkcje wywołane przez domyślne wyrażenia również działają z tymi uprawnieniami. Wydawca może wykorzystać tę ścieżkę do eskalacji uprawnień do superużytkownika na subskrybencie.
Ocena ryzyka
Atakujący z uprawnieniami do używania pglogical może eskalować do pełnego superużytkownika na subskrybencie, co prowadzi do całkowitej kompromitacji bazy danych.
Rekomendacja
Zaktualizuj pglogical do wersji, w której ta podatność jest naprawiona, lub ogranicz uprawnienia do tworzenia subskrypcji.
Oryginalny opis (angielski, źródło NVD)
When applying replicated changes for a row that is missing one or more columns, pglogical evaluates the affected table's default expressions on the subscriber. Because the apply worker runs at a privilege level equivalent to a PostgreSQL superuser in default installations, any function invoked by such a default expression also runs at that privilege. A party acting as the publisher can use this path to cause functions to be executed on the subscriber as superuser, escalating from a role permitted to use pglogical to full superuser. This is a second, independent path to the same superuser escalation tracked under CVE-2026-50736 (the pglogical queue issue). To exploit the issue an attacker must be able to direct a subscription at an endpoint they control. In default installations this requires privileges normally reserved for a superuser, so the issue is most relevant to managed deployments where the ability to create subscriptions has been delegated to non-superuser roles.

