pgAdmin 4 v9.18 Released - Mailing list pgadmin-hackers

From Ashesh Vashi
Subject pgAdmin 4 v9.18 Released
Date
Msg-id CAG7mmowFr2FD0NrYOuch13tBY0qzpaW8aoQcF0cxGC4_fOk6rw@mail.gmail.com
Whole thread
List pgadmin-hackers
The pgAdmin Development Team is pleased to announce pgAdmin 4 version 9.18.

This release of pgAdmin 4 includes 29 bug fixes and new features. For more details please see the release notes at:

https://www.pgadmin.org/docs/pgadmin4/9.18/release_notes_9_18.html

pgAdmin is the leading Open Source graphical management tool for PostgreSQL. For more information, please see:

https://www.pgadmin.org/

Notable changes in this release include:

Features:

* Collapse and restore the Object Explorer by re-clicking the current workspace icon, in the manner of the VS Code side bar, remembering the choice across refreshes. A keyboard shortcut, Ctrl+Alt+B by default, does the same thing.
* Harden the default Content-Security-Policy: inline scripts now run under a per-request nonce rather than a blanket 'unsafe-inline', and 'unsafe-eval' is dropped. style-src keeps 'unsafe-inline', because MUI and React inject runtime styles and inline style attributes that cannot carry a nonce.

Bugs/Housekeeping:

* Fix an authentication bypass in Webserver authentication mode, where the configured WEBSERVER_REMOTE_USER name was also read from the request headers, letting any client that could reach pgAdmin assert any identity, including an administrator's (CVE-2026-86863). A header-asserted identity is now opt-in and restricted to a configured list of trusted proxies, with an optional shared secret.
* Fix argument and connection-string injection in the Backup tool via the client-supplied database name, which could override the storage-confined output path or redirect the connection to an attacker-controlled host (CVE-2026-86864).
* Fix connection-string injection in the Restore and Maintenance tools via the client-supplied database name, which could redirect the connection, and the stored password, to a server of the caller's choosing (CVE-2026-86862).
* Fix a time-of-check to time-of-use flaw in the File Manager's save endpoint, which backs saving from the Query Tool and ERD, where a symbolic link planted after the containment check was followed, writing outside the storage directory (CVE-2026-86861).
* Refuse HTTP redirects on LLM API requests, rather than following a `Location` header on to a destination the `ALLOWED_LLM_API_URLS` check was never applied to.
* Fix login being impossible against Flask-Security-Too 5.8.2, which corrected a long-standing inversion in UserMixin.is_locked().
* Fix inherited columns in the Table dialog being editable and deletable, and the Data type dropdown on the expanded Definition tab ignoring the allowed-type restriction.
* Reinstate dependency ordering of the script Schema Diff generates, which had been lost since the React port.
* Fix Schema Diff reporting false differences for SERIAL/BIGSERIAL columns, duplicating columns when recreating a foreign table, losing a foreign table column's collation, injecting whitespace into applied function and procedure bodies, and reporting a comparison that failed part way through as a success.
* Reject an empty or null `Username` when importing a non-shared server, which previously imported cleanly and left a server libpq would silently authenticate as the OS account running pgAdmin.
* Share concurrent identical GET requests behind getNodeAjaxOptions() so a wide table's Columns tab no longer fires one duplicate `get_types` request per column row.
* Omit the redundant TABLESPACE pg_default clause from generated index SQL, which was invalid on a partitioned table.
* Skip importing and initialising the Kerberos, LDAP, MFA, OAuth2 and Webserver authentication providers unless SERVER_MODE is set.

Builds for Windows and macOS are available now, along with a Python Wheel, Docker Container, RPM, DEB Package, and source code tarball from:
https://www.pgadmin.org/download/

--

Ashesh Vashi

pgAdmin Project

pgadmin-hackers by date:

Previous
From: Shubham Agarwal
Date:
Subject: Re: pgAdmin4 v9.18 candidate builds
Next
From: Simar
Date:
Subject: Proposal: external tunnel command support (SSM, IAP, kubectl port-forward)