CVE intelligence and bounded remediation
CVE-2026-12050 — SQL injection in pgAdmin 4's named restore point endpoint (POST /browser/server/restore_point/{gid}/{sid})
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 a…
- Severity
- High
- CVSS
- 8.8 (3.1)
- Published
- 2026-06-19
- CISA KEV
- Not currently listed
- Ecosystem
- software/application
- Weaknesses
- CWE-89
Affected products
- pgadmin / pgadmin_4
Matched remediation archetype
SQL and data-query injection
This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.
Check exposure
- Trace request, message, file, and stored values into SQL, ORM query fragments, filters, sort expressions, and other data-query languages.
- Inventory database roles, reachable schemas, multi-tenant boundaries, and whether stacked or administrative operations are enabled.
- Check both direct queries and second-order use of previously stored values.
Remediate safely
- Use parameterized queries or safe query builders for all values; map identifiers and operators through explicit allowlists.
- Remove raw query concatenation and give the application account only the tables and operations it requires.
- Update affected data-access components and add regression tests for query structure preservation with inert edge-case inputs.
Authoritative sources
Complete CVE record and remediation plan
The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.