Key details

  1. Release date: 29 October 2026; pgAdmin 4 9.19.
  2. 15 security vulnerabilities addressed, CVE-2026-116238 through CVE-2026-116252.
  3. Authentication bypass, command injection and credential/file isolation issues are among the fixes.
  4. Server-mode Password Exec Commands now use SERVER_PASSEXEC_COMMANDS allowlist rather than free-text commands.
  5. First-start migration clears unmatched saved commands irreversibly; empty allowlist postpones conversion.
  6. Server-mode SSH agent and service-account credential inheritance are restricted.
  7. No confirmed in-the-wild exploitation established in the checked release sources.

What builders should take away

  1. Inventory whether pgAdmin runs in shared server mode, which authentication providers it uses and whether password-exec commands are configured.
  2. Back up configuration and map current Password Exec Commands into SERVER_PASSEXEC_COMMANDS before the first 9.19 startup.
  3. Upgrade pgAdmin to 9.19 and test authentication, connection files, SSH tunnels, backup/export paths and affected automation.
  4. For Python wheel deployments, check Flask-Security-Too version and dependency compatibility.
  5. Do not infer that all 15 CVEs are remotely exploitable in every deployment; check each affected feature and privilege boundary.

What changed

The pgAdmin development team released pgAdmin 4 version 9.19 on October 29, 2026, with 136 changes including fixes for 15 vulnerabilities, CVE-2026-116238 through CVE-2026-116252. The fixes include bypasses of account lockout and authentication checks, operating-system command injection through Import/Export Data, unintended use of the pgAdmin service account's credentials, file-path isolation issues and session handling. In server mode, free-text Password Exec Commands are replaced by an administrator-defined SERVER_PASSEXEC_COMMANDS allowlist. The old ENABLE_SERVER_PASS_EXEC_CMD flag is ignored. Administrators must configure the allowlist before the first start after upgrading: saved commands that do not exactly match an allowlisted entry are cleared at that point.

Why it matters

A pgAdmin server may be shared by several database operators and hold privileged connections, saved passwords and access to backup tools. Flaws that bypass authentication safeguards, execute commands on the pgAdmin host or leak the service account's credentials can cross boundaries between users and database infrastructure. Upgrading is necessary, but administrators relying on external password retrieval commands must also plan the configuration migration: losing unmatched saved commands can interrupt connections and the automatic clearing cannot be undone. Desktop and server installations have different exposure; the announcement does not establish active exploitation.

Authentication and command-execution boundaries

CVE-2026-116238 addresses failed-login limit bypasses and access to Flask-Security's own login, change and reset views; CVE-2026-116239 addresses LDAP/Kerberos identity collision; CVE-2026-116241 closes a route to host command execution through a crafted query export. Other fixes constrain connection files, SSH and Kerberos identities, shared storage, file-path races and credential inheritance. Operators should evaluate which modes and authentication providers they actually deploy rather than treating every CVE as universally exploitable.

Password Exec migration is a separate operational risk

In server mode, configure SERVER_PASSEXEC_COMMANDS with approved named commands before starting 9.19. On first start, an existing command is mapped to its name only when it exactly matches an allowlist entry; other saved commands are cleared and cannot be recovered through the migration. If the list is empty, conversion is postponed and warnings are logged. Commands now run without a shell and with a reduced environment. Check connections and credentials after upgrading.

Other compatibility details

The release changes shared-server credential-file inheritance and prevents server-mode SSH tunnels from using the pgAdmin service account's SSH agent or ~/.ssh directory. Operators relying on those behaviours must configure explicit credentials. Python wheel deployments on Python 3.10+ require Flask-Security-Too 5.8.3 or newer. The release also adds pg_timetable management, extended-statistics nodes and new query-result export formats; those features are secondary to the security and migration work.

What to watch next

  • Follow-up security advisories, CVSS ratings and evidence of exploitation.
  • Operator reports of command-migration issues or compatibility fixes.
  • Subsequent 9.19 patch releases and downstream package availability.

Still unclear

  • No independent exploitation reports were established in the reviewed material.
  • The project enumerates 15 CVEs, but real exposure varies with authentication providers, server versus desktop mode and configured file/credential features.
  • The automatic command migration cannot recover entries already cleared by an earlier first start.

Sources

Direct reading behind this dossier.

3 sources
pgAdmin 4 v9.19 released
pgAdmin Support Mailing List primary_maintainer_announcement

Maintainer announcement enumerating 15 CVEs and selected vulnerabilities.

Discussion

Discussion is reader-contributed. Comments are not part of the BTN dossier or its editorial evidence.

0 visible comments

Join the discussion

Keep comments useful and relevant. Reader contributions may be moderated and are not BTN editorial evidence.

Sign in to comment