{"id":"ALPINE-CVE-2024-10976","details":"Incomplete tracking in PostgreSQL of tables with row security allows a reused query to view or change different rows from those intended.  CVE-2023-2455 and CVE-2016-2193 fixed most interaction between row security and user ID changes.  They missed cases where a subquery, WITH query, security invoker view, or SQL-language function references a table with a row-level security policy.  This has the same consequences as the two earlier CVEs.  That is to say, it leads to potentially incorrect policies being applied in cases where role-specific policies are used and a given query is planned under one role and then executed under other roles.  This scenario can happen under security definer functions or when a common user and query is planned initially and then re-used across multiple SET ROLEs.  Applying an incorrect policy may permit a user to complete otherwise-forbidden reads and modifications.  This affects only databases that have used CREATE POLICY to define a row security policy.  An attacker must tailor an attack to a particular application's pattern of query plan reuse, user ID changes, and role-specific row security policies.  Versions before PostgreSQL 17.1, 16.5, 15.9, 14.14, 13.17, and 12.21 are affected.","modified":"2026-09-15T08:17:48.432212539Z","published":"2024-11-14T13:15:03.793Z","upstream":["CVE-2024-10976"],"references":[{"type":"ADVISORY","url":"https://security.alpinelinux.org/vuln/CVE-2024-10976"}],"affected":[{"package":{"name":"postgresql14","ecosystem":"Alpine:v3.17","purl":"pkg:apk/alpine/postgresql14?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"14.14-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql14","ecosystem":"Alpine:v3.18","purl":"pkg:apk/alpine/postgresql14?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"14.14-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql15","ecosystem":"Alpine:v3.17","purl":"pkg:apk/alpine/postgresql15?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"15.9-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql15","ecosystem":"Alpine:v3.18","purl":"pkg:apk/alpine/postgresql15?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"15.9-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql15","ecosystem":"Alpine:v3.19","purl":"pkg:apk/alpine/postgresql15?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"15.9-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql15","ecosystem":"Alpine:v3.20","purl":"pkg:apk/alpine/postgresql15?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"15.9-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql16","ecosystem":"Alpine:v3.19","purl":"pkg:apk/alpine/postgresql16?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"16.5-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql16","ecosystem":"Alpine:v3.20","purl":"pkg:apk/alpine/postgresql16?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"16.5-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql16","ecosystem":"Alpine:v3.21","purl":"pkg:apk/alpine/postgresql16?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"16.5-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql16","ecosystem":"Alpine:v3.22","purl":"pkg:apk/alpine/postgresql16?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"16.5-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql17","ecosystem":"Alpine:v3.21","purl":"pkg:apk/alpine/postgresql17?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"17.1-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql17","ecosystem":"Alpine:v3.22","purl":"pkg:apk/alpine/postgresql17?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"17.1-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql17","ecosystem":"Alpine:v3.23","purl":"pkg:apk/alpine/postgresql17?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"17.1-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}},{"package":{"name":"postgresql17","ecosystem":"Alpine:v3.24","purl":"pkg:apk/alpine/postgresql17?arch=source"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"17.1-r0"}]}],"ecosystem_specific":{},"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/alpine/ALPINE-CVE-2024-10976.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N"}]}