CVE-2026-6477
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.
Predictions
Heuristic predictions, AS-IS, for prioritization only.
Mitigations
Vendor advisory: debian — https://security-tracker.debian.org/tracker/CVE-2026-6477
Vendor advisory: suse — https://www.suse.com/security/cve/CVE-2026-6477.html
Vendor advisory: f86ef6dc-4d3a-42ad-8f28-e6d5547a5007 — https://www.postgresql.org/support/security/CVE-2026-6477/
OS impact
| OS | Version | Status | Fixed in |
|---|---|---|---|
| sles | affected | | |
| debian | bookworm | fixed | 15.18-0+deb12u1 |
| debian | bullseye | affected | |
| debian | trixie | fixed | 17.10-0+deb13u1 |
| debian | forky | fixed | 18.4-1 |
| debian | sid | fixed | 18.4-1 |
Application impact
| Vendor | Product | Versions | Fixed |
|---|---|---|---|
| postgresql | postgresql | {"endExcluding":"14.23"} | 14.23 |
References
CWEs
CWE-242
Verify integrity in audit chain (admin only). AS-IS.