CVE-2026-50737
HighCVSS 7.5Exploitation Probability (EPSS)
Low risk9th percentile - higher than 9% of all known CVEs
Summary
In pglogical, when applying replicated changes for a row with missing columns, the table's default expressions are evaluated on the subscriber. The apply worker runs with PostgreSQL superuser privileges, so functions invoked by default expressions also run with those privileges. A publisher can use this path to escalate to superuser on the subscriber.
Risk Assessment
An attacker with privileges to use pglogical can escalate to full superuser on the subscriber, leading to complete database compromise.
Recommendation
Update pglogical to a version where this vulnerability is fixed, or restrict privileges to create subscriptions.
Other vulnerabilities in pglogical
See all- CVE-2026-50738Medium
A use-after-free condition exists in pglogical's worker signaling code, where a worker structure can be dereferenced after the underlying slot has been freed or recycled during normal worker lifecycle events. The condition is reachable during normal replication operation, including by a low-privileged user able to influence worker start, stop, and restart timing through permitted pglogical operations. In the typical case the condition crashes replication workers, causing an availability impact. In the worst case a use-after-free in a PostgreSQL backend can be leveraged as a remote code execution primitive at the privilege of that backend.
- CVE-2026-50736High
The pglogical queue mechanism executes message payloads on the subscriber with PostgreSQL superuser privileges. A publisher can send crafted messages to execute arbitrary SQL as superuser, escalating privileges and breaking tenant isolation.
- CVE-2026-50735Medium
The apply worker in pglogical does not sufficiently validate field lengths in incoming replication protocol messages before copying them, leading to an out-of-bounds read. An attacker controlling a publishing endpoint can send crafted messages, causing disclosure of process memory or crashing the apply worker.
Original NVD description (English source)
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.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

