FreeBSD VuXML: Documenting security issues in FreeBSD and the FreeBSD Ports Collection

postgresql-server -- Row security policies disregard user ID changes after inlining

Affected packages
postgresql-server < 15.3
postgresql-server < 14.8
postgresql-server < 13.11
postgresql-server < 12.15
postgresql-server < 11.20

Details

VuXML ID 4b636f50-f011-11ed-bbae-6cc21735f730
Discovery 2023-05-11
Entry 2023-05-11

PostgreSQL Project reports

While CVE-2016-2193 fixed most interaction between row security and user ID changes, it missed a scenario involving function inlining. This 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.

References

CVE Name CVE-2023-2455
URL https://www.postgresql.org/support/security/CVE-2023-2455/