Skip to content
OpenAdvisories
High · 7.2 CVE-2026-116313 EUVD-2026-124493GHSA-64m9-jq4j-66v4

PostgreSQL "vacuumdb --missing-stats-only" lets a database owner execute code as the vacuumdb user

Published Nov 12, 2026 · Updated Nov 13, 2026 · Assigned by PostgreSQL

Description

Untrusted search path in PostgreSQL vacuumdb allows a database owner to execute arbitrary SQL as the database user running vacuumdb, via shadowing operators used in the --missing-stats-only catalog query. The pg_upgrade documentation recommends an affected vacuumdb invocation. Within major version 18, minor versions before PostgreSQL 18.7 are affected. Versions before PostgreSQL 18 are unaffected.

Affected products

VendorProductAffectedFixed
— PostgreSQL 18 – < 18.7 18.7

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 postgresql-18 No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 postgresql-18 No fix yet —
Ubuntu 26.04 LTS postgresql-18 No fix yet —
Ubuntu 24.04 LTS postgresql-16 No fix yet —
Ubuntu 22.04 LTS postgresql-14 No fix yet —
Ubuntu 20.04 LTS postgresql-12 No fix yet —
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 18.04 LTS postgresql-10 No fix yet —
Ubuntu Pro 16.04 LTS postgresql-9.5 No fix yet —
Ubuntu Pro 14.04 LTS postgresql-9.3 No fix yet —
ReleasePackageFixed inAdvisory
Alpine v3.24 postgresql16 16.16-r0 —
Alpine v3.24 postgresql17 17.12-r0 —
Alpine v3.24 postgresql18 18.7-r0 —
Alpine v3.23 postgresql16 16.16-r0 —
Alpine v3.23 postgresql17 17.12-r0 —
Alpine v3.23 postgresql18 18.7-r0 —
Alpine v3.22 postgresql15 15.20-r0 —
Alpine v3.22 postgresql16 16.16-r0 —
Alpine v3.22 postgresql17 17.12-r0 —
Alpine v3.21 postgresql15 15.20-r0 —
Alpine v3.21 postgresql16 16.16-r0 —
Alpine v3.21 postgresql17 17.12-r0 —

Advisories 1

References