Skip to content
Fencer Intel
medium 4.3

CVE-2026-120154 json

PostgreSQL INSERT ... ON CONFLICT can read rows despite row security policies

published 2d ago modified 2d ago also EUVD-2026-124428

cvss
4.3
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.3%
EPSS 0.3% chance of exploitation in 30 days, percentile 22%
public exploits
0
none known

Summary

Improper protection in PostgreSQL INSERT ... ON CONFLICT allows an attacker having INSERT, UPDATE, and applicable SELECT privileges on the table to read every row despite row security policies, via iterated INSERT ... ON CONFLICT DO UPDATE. Unlike CVE-2026-16237, this does not facilitate improper writes. Versions before PostgreSQL 18.7, 17.12, 16.16, 15.20, and 14.25 are affected.

Patch / fix

  • n/a PostgreSQL 14.25, 15.20, 16.16, 17.12, 18.7
  • postgresql-15 Debian 12 15.20-0+deb12u1
  • postgresql-17 Debian 13 17.12-0+deb13u1

debian advisories DEBIAN-CVE-2026-120154

  • postgresql14 openSUSE Tumbleweed 14.25-1.1
  • postgresql15 openSUSE Tumbleweed 15.20-1.1
  • postgresql16 openSUSE Tumbleweed 16.16-1.1
  • postgresql17 openSUSE Tumbleweed 17.12-1.1

opensuse advisories openSUSE-SU-2026:12550-1openSUSE-SU-2026:12551-1openSUSE-SU-2026:12552-1openSUSE-SU-2026:12553-1

  • postgresql15 Alpine 3.22, Alpine 3.21 15.20-r0
  • postgresql16 Alpine 3.24, Alpine 3.23, Alpine 3.22 +1 more 16.16-r0
  • postgresql17 Alpine 3.24, Alpine 3.23, Alpine 3.22 +1 more 17.12-r0
  • postgresql18 Alpine 3.24, Alpine 3.23 18.7-r0

alpine advisories ALPINE-CVE-2026-120154

Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

Is CVE-2026-120154 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.

Check with Fencer

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2026-120154 updated cvss 4.3

postgresql: PostgreSQL: Row-level security bypass via INSERT ON CONFLICT DO UPDATE

  • Red Hat Hardened Images postgresql18 18.6-1.hum1, postgresql17 17.11-1.2.hum1
    affected: workaround, no fix available
  • Red Hat Hardened Images libpq 18.7-0.1.hum1
    fixed: vendor fix RHSA-2026:99821

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

CISA SSVC

Exploitation
none
Automatable
no
Technical impact
partial
Assessed
2d ago

Exploit prediction

0.30% chance of exploitation in the next 30 days, higher than 22% of all scored CVEs (FIRST EPSS, 2026-11-14).

CVSS scores

assigned by version score vector
CNA 3.1 4.3 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N

Affected products

  • n/a PostgreSQL

Classification

Weakness
  • CWE-424 Improper Protection of Alternate Path

References

Sources

Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.