Skip to content
8.8 High

CVE-2026-18408 Untrusted data inclusion in pg_dump in PostgreSQL allows a malicious superuser of the origin server to inject…

Description

Untrusted data inclusion in pg_dump in PostgreSQL allows a malicious superuser 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 \restrict meta-command input expansion. The fix for CVE-2025-8714 introduced \restrict and \unrestrict to block this attack, but \unrestrict itself was sufficient for an attack. pg_dumpall is also affected. pg_restore is affected when used to generate a plain-format dump. Non-core use of \restrict would be affected, but we've not identified non-core use. Versions before PostgreSQL 18.6, 17.11, 16.15, 15.19, and 14.24 are affected.

Affected products and versions

Product Affected versions Fixed in
postgresql 18 18 → < 18.6 18.6
postgresql 17 17 → < 17.11 17.11
postgresql 16 16 → < 16.15 16.15
postgresql 15 15 → < 15.19 15.19
postgresql 14.24 earliest → < 14.24 14.24
The 79 CVEs of postgresql →
Track this CVE