pgsql: psql: Don't do backquote expansion in \unrestrict.

From: Noah Misch <noah(at)leadboat(dot)com>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: psql: Don't do backquote expansion in \unrestrict.
Date: 2026-08-10 13:41:28
Message-ID: E1wtQFs-00000000yFm-3Rgf@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

psql: Don't do backquote expansion in \unrestrict.

This oversight in commit 71ea0d6795 allows a malicious server to
inject shell commands into plain-text dump output that are run at
restore time on the machine running psql. To fix, interpret all
text after \unrestrict until the end of the line as its argument.

Reported-by: Lucas Velgus <velgusgus599(at)gmail(dot)com>
Reported-by: Filip Janus <fjanus(at)redhat(dot)com>
Reported-by: Daniel Bakker <daniel(at)jackds(dot)nl>
Author: Nathan Bossart <nathandbossart(at)gmail(dot)com>
Reviewed-by: Robert Haas <robertmhaas(at)gmail(dot)com>
Reviewed-by: Noah Misch <noah(at)leadboat(dot)com>
Security: CVE-2026-18408
Backpatch-through: 14

Branch
------
REL_17_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/0bfac9e1f946e098b1f61a642e71bb4844757472
Author: Nathan Bossart <nathan(at)postgresql(dot)org>

Modified Files
--------------
doc/src/sgml/ref/psql-ref.sgml | 5 +++++
src/bin/psql/command.c | 10 ++++++++--
src/bin/psql/t/001_basic.pl | 7 +++++++
3 files changed, 20 insertions(+), 2 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Noah Misch 2026-08-10 13:41:29 pgsql: Add an output_plugin_libraries GUC to bless trusted output plugi
Previous Message Noah Misch 2026-08-10 13:41:27 pgsql: Preserve the owner of extended statistics rebuilt by ALTER TABLE