CVE-2026-120154

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

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.

Version Information

Affected Version Fixed In Fix Published
18 18.7 2026-11-12
17 17.12 2026-11-12
16 16.16 2026-11-12
15 15.20 2026-11-12
14 14.25 2026-11-12

For more information about PostgreSQL versioning, please visit the versioning page.

CVSS 3.0

Overall Score 4.3
Component core server
Vector AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N

Reporting Security Vulnerabilities

If you wish to report a new security vulnerability in PostgreSQL, please send an email to security@postgresql.org.

For reporting non-security bugs, please see the Report a Bug page.