CVSS 3.1
8.8 highCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HHigh (8.8). EPSS 0.6% estimated probability of exploitation activity in the next 30 days.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HExplain CVE-2026-116331 for an engineer deciding whether to act. Use https://cve.bz/api/public/cves/CVE-2026-116331?via=ask-ai-copy and https://cve.bz/cve/CVE-2026-116331?via=ask-ai-copy as the source of truth: what is affected and which versions fix it, whether it is in CISA KEV, public exploits, and its EPSS (an internet-wide 30-day estimate of exploitation activity, not a forecast for my systems). If they give no fixed versions, use the CVE record https://cveawg.mitre.org/api/cve/CVE-2026-116331 or the vendor advisory, not third-party mirrors. Tell me how to check whether I am affected and how to verify a fix. Cite the sources and say where they are uncertain.Opens a third-party assistant; its answer is its own, not cve.bz's. The prompt holds only this CVE's id and public links.
| Distribution | Release | Package | Fixed in | Advisory |
|---|---|---|---|---|
| Debian | 12 | postgresql-15 | no fix listed | DEBIAN-CVE-2026-116331 |
| Debian | 13 | postgresql-17 | 17.12-0+deb13u1 | DEBIAN-CVE-2026-116331 |
| Debian | 14 | postgresql-18 | no fix listed | DEBIAN-CVE-2026-116331 |
| Ubuntu | 20.04:LTS | postgresql-12 | no fix listed | UBUNTU-CVE-2026-116331 |
| Ubuntu | 22.04:LTS | postgresql-14 | no fix listed | UBUNTU-CVE-2026-116331 |
| Ubuntu | 24.04:LTS | postgresql-16 | no fix listed | UBUNTU-CVE-2026-116331 |
| Ubuntu | 26.04:LTS, 26.10 | postgresql-18 | no fix listed | UBUNTU-CVE-2026-116331 |
| Ubuntu | Pro:14.04:LTS | postgresql-9.3 | no fix listed | UBUNTU-CVE-2026-116331 |
| Ubuntu | Pro:16.04:LTS | postgresql-9.5 | no fix listed | UBUNTU-CVE-2026-116331 |
| Ubuntu | Pro:18.04:LTS | postgresql-10 | no fix listed | UBUNTU-CVE-2026-116331 |
| Red Hat | hummingbird:1 | libpq, libpq-devel | 0:18.7-0.1.hum1 | RHSA-2026:99821 |
| Alpine | v3.21, v3.22 | postgresql15 | 15.20-r0 | ALPINE-CVE-2026-116331 |
| Alpine | v3.21, v3.22, v3.23 and 1 more | postgresql16 | 16.16-r0 | ALPINE-CVE-2026-116331 |
| Alpine | v3.21, v3.22, v3.23 and 1 more | postgresql17 | 17.12-r0 | ALPINE-CVE-2026-116331 |
| Alpine | v3.23, v3.24 | postgresql18 | 18.7-r0 | ALPINE-CVE-2026-116331 |
| Azure Linux | 3 | postgresql | no fix listed | AZL-113738 |
From the distributions' data via OSV.dev: the Debian Security Tracker; Ubuntu Security Notices © Canonical Ltd., CC BY-SA 4.0; Red Hat Security Data © Red Hat, Inc., CC BY 4.0; the Alpine secdb, CC BY-SA 4.0; Microsoft's Azure Linux vulnerability data, MIT. Modified: reformatted and linked to CVE records. Credits. On the distributions' own pages: Debian · Ubuntu · Red Hat · Alpine.
Red Hat rates this Important.
This vulnerability is rated as having an Important severity for Red Hat deployments because, although successful exploitation leads to complete arbitrary code execution under the operating system account running the database service, it requires an authenticated attacker with permissions to define custom database objects rather than being exploitable by unauthenticated remote users. In typical enterprise environments, database access is restricted and standard application roles do not possess schema creation privileges, which limits the attack surface to trusted or privileged database accounts. However, in shared hosting or multi-tenant configurations where non-administrative users can create schemas and custom routines, an attacker could leverage this flaw to fully compromise the database host.
Revoke object creation permissions from untrusted database accounts and restrict network access to trusted administrative hosts.
1. Revoke schema creation permissions to prevent users from defining custom aggregates:
```sql
REVOKE CREATE ON SCHEMA public FROM PUBLIC;
REVOKE CREATE ON SCHEMA <schema_name> FROM <username>;
```
2. Limit network access to trusted clients using firewalld:
```bash
firewall-cmd --permanent --zone=trusted --add-source=<trusted_ip_or_subnet>
firewall-cmd --permanent --zone=public --remove-service=postgresql
firewall-cmd --reload
```
Alternatively, restrict client access rules in `/var/lib/pgsql/data/pg_hba.conf` and apply the configuration:
```bash
systemctl reload postgresql
```
Caveats: Revoking object creation privileges prevents non-administrative users and applications from creating or modifying custom database objects and schemas. Limiting network access will block queries from unlisted client hosts.
Warning: Modifying firewall rules or reloading the PostgreSQL service (`systemctl reload postgresql`) affects service accessibility. Ensure configuration changes are applied during scheduled maintenance windows to prevent unexpected disruption to active sessions.
| Product | Package | State | Advisory |
|---|---|---|---|
| Red Hat Hardened Images | libpq | Affected | |
| Red Hat Hardened Images | postgresql17 | Affected | |
| Red Hat Hardened Images | postgresql18 | Affected |
Contains Red Hat Security Data © Red Hat, Inc., licensed under CC BY 4.0. Source: https://access.redhat.com/security/data. Modified: reformatted. Red Hat's page for CVE-2026-116331.