CVEvulnerability

CVE-2026-44477

9.4 CRITICAL Published 2026-05-28 Modified 2026-07-15 Official page ↗
Status
Modified
Published
2026-05-28
Last modified
2026-07-15
Assigner
[email protected]
CVSS 4.0 ([email protected])
9.4 CRITICAL — CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1 ([email protected])
9.9 CRITICAL — CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
CVSS 3.1 (0b0ca135-0b70-47e7-9f44-1890c2a1c46c)
8.8 HIGH — CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-250, CWE-271, CWE-426

Description

CloudNativePG is a platform designed to manage PostgreSQL databases within Kubernetes environments. Prior to 1.29.1 and 1.28.3, the CloudNativePG metrics exporter opens its PostgreSQL connection as the postgres superuser via the pod-local Unix socket, then demotes the session with SET ROLE pg_monitor. SET ROLE changes only current_user; session_user remains postgres. Any SQL expression evaluated inside the scrape session can invoke RESET ROLE to recover real superuser privileges, then use COPY ... TO PROGRAM to spawn an OS-level subprocess as the postgres user inside the primary pod. The READ ONLY transaction flag does not block this; it gates writes to database state, not external processes. This vulnerability is fixed in 1.29.1 and 1.28.3.

Affected configurations

• linuxfoundation cloudnativepg (< 1.28.3) • linuxfoundation cloudnativepg (>= 1.29.0 < 1.29.1)

Related

Weakness · CWE (3)

  • CWE-250 Execution with Unnecessary Privileges weakness
  • CWE-271 Privilege Dropping / Lowering Errors weakness
  • CWE-426 Untrusted Search Path weakness

References