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.
{ "availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libecpg-compat3" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libecpg-compat3-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libecpg-dev" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libecpg-dev-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libecpg6" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libecpg6-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libpgtypes3" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libpgtypes3-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libpq-dev" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libpq-dev-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libpq5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "libpq5-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-9.5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-9.5-dbg" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-9.5-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-client-9.5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-client-9.5-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-contrib-9.5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-contrib-9.5-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-doc-9.5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-plperl-9.5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-plperl-9.5-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-plpython-9.5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-plpython-9.5-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-plpython3-9.5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-plpython3-9.5-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-pltcl-9.5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-pltcl-9.5-dbgsym" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-server-dev-9.5" }, { "binary_version": "9.5.25-0ubuntu0.16.04.1+esm7", "binary_name": "postgresql-server-dev-9.5-dbgsym" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libecpg-compat3" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libecpg-compat3-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libecpg-dev" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libecpg-dev-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libecpg6" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libecpg6-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libpgtypes3" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libpgtypes3-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libpq-dev" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libpq5" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "libpq5-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-12" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-12-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-client-12" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-client-12-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-doc-12" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-plperl-12" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-plperl-12-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-plpython3-12" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-plpython3-12-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-pltcl-12" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-pltcl-12-dbgsym" }, { "binary_version": "12.18-0ubuntu0.20.04.1", "binary_name": "postgresql-server-dev-12" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libecpg-compat3" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libecpg-compat3-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libecpg-dev" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libecpg-dev-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libecpg6" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libecpg6-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libpgtypes3" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libpgtypes3-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libpq-dev" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libpq5" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "libpq5-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-14" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-14-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-client-14" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-client-14-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-doc-14" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-plperl-14" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-plperl-14-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-plpython3-14" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-plpython3-14-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-pltcl-14" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-pltcl-14-dbgsym" }, { "binary_version": "14.11-0ubuntu0.22.04.1", "binary_name": "postgresql-server-dev-14" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "16.2-1", "binary_name": "libecpg-compat3" }, { "binary_version": "16.2-1", "binary_name": "libecpg-compat3-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "libecpg-dev" }, { "binary_version": "16.2-1", "binary_name": "libecpg-dev-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "libecpg6" }, { "binary_version": "16.2-1", "binary_name": "libecpg6-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "libpgtypes3" }, { "binary_version": "16.2-1", "binary_name": "libpgtypes3-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "libpq-dev" }, { "binary_version": "16.2-1", "binary_name": "libpq5" }, { "binary_version": "16.2-1", "binary_name": "libpq5-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "postgresql-16" }, { "binary_version": "16.2-1", "binary_name": "postgresql-16-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "postgresql-client-16" }, { "binary_version": "16.2-1", "binary_name": "postgresql-client-16-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "postgresql-doc-16" }, { "binary_version": "16.2-1", "binary_name": "postgresql-plperl-16" }, { "binary_version": "16.2-1", "binary_name": "postgresql-plperl-16-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "postgresql-plpython3-16" }, { "binary_version": "16.2-1", "binary_name": "postgresql-plpython3-16-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "postgresql-pltcl-16" }, { "binary_version": "16.2-1", "binary_name": "postgresql-pltcl-16-dbgsym" }, { "binary_version": "16.2-1", "binary_name": "postgresql-server-dev-16" } ] }