CVE-2023-2455

NameCVE-2023-2455
DescriptionRow security policies disregard user ID changes after inlining; PostgreSQL could permit incorrect policies to be applied in certain 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.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDLA-3422-1, DSA-5401-1, ELA-880-1

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
postgresql-11 (PTS)buster, buster (lts)11.22-0+deb10u3fixed
buster (security)11.22-0+deb10u2fixed
postgresql-13 (PTS)bullseye13.16-0+deb11u1fixed
bullseye (security)13.18-0+deb11u1fixed
postgresql-15 (PTS)bookworm15.8-0+deb12u1fixed
bookworm (security)15.10-0+deb12u1fixed
postgresql-9.4 (PTS)jessie, jessie (lts)9.4.26-0+deb8u10fixed
postgresql-9.6 (PTS)stretch (security)9.6.24-0+deb9u1vulnerable
stretch (lts), stretch9.6.24-0+deb9u7fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
postgresql-11sourcebuster11.20-0+deb10u1DLA-3422-1
postgresql-11source(unstable)(unfixed)
postgresql-13sourcebullseye13.11-0+deb11u1DSA-5401-1
postgresql-13source(unstable)(unfixed)
postgresql-15source(unstable)15.3-0+deb12u1
postgresql-9.4sourcejessie(not affected)
postgresql-9.4source(unstable)(unfixed)
postgresql-9.6sourcestretch9.6.24-0+deb9u4ELA-880-1
postgresql-9.6source(unstable)(unfixed)

Notes

https://www.postgresql.org/about/news/postgresql-153-148-1311-1215-and-1120-released-2637/
https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=473626cf00babd829eb15c36b51dfb358d32bc95 (REL_11_20)
[jessie] - postgresql-9.4 <not-affected> (Vulnerable code introduced later)
Introduced by optimization in 9.6: https://github.com/postgres/postgres/commit/45639a0525a58a2700cf46d4c934d6de78349dac

Search for package or bug name: Reporting problems