---
id: "CVE-2026-116251"
kind: "vulnerability"
aliases: ["CVE-2026-116251"]
title: "pgAdmin 4: old sessions stay valid after a password change"
severity: "medium"
cvss: 4.2
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["package", "pgadmin", "postgresql", "self-hosted"]
not_affected_if: ["pgadmin-9.19-or-later", "single-user-desktop"]
published_at: "2026-10-30T20:17:05+00:00"
first_seen_at: "2026-10-30T20:25:37+00:00"
updated_at: "2026-10-30T20:26:54+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-116251", "first_seen_at": "2026-10-30T20:25:37+00:00"}]
---

# pgAdmin 4: old sessions stay valid after a password change

pgAdmin 4 kept a user's existing login sessions active after that user's password was changed, whether by the user or by an administrator. Someone holding an old session or cookie could keep using pgAdmin until the session expired.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed pgAdmin 4 version; the sources say versions before `9.19` are affected.
- Confirm whether your pgAdmin instance is reachable by users who could have shared sessions or cookies.

## Fix

- pgAdmin 4: move to `9.19` or later, per the sources.

## Timeline

- 2026-10-30T20:25:37+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-116251

## From the sources

pgAdmin 4 did not invalidate a user's existing sessions when their password changed, either through the user's own change password dialog or through an administrator resetting it in User Management. A session established before the change, for example on another device or by someone who had obtained the old password or a session cookie, therefore stayed logged in after the change, which is the step a user or administrator takes precisely to cut such access off. It remained usable until it expired.

The fix rotates the user's session identifier (fs_uniquifier) whenever the password is changed, so every other session of that user is logged out. The session that made the change is logged in again and keeps its database connections. Saved server passwords, including those for shared servers, are re-encrypted under the new key; any that cannot be decrypted are cleared and the user is told. If re-encryption fails, the sessions are still revoked and the saved passwords are cleared rather than the change failing.

This issue affects pgAdmin 4: before 9.19.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
