Skip to content
Heist/ feed
Back to feed
Medium

Security advisory

Type: advisorySources: OSVCVE: CVE-2026-50738

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.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-50738
Confirmed fixed CVEs
Not specified
Updated in this feed
1 Nov 2026, 09:42 UTC · Revision 1

Source evidence

CVE-2026-50738

core-osv · Original source

Published 28 Jul 2026, 19:17 UTC

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.

osv:CVE-2026-50738
Complete source record
{
  "id": "178eb4c5ce4b1bc508c09ac262b001202f860bba83d3a226adac78fee0a8bd40",
  "url": "https://osv.dev/vulnerability/CVE-2026-50738",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "CVE-2026-50738",
    "summary": "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.",
    "evidence": "osv:CVE-2026-50738",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-50738",
      "aliases": [
        "CVE-2026-50738"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/2ndquadrant/pglogical",
              "type": "GIT",
              "events": [
                {
                  "introduced": "a23c44acb46cfa0e47b6f2eb54d822c475c03c89"
                },
                {
                  "fixed": "9a0e182745885ad0152ea387988c95a483396a81"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:enterprisedb:pglogical:*:*:*:*:*:postgresql:*:*",
                    "range": [
                      {
                        "introduced": "2.0.0"
                      },
                      {
                        "fixed": "2.4.8"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            }
          ],
          "versions": [
            "REL2_4_7",
            "REL2_4_6",
            "REL2_4_5",
            "REL2_4_4",
            "REL2_4_3",
            "REL2_4_2",
            "REL2_4_1",
            "REL2_4_0",
            "REL2_3_4",
            "REL2_3_3",
            "REL2_3_2",
            "REL2_3_1",
            "REL2_3_0",
            "REL2_2_2",
            "REL2_2_1",
            "REL2_2_0",
            "REL2_1_1",
            "REL2_1_0",
            "REL2_0_1",
            "REL2_0_0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-50738.json"
          }
        }
      ],
      "modified": "2026-10-25T02:30:52.390818603Z",
      "provider": "osv",
      "references": [
        "https://www.enterprisedb.com/docs/security/advisories/cve202650738/"
      ],
      "provider_metadata": {}
    },
    "related_cves": [
      {
        "value": "CVE-2026-50738",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 444564,
  "published_at": "2026-07-28T19:17:36.967+00:00"
}