CVE-2026-6477
Last modified
CVE-2026-6477 is a high-severity vulnerability rated 8.8/10 on the CVSS scale. 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. EPSS estimates a 0.28% chance of exploitation in the next 30 days.
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.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Weakness Enumeration
Affected Software
| Vendor | Product | Versions |
|---|---|---|
| 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 |
References
- https://www.postgresql.org/support/security/CVE-2026-6477/Patch, Vendor Advisory
Timeline
- Published
- Last Modified
- Status
- Analyzed
Frequently Asked Questions
What is CVE-2026-6477?
How severe is CVE-2026-6477?
How do I fix CVE-2026-6477?
Are you affected by CVE-2026-6477?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
