High severity · published Jun 18, 2026
CVE-2026-12050
pgAdmin 4: SQL injection in named restore point endpoint
8.8
CVSS
0.4%
EPSS
No
On KEV
Description
SQL injection in pgAdmin 4's named restore point endpoint (POST /browser/server/restore_point/{gid}/{sid}). The user-supplied 'value' field was interpolated directly into the SQL string with str.format() instead of being passed as a bound parameter, allowing an authenticated pgAdmin user with a connected PostgreSQL session to inject additional statements through that endpoint.
The injected SQL executes under the database role the user is already authenticated as. The defect does not cross a privilege boundary -- the user already has direct SQL access to that role through the Query Tool -- so the attacker gains no capability beyond what their database role already grants them. The marginal impact accounts for the fact that the injection path is not the documented SQL-execution interface, so a deployment that gates the Query Tool at the application layer could see SQL executed through a path it did not anticipate.
Fix passes the restore point name as a bound parameter and schema-qualifies the function call as pg_catalog.pg_create_restore_point so a non-default search_path on the connection cannot redirect the call to a shadow definition. A regression test asserts the value arrives as a bound parameter and not spliced into the SQL string.
This issue affects pgAdmin 4: from 1.0 before 9.16.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
Low
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.4% · higher than 37% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
P4
pgAdmin 4 · pgadmin.org
1.0 before 9.16 · source: vendor, NVD
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-12050
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-12050
Patch
https://github.com/pgadmin-org/pgadmin4/commit/3379c39865d3ab6f52afce97361fb16bcdd77cd2
Issue Tracking
https://github.com/pgadmin-org/pgadmin4/issues/10026
More from pgAdmin 4
9.9
CVE-2026-17566
pgAdmin 4: RCE via backslash-escape mismatch in Import/Export Data query guard (incomplete defense, sibling gap to CVE-2025-13780)
9.9
CVE-2026-7813
pgAdmin 4: Cross-user data access and shared-server privilege escalation in server mode
9.8
CVE-2026-86863
pgAdmin 4: Authentication bypass via a client-controlled identity header in Webserver authentication mode
9.6
CVE-2026-17349
pgAdmin 4: Adhoc server clone leaks another user's stored database credentials and ownership to a non-owner
9.0
CVE-2026-17351
pgAdmin 4: AI Assistant read-only transaction bypass via sqlparse/PostgreSQL lexer disagreement (incomplete fix for CVE-2026-12045)
