{"id":"CVE-2025-8715","state":"PUBLISHED","title":"PostgreSQL pg_dump newline in object name executes arbitrary code in psql client and in restore target server","description":"Improper neutralization of newlines in pg_dump in PostgreSQL allows a user of the origin server to inject arbitrary code for restore-time execution as the client operating system account running psql to restore the dump, via psql meta-commands inside a purpose-crafted object name.  The same attacks can achieve SQL injection as a superuser of the restore target server.  pg_dumpall, pg_restore, and pg_upgrade are also affected.  Versions before PostgreSQL 17.6, 16.10, 15.14, 14.19, and 13.22 are affected.  Versions before 11.20 are unaffected.  CVE-2012-0868 had fixed this class of problem, but version 11.20 reintroduced it.","publishedAt":"2025-08-14T13:00:07.753Z","updatedAt":"2026-02-26T17:48:36.521Z","severity":{"score":8.8,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","source":"PostgreSQL"},"assigner":"PostgreSQL","products":["n/a PostgreSQL"],"affected":[{"vendor":"n/a","product":"PostgreSQL","defaultStatus":"unaffected","versions":[{"version":"17","status":"affected","lessThan":"17.6","versionType":"rpm"},{"version":"16","status":"affected","lessThan":"16.10","versionType":"rpm"},{"version":"15","status":"affected","lessThan":"15.14","versionType":"rpm"},{"version":"14","status":"affected","lessThan":"14.19","versionType":"rpm"},{"version":"11.20","status":"affected","lessThan":"13.22","versionType":"rpm"}]}],"references":["https://www.postgresql.org/support/security/CVE-2025-8715/"],"weaknesses":["CWE-93"],"ingestedAt":"2026-10-29T20:10:04.440Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2025/8xxx/CVE-2025-8715.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2025-8715","state":"PUBLISHED","datePublished":"2025-08-14T13:00:07.753Z","dateUpdated":"2026-02-26T17:48:36.521Z","assignerShortName":"PostgreSQL","assignerOrgId":"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007","dateReserved":"2025-08-07T16:39:47.692Z"},"containers":{"cna":{"title":"PostgreSQL pg_dump newline in object name executes arbitrary code in psql client and in restore target server","descriptions":[{"lang":"en","value":"Improper neutralization of newlines in pg_dump in PostgreSQL allows a user of the origin server to inject arbitrary code for restore-time execution as the client operating system account running psql to restore the dump, via psql meta-commands inside a purpose-crafted object name.  The same attacks can achieve SQL injection as a superuser of the restore target server.  pg_dumpall, pg_restore, and pg_upgrade are also affected.  Versions before PostgreSQL 17.6, 16.10, 15.14, 14.19, and 13.22 are affected.  Versions before 11.20 are unaffected.  CVE-2012-0868 had fixed this class of problem, but version 11.20 reintroduced it."}],"affected":[{"vendor":"n/a","product":"PostgreSQL","defaultStatus":"unaffected","versions":[{"version":"17","status":"affected","lessThan":"17.6","versionType":"rpm"},{"version":"16","status":"affected","lessThan":"16.10","versionType":"rpm"},{"version":"15","status":"affected","lessThan":"15.14","versionType":"rpm"},{"version":"14","status":"affected","lessThan":"14.19","versionType":"rpm"},{"version":"11.20","status":"affected","lessThan":"13.22","versionType":"rpm"}]}],"references":[{"url":"https://www.postgresql.org/support/security/CVE-2025-8715/"}],"metrics":[{"format":"CVSS","cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","baseScore":8.8,"baseSeverity":"HIGH"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-93","lang":"en","type":"CWE","description":"Improper Neutralization of CRLF Sequences ('CRLF Injection')"}]}],"providerMetadata":{"shortName":"PostgreSQL","orgId":"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007","dateUpdated":"2025-08-14T13:00:07.753Z"},"configurations":[{"lang":"en","value":"attacker can direct pg_dump to a chosen origin server or has permission to create non-temporary objects in at least one schema that pg_dump will export"}],"workarounds":[{"lang":"en","value":"To block attacks against the psql client, use \"pg_restore --dbname\" instead of restore methods that involve \"psql\".  To block SQL injection against the restore target server, revoke the CREATE permission from non-superusers at the origin server."}],"credits":[{"lang":"en","value":"The PostgreSQL project thanks Noah Misch for reporting this problem."}]},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2025-8715","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2025-08-15T03:55:57.753539Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-02-26T17:48:36.521Z"}}]}}}