CVEvulnerability

CVE-2026-6477

8.8 HIGH Published 2026-05-14 Modified 2026-08-25 Official page ↗
Status
Modified
Published
2026-05-14
Last modified
2026-08-25
Assigner
f86ef6dc-4d3a-42ad-8f28-e6d5547a5007
CVSS 3.1 (f86ef6dc-4d3a-42ad-8f28-e6d5547a5007)
8.8 HIGH — CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
CVSS 3.1 (0b0ca135-0b70-47e7-9f44-1890c2a1c46c)
8.4 HIGH — CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:H
Weaknesses
CWE-120, CWE-242

Description

Use of inherently dangerous function PQfn(..., result_is_int=0, ...) in PostgreSQL libpq lo_export(), lo_read(), lo_lseek64(), and lo_tell64() functions allows the server superuser to overwrite a client stack buffer with an arbitrarily-large response. Like gets(), PQfn(..., result_is_int=0, ...) stores arbitrary-length, server-determined data into a buffer of unspecified size. Because both the \lo_export command in psql and pg_dump call lo_read(), the server superuser can overwrite pg_dump or psql stack memory. Versions before PostgreSQL 18.4, 17.10, 16.14, 15.18, and 14.23 are affected.

Affected configurations

• postgresql postgresql (< 14.23) • postgresql postgresql (>= 15.0 < 15.18) • postgresql postgresql (>= 16.0 < 16.14) • postgresql postgresql (>= 17.0 < 17.10) • postgresql postgresql (>= 18.0 < 18.4)

Related

Weakness · CWE (2)

  • CWE-120 Buffer Copy without Checking Size of Input weakness
  • CWE-242 Use of Inherently Dangerous Function weakness

References