What’s Vulnerable › Vulnerabilities
CVE-2024-0985: PostgreSQL non-owner REFRESH MATERIALIZED VIEW CONCURRENTLY executes arbitrary SQL
- Severity: high (CVSS 8.0 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 1.8% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2024-02-08 · updated 2026-06-17
- Weakness: CWE-271
Description
Late privilege drop in REFRESH MATERIALIZED VIEW CONCURRENTLY in PostgreSQL allows an object creator to execute arbitrary SQL functions as the command issuer. The command intends to run SQL functions as the owner of the materialized view, enabling safe refresh of untrusted materialized views. The victim is a superuser or member of one of the attacker's roles. The attack requires luring the victim into running REFRESH MATERIALIZED VIEW CONCURRENTLY on the attacker's materialized view. Versions before PostgreSQL 16.2, 15.6, 14.11, 13.14, and 12.18 are affected.
Affected products
- PostgreSQL: from 12.0 before 12.18; from 13.0 before 13.14; from 14.0 before 14.11; from 15.0 before 15.6 — fixed in 12.18, 13.14, 14.11, 15.6
How to fix
Upgrade to a fixed version: PostgreSQL 12.18, 13.14, 14.11, 15.6. Check the vendor advisory for mitigations.
References
- https://lists.debian.org/debian-lts-announce/2024/03/msg00017.html
- https://saites.dev/projects/personal/postgres-cve-2024-0985/
- https://www.postgresql.org/support/security/CVE-2024-0985/
- https://lists.debian.org/debian-lts-announce/2024/03/msg00017.html
- https://saites.dev/projects/personal/postgres-cve-2024-0985/
- https://security.netapp.com/advisory/ntap-20241220-0005/
- https://www.postgresql.org/support/security/CVE-2024-0985/
Get alerted when CVE-2024-0985 or the next vulnerability affects your stack