Skip to main content

pgAdmin 4 CVE-2026-17348

| EUVDEUVD-2026-51561 MEDIUM
Missing Authentication for Critical Function (CWE-306)
2026-07-31 f86ef6dc-4d3a-42ad-8f28-e6d5547a5007 GHSA-rm8j-fq8g-rcjc
6.9
CVSS 4.0 · Vendor: f86ef6dc-4d3a-42ad-8f28-e6d5547a5007
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify network-reachable pgAdmin SERVER instance
  2. Delivery
    Send unauthenticated GET to nodes/proplist routes
  3. Exploit
    Enumerate table constraint metadata
  4. Execution
    Issue unauthenticated DELETE to drop target constraint
  5. Impact
    Optionally read preferences or close other users' sessions

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication required for critical functions
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires pgAdmin 4 to be deployed and running in SERVER mode - desktop mode is explicitly not affected and uses a different authentication model. The pgAdmin web interface must be network-reachable by the attacker; if placed behind a VPN, firewall, or authenticating reverse proxy, the attack surface is eliminated at the network layer. No authentication credentials, session token, or user interaction are required for any of the affected routes. The DELETE constraint route additionally requires knowledge of valid server/database/schema/table identifiers to target a specific constraint, which an attacker could enumerate via the unauthenticated nodes/proplist routes in the same blueprint. The preferences.get_all_cli and session-close routes require no such enumeration. Exploitation is not limited by platform or operating system. The vulnerability does not require any non-default pgAdmin configuration - SERVER mode is the standard deployment for shared or team use.

Impact

The CVSS 4.0 base score of 6.9 with AV:N/AC:L/AT:N/PR:N/UI:N reflects a realistic network-accessible, zero-authentication attack surface in a default SERVER mode deployment. Integrity and availability impacts are rated Low (VI:L/VA:L) in the provided vector, though the preferences.get_all_cli route introduces a confidentiality dimension (disclosure of all CLI preference values) not reflected in the provided VC:N assignment - this is a notable gap to verify with the vendor. The vulnerability is a follow-up incomplete-fix of CVE-2026-12046, indicating the defect class was underestimated during initial remediation. No CISA KEV listing and no confirmed public exploit code exist at time of analysis, which moderates immediate exploitation risk. However, the PR:N/AV:N combination means any network-reachable pgAdmin SERVER instance is trivially reachable by this issue, and the DELETE constraint route represents a meaningful integrity threat to production PostgreSQL databases managed through pgAdmin. EPSS data is not provided; given no KEV and no POC, opportunistic exploitation is currently unconfirmed.

Exploit ScenarioDerived

An unauthenticated attacker who can reach a pgAdmin 4 SERVER mode web interface over the network sends a crafted HTTP DELETE request to the Constraints delete endpoint, bypassing the missing authentication check and successfully removing a table constraint from a production PostgreSQL database without any credentials. The same attacker can also issue GET requests to the preferences.get_all_cli endpoint to enumerate configuration values, or send DELETE requests to close active debugger or schema-diff sessions belonging to legitimate users, disrupting ongoing database administration work. No public exploit code has been confirmed, but the attack requires only knowledge of the route paths and basic HTTP tooling.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 31, 2026

Authentication bypass in pgAdmin 4 SERVER mode exposes multiple routes to unauthenticated network access due to missing @pga_login_required decorators, a defect class previously identified in CVE-2026-12046 but incompletely remediated. Unauthenticated remote clients can enumerate table constraint metadata, delete table constraints (a state-mutating operation), read all CLI-settable preference values, and force-close active debugger or schema-diff sessions belonging to other authenticated users. The CVSS 4.0 vector (PR:N, AV:N, AC:L) confirms no authentication or special conditions are required in SERVER mode deployments; no public exploit or CISA KEV listing has been identified at time of analysis.

RemediationAI

Upgrade pgAdmin 4 to version 9.17 or later, which adds the @pga_login_required decorator to all affected routes via a decorator-only patch with no behavioral changes to the underlying handlers (commit 24fdcf0f58591c87ada31366c01e1af180eceb05). If immediate upgrade is not possible, restrict network access to the pgAdmin SERVER mode instance using firewall rules or a reverse proxy with authentication enforcement (e.g., HTTP Basic Auth at the proxy layer) to prevent unauthenticated clients from reaching any pgAdmin route. Placing pgAdmin behind a VPN or restricting source IPs to trusted administrator networks eliminates the network-reachable attack surface entirely, though this does not fix the underlying decorator absence. Disabling the Debugger and Schema Diff tools via pgAdmin server configuration reduces the attack surface for those specific routes if the constraint and preferences routes are the primary concern. Consult the GitHub issue for additional context: https://github.com/pgadmin-org/pgadmin4/issues/10194.

Affected VersionsENISA

pgAdmin 4 8.2 <9.17
pgAdmin 4 1.0 <9.17
pgAdmin 4 4.18 <9.17

Affected Packages

euvd pgadmin_4 fix: 9.17

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

pgAdmin 4 is a Python/Flask-based web application for PostgreSQL database administration. In SERVER mode it operates as a multi-user web server requiring authentication, enforced per-route through the @pga_login_required decorator from pgadmin.user_login_check. The application's before_request hook only handles desktop-mode auto-login and Kerberos/Webserver-auth redirects and does not serve as a global authentication gate, meaning any route omitting the decorator is reachable without authentication. CWE-306 (Missing Authentication for Critical Function) is the root cause: the Flask blueprint registration for the Constraints module lacked the import of pga_login_required entirely, and multiple tools (debugger, schema_diff, preferences) shipped routes without the decorator. Affected routes span several feature areas introduced at different release milestones: Constraints nodes/proplist/delete from version 1.0, schema_diff.close from 4.18, and preferences.get_all_cli from 8.2.

Know when Pgadmin 4 gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (f86ef6dc-4d3a-42ad-8f28-e6d5547a5007) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
vuln.today AI 7.3 HIGH

AV:N and PR:N confirmed by CVSS 4.0 vector; C:L added for preference disclosure not captured in provided VC:N; I:L for constraint deletion; A:L for session disruption.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N
SUSE 6.5 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Red Hat 6.5 MEDIUM

Primary rating from Vendor (f86ef6dc-4d3a-42ad-8f28-e6d5547a5007).

CVSS VectorVendor: f86ef6dc-4d3a-42ad-8f28-e6d5547a5007

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Jul 31, 2026 - 17:01 EUVD

DescriptionCVE.org

In SERVER mode, pgAdmin 4 enforces authentication per route via the @pga_login_required decorator; the application's before_request hook only handles desktop-mode auto-login and the Kerberos/Webserver-auth redirect, so any route shipped without the decorator is reachable without authentication (CWE-306). This is the same defect class previously fixed as CVE-2026-12046 (the sqleditor close/update_connection routes).

A follow-up sweep, prompted by a report describing an incomplete fix for CVE-2026-12046, found further routes missing @pga_login_required: the Constraints blueprint's nodes and proplist (object listing) routes and its delete route (a state-mutating DELETE that removes table constraints); preferences.get_all_cli (GET, discloses all CLI-settable preference values); debugger.close (DELETE); and schema_diff.close (DELETE). An unauthenticated network client could therefore enumerate constraint metadata, delete table constraints, read preference values, and force-close debugger or schema-diff sessions belonging to other users, without ever authenticating.

Fix adds the missing @pga_login_required decorator (and the corresponding import to the Constraints module) to each of these routes. The change is decorator-only; no behavioral changes to the underlying handlers.

This issue affects pgAdmin 4 in SERVER mode: the Constraints and Debugger routes from 1.0, the Schema Diff close route from 4.18, and preferences.get_all_cli from 8.2, all before 9.17.

Threat Intelligence Overview

EPSS Score
0.2%
Top 84% exploitable
Prevalence
Medium
widely used PostgreSQL administration GUI, primarily in team/server deployments
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment Vendor GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2025-2945 CRITICAL POC
9.9 Apr 03

pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi

CVE-2024-2044 CRITICAL POC
9.9 Mar 07

pgAdmin <= 8.3 is affected by a path-traversal vulnerability while deserializing users’ sessions in the session handling

CVE-2024-3116 CRITICAL POC
9.8 Apr 04

pgAdmin <= 8.4 is affected by a Remote Code Execution (RCE) vulnerability through the validate binary path API. Rated cr

CVE-2026-12046 CRITICAL POC
9.5 Jun 18

Remote unauthenticated access to two SQL Editor endpoints in pgAdmin 4 server-mode deployments (versions 6.9 through 9.1

CVE-2022-4223 HIGH POC
8.8 Dec 13

The pgAdmin server includes an HTTP API that is intended to be used to validate the path a user selects to external Post

CVE-2024-9014 MEDIUM POC
6.5 Sep 23

pgAdmin versions 8.11 and earlier are vulnerable to a security flaw in OAuth2 authentication. Rated medium severity (CVS

CVE-2025-12762 CRITICAL
9.8 Nov 13

Remote code execution in pgAdmin 4 (versions up to and including 9.9) lets an attacker who can get a crafted PLAIN-forma

CVE-2026-12045 CRITICAL
9.4 Jun 18

Remote SQL injection via prompt injection in pgAdmin 4 versions 9.13 through 9.15 allows attackers who can write content

CVE-2026-17351 CRITICAL
9.4 Jul 31

SQL injection sandbox escape in pgAdmin 4's AI Assistant (versions 9.13 through 9.16) lets an attacker break out of the

CVE-2026-17566 CRITICAL POC
9.4 Jul 31

OS command injection in pgAdmin 4 (all versions before 9.18) lets an authenticated user with the commonly-granted tools_

CVE-2026-7813 CRITICAL
9.4 May 11

Authorization bypass and privilege escalation in pgAdmin 4 server mode allows authenticated users to access other users'

CVE-2024-4216 MEDIUM POC
5.4 May 02

pgAdmin <= 8.5 is affected by XSS vulnerability in /settings/store API response json payload. Rated medium severity (CVS

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Performance Computing 15 SP7 Affected
SUSE Linux Enterprise Module for Python 3 15 SP7 Affected
SUSE Linux Enterprise Server 15 SP7 Affected
SUSE Linux Enterprise Server for SAP Applications 15 SP7 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy