CVE-2026-120145 PostgreSQL logical replication can write to subscriber system catalogs, executing arbitrary code

High 8.8 Published Updated

A compromised PostgreSQL publisher can name a system catalog as a replication target to run code as the superuser's subscription user.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
A user has to click or open something
Harmful if only installed
No
Needs a specific call
No
Fix
Available

What is CVE-2026-120145?

CVE-2026-120145 is a high-severity missing authorization vulnerability in PostgreSQL, published on 12 Nov 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.

Official description

Missing authorization in PostgreSQL logical replication allows a compromised publisher to execute arbitrary code as the operating system user running the superuser-owned subscription, via naming a system catalog as a replication target. Only subscriptions owned by a superuser are vulnerable. Versions before PostgreSQL 18.7, 17.12, 16.16, 15.20, and 14.25 are affected.

Weakness: CWE-862

Which versions are affected by CVE-2026-120145?

Only installations with a non-default setting turned on are exposed.

How do I fix CVE-2026-120145?

Upgrade to a fixed version.

Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.

Is CVE-2026-120145 being exploited?

There is no known exploitation of CVE-2026-120145 in the wild and no public exploit code.

Sources

Also known as ALPINE-CVE-2026-120145, DEBIAN-CVE-2026-120145, ECHO-24a8-ca62-a008, GHSA-j3p3-grqw-h5vf.

Is CVE-2026-120145 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free