Skip to main content
VulnerabilityPublished

CVE-2026-120151: PostgreSQL · Type Confusion

Affects PostgreSQLSource CVE Database V5

0
Compare

Not known to be exploited · CVSS 8.8 High · fixed in 18.7 : patch PostgreSQL soon.

Data as of 12 Nov 2026, 14:35 UTC

CVSS 3.1 base score
8.8High
How severe the flaw is on the 0–10 CVSS scale.

Thin evidence

One scorer or none
CVSS scores by source
CNA (PostgreSQL)CVSS 3.18.8
Patch
Available – fixed in 18.7, 17.12, 16.16 +2
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 12 Nov 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 12 Nov 2026.

What to do

Upgrade to a fixed release listed under Affected software.

Affected software

ProductAffectedFixed in
PostgreSQLAffected
  • >=18 <18.7
Fixed in
  • 18.7
PostgreSQLAffected
  • >=17 <17.12
Fixed in
  • 17.12
PostgreSQLAffected
  • >=16 <16.16
Fixed in
  • 16.16
PostgreSQLAffected
  • >=15 <15.20
Fixed in
  • 15.20
PostgreSQLAffected
  • <14.25
Fixed in
  • 14.25

AI-suggested

Fixed versions are available: PostgreSQL 14.25, 15.20, 16.16, 17.12, and 18.7. Users should upgrade to these or later versions to remediate the vulnerability. No indication of alternative mitigations or temporary workarounds is provided.

Description

CVE-2026-120151 is a high-severity type confusion vulnerability in PostgreSQL's plpgsql record-field assignment. It allows an object creator to execute arbitrary code as the operating system user running the database by exploiting a reentrant domain CHECK that modifies a RECORD variable's row type during a value cast. This affects PostgreSQL versions prior to 18.7, 17.12, 16.16, 15.20, and 14.25.

References

Community reviews

Loading reviews…