pg_partman authorization bypass to move child tables between schemas during retention
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-862.
Summary
pg_partman is a PostgreSQL extension that manages partitioned tables by time or ID. Prior to 5.5.0, drop_partition_id() and drop_partition_time() use part_config.retention_schema as the target for ALTER TABLE SET SCHEMA and accept any nonempty schema name. A role with partman_user access can select a target schema where the role lacks the normal CREATE privilege, and the background worker performs the relocation with pg_partman_bgw.role privileges, which default to PostgreSQL superuser, bypassing the authorization check that a normal ALTER TABLE SET SCHEMA operation would enforce. This permits unauthorized relocation of retained child tables between schemas. This issue is fixed in version 5.5.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
- Fix · CNA pg_partman (pgpartman) Fixed in 5.5.0
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2026-61821
- 2026-10-31 CVSS score changed · Red Hat
References
More pgpartman vulnerabilities
- TI-2026-44224 pg_partman has privilege escalation through SQL injection in create_partition_time() CVSS 3.1CRITICAL 9.9
- TI-2026-44245 pg_partman privilege escalation via SQL injection when inheriting template properties CVSS 3.1HIGH 8.5
- TI-2026-44244 pg_partman privilege escalation via SQL injection in when using pg_jobmon and encountering exception CVSS 3.1HIGH 8.5
- TI-2026-44242 pg_partman privilege escalation via SQL injection in several functions via time decoder CVSS 3.1HIGH 8.5
- TI-2026-44243 pg_partman SQL injection in undo partition time encoder CVSS 3.1HIGH 8.5
- TI-2026-44247 pg_partman disable maintenance for all partition sets CVSS 3.1MEDIUM 6.5
Sources
- CVE-2026-61821 · CVE Program
- CVE-2026-61821 · NVD
- FIRST EPSS
- CVE-2026-61821 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences