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.
{
"sources": [
{
"html_url": "https://nvd.nist.gov/vuln/detail/CVE-2026-6477",
"url": "https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2026-6477",
"modified": "2026-07-17T13:19:01.047Z",
"published": "2026-05-14T14:16:25.347Z",
"imported": "2026-07-17T22:13:52.369Z",
"id": "CVE-2026-6477",
"database_specific": {
"status": "Modified"
}
}
],
"license": "CC-BY-4.0"
}