CVE-2026-116241Critical· 9.9▾ MidnightpgAdmin 4's Import/Export Data tool wraps a user's query export in a psql \copy (...) TO command and checks that the query's parentheses are balanced so that nothing can escape the wrapper. The check rejected a backslash inside a single-…
▾ Midnight zone — Critical, or high with PoC / in-the-wild
impact 54.5 · likelihood 0.1 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via CVEORG
0.3%
pgAdmin 4's Import/Export Data tool wraps a user's query export in a psql \copy (...) TO command and checks that the query's parentheses are balanced so that nothing can escape the wrapper. The check rejected a backslash inside a single-quoted string, but not inside a double-quoted identifier, where it treated the next double quote as closing the identifier. psql's \copy parser applies the connection's escape character to whichever quote opened a token, so with standard_conforming_strings off a backslash-escaped double quote does not close the identifier. pgAdmin's and psql's view of the quoting then diverged, a closing parenthesis hidden from the check ended the \copy (...) wrapper, and a following TO PROGRAM clause was executed by psql on the pgAdmin host, as the operating-system account running pgAdmin, before the server rejected the statement. An ordinary database role can turn standard_conforming_strings off for itself, and the Import/Export Data permission is granted to non-administrators by default.
This is a bypass of the fix for CVE-2026-17566. The fix rejects any backslash inside a double-quoted identifier, as was already done for single-quoted strings, since its meaning depends on a server setting that cannot be known reliably when the query is validated.
This issue affects pgAdmin 4: before 9.19.
pgadmin_4 < 9.19Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
Connected by shared product, vendor, weakness, or advisory.
CVE-2026-116251Medium· 4.2pgAdmin 4: A user's other sessions survive a change of their password
CVE-2026-116249High· 8.4pgAdmin 4: Connection file paths and parameter keys escape the user's storage directory
CVE-2026-116252Medium· 6.5pgAdmin 4: Materialized view refresh redirects its connection through a crafted database name
CVE-2026-116250Medium· 6.5pgAdmin 4: Files opened in a storage directory follow a symbolic link, hard link or FIFO planted after the containment check
CVE-2026-116248Medium· 6.8pgAdmin 4: Non-administrators can share a server with every user
CVE-2026-116247High· 8.2pgAdmin 4: libpq uses the pgAdmin service account's own password file and client certificate