Bug 2540731 - CVE-2026-61781 postgresql18-pg_partman: privilege escalation through SQL injection in create_partition_time() [epel-all]
Summary: CVE-2026-61781 postgresql18-pg_partman: privilege escalation through SQL inje...
Keywords:
Status: NEW
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: postgresql18-pg_partman
Version: epel10
Hardware: Unspecified
OS: Unspecified
urgent
urgent
Target Milestone: ---
Assignee: Pavol Sloboda
QA Contact:
URL:
Whiteboard: {"flaws": ["0ddacff1-36e2-411c-bf00-7...
Depends On:
Blocks: CVE-2026-61781
TreeView+ depends on / blocked
 
Reported: 2026-09-24 19:09 UTC by Guilherme de Almeida Suckevicz
Modified: 2026-09-24 19:09 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Guilherme de Almeida Suckevicz 2026-09-24 19:09:46 UTC
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.

pg_partman is a PostgreSQL extension that manages partitioned tables by time or ID. Prior to 5.5.0, create_partition_time() reads the writable part_config.time_encoder text value and interpolates it without identifier quoting into a dynamically executed SELECT statement. A role with the documented partman_user INSERT and UPDATE privileges can store SQL rather than a function name. When pg_partman_bgw later creates a child partition for a text- or UUID-keyed set, the worker executes the stored SQL with pg_partman_bgw.role privileges, which default to PostgreSQL superuser. The persistent configuration row can repeatedly restore elevated access on later maintenance ticks, and successful exploitation can permit database-wide compromise and operating-system command execution as the PostgreSQL service account. This issue is fixed in version 5.5.0.


Note You need to log in before you can comment on or make changes to this bug.