Skip to main content

pg_partman EUVDEUVD-2026-83418

| CVE-2026-61781 CRITICAL
SQL Injection (CWE-89)
2026-09-18 GitHub_M
9.9
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
9.9 CRITICAL
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
vuln.today AI
9.9 CRITICAL

Low-privilege authenticated partman_user (PR:L) injects SQL executed by the superuser-default BGW, crossing a privilege boundary (S:C) for full C/I/A including OS command execution.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

4
POC Analysis Generated
Sep 18, 2026 - 23:26 vuln.today
Patch available
Sep 18, 2026 - 21:18 EUVD
Analysis Generated
Sep 18, 2026 - 20:23 vuln.today
CVE Published
Sep 18, 2026 - 19:44 cve.org
CRITICAL 9.9

DescriptionCVE.org

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.

AnalysisAI

SQL injection in the pg_partman PostgreSQL extension before version 5.5.0 lets an authenticated database role that holds the documented partman_user INSERT/UPDATE privileges on the part_config table store SQL text in the writable time_encoder column instead of a legitimate function name. When the pg_partman_bgw background worker next creates a child partition for a text- or UUID-keyed set, that stored SQL is interpolated into a dynamically executed SELECT and runs with the privileges of pg_partman_bgw.role, which the pre-5.5.0 documentation defaults to a superuser such as 'postgres'; because the payload persists in the configuration row, elevated access can be re-established on subsequent maintenance ticks and can lead to database-wide compromise and operating-system command execution as the PostgreSQL service account. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
technique details hidden
Delivery
technique details hidden
Exploit
technique details hidden
Execution
technique details hidden
Persist
technique details hidden
Impact
technique details hidden

Vulnerability AssessmentAI

Exploitation Requires (1) an authenticated database role holding the documented partman_user INSERT/UPDATE privileges on part_config, (2) a partition set keyed by text or UUID whose time_encoder value is consulted during child-partition creation, and (3) pg_partman_bgw.role configured as a superuser (the pre-5.5.0 documented default, e.g. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment This is a genuine high-priority vulnerability, not a high-CVSS-but-low-real-risk case. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario Full exploit scenario with step-by-step reproduction available after sign-in.
Remediation Vendor-released patch: 5.5.0 - upgrade pg_partman to 5.5.0 or later, applying the fix commit ba9405542acf24dd881845b935cab8b165854361 and following advisory GHSA-742w-3j7c-qwvp and the release notes at https://github.com/pgpartman/pg_partman/releases/tag/v5.5.0. … Detailed patch versions, workarounds, and compensating controls in full report.

Recommended ActionAI

Within 24 hours, inventory every PostgreSQL instance running the pg_partman extension (SELECT extname, extversion FROM pg_extension WHERE extname = 'pg_partman') and flag any deployment below version 5.5.0; on those instances immediately revoke INSERT and UPDATE on the part_config table from all roles other than the extension owner, reassign pg_partman_bgw.role to a dedicated non-superuser role rather than 'postgres', and audit the time_encoder column in part_config for values that are not legitimate function names. …

Sign in for detailed remediation steps and compensating controls.

Threat intelligence, references, and detailed analysis are available after sign-in.

CVE-2025-1094 HIGH POC
8.1 Feb 13

PostgreSQL libpq functions PQescapeLiteral(), PQescapeIdentifier(), PQescapeString(), and PQescapeStringConn() improperl

CVE-2024-55964 CRITICAL POC
9.8 Mar 26

An issue was discovered in Appsmith before 1.52. Rated critical severity (CVSS 9.8), this vulnerability is remotely expl

CVE-2013-1899 MEDIUM POC
6.5 Apr 04

Argument injection vulnerability in PostgreSQL 9.2.x before 9.2.4, 9.1.x before 9.1.9, and 9.0.x before 9.0.13 allows re

CVE-2026-20253 CRITICAL POC
9.8 Jun 10

Unauthenticated arbitrary file write in Splunk Enterprise (below 10.2.4 and 10.0.7) and Splunk Cloud Platform (below 10.

CVE-2026-9586 CRITICAL POC
9.3 Jul 17

Unauthenticated SQL injection in Sangoma Switchvox SMB Edition 8.3 (build 104997) lets remote attackers execute arbitrar

CVE-2017-7546 CRITICAL
9.8 Aug 16

PostgreSQL versions before 9.2.22, 9.3.18, 9.4.13, 9.5.8 and 9.6.4 are vulnerable to incorrect authentication flaw allow

CVE-2015-1352 MEDIUM POC
5.0 Mar 30

The build_tablename function in pgsql.c in the PostgreSQL (aka pgsql) extension in PHP through 5.6.7 does not validate t

CVE-2024-10553 CRITICAL POC
9.8 Mar 20

A vulnerability in the h2oai/h2o-3 REST API versions 3.46.0.4 allows unauthenticated remote attackers to execute arbitra

CVE-2019-9193 HIGH POC
7.2 Apr 01

In PostgreSQL 9.3 through 11.2, the "COPY TO/FROM PROGRAM" function allows superusers and users in the 'pg_execute_serve

CVE-2026-40887 CRITICAL POC
9.1 Apr 14

Unauthenticated SQL injection in Vendure Shop API allows remote attackers to execute arbitrary SQL commands against the

CVE-2022-24760 CRITICAL POC
10.0 Mar 12

Parse Server is an open source http web server backend. Rated critical severity (CVSS 10.0), this vulnerability is remot

CVE-2025-56157 CRITICAL POC
9.8 Dec 18

Hard-coded default PostgreSQL credentials shipped in the docker-compose.yaml of langgenius Dify through version 1.5.1 al

Share

EUVD-2026-83418 vulnerability details – vuln.today

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