-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Format: 1.8 Date: Tue, 12 Nov 2024 15:06:10 +0100 Source: postgresql-15 Architecture: source Version: 15.9-0+deb12u1 Distribution: bookworm-security Urgency: medium Maintainer: Debian PostgreSQL Maintainers Changed-By: Christoph Berg Changes: postgresql-15 (15.9-0+deb12u1) bookworm-security; urgency=medium . * New upstream version 15.9. . + Ensure cached plans are marked as dependent on the calling role when RLS applies to a non-top-level table reference (Nathan Bossart) . If a CTE, subquery, sublink, security invoker view, or coercion projection in a query references a table with row-level security policies, we neglected to mark the resulting plan as potentially dependent on which role is executing it. This could lead to later query executions in the same session using the wrong plan, and then returning or hiding rows that should have been hidden or returned instead. . The PostgreSQL Project thanks Wolfgang Walther for reporting this problem. (CVE-2024-10976) . + Make libpq discard error messages received during SSL or GSS protocol negotiation (Jacob Champion) . An error message received before encryption negotiation is completed might have been injected by a man-in-the-middle, rather than being real server output. Reporting it opens the door to various security hazards; for example, the message might spoof a query result that a careless user could mistake for correct output. The best answer seems to be to discard such data and rely only on libpq's own report of the connection failure. . The PostgreSQL Project thanks Jacob Champion for reporting this problem. (CVE-2024-10977) . + Fix unintended interactions between SET SESSION AUTHORIZATION and SET ROLE (Tom Lane) . The SQL standard mandates that SET SESSION AUTHORIZATION have a side-effect of doing SET ROLE NONE. Our implementation of that was flawed, creating more interaction between the two settings than intended. Notably, rolling back a transaction that had done SET SESSION AUTHORIZATION would revert ROLE to NONE even if that had not been the previous state, so that the effective user ID might now be different from what it had been before the transaction. Transiently setting session_authorization in a function SET clause had a similar effect. A related bug was that if a parallel worker inspected current_setting('role'), it saw none even when it should see something else. . The PostgreSQL Project thanks Tom Lane for reporting this problem. (CVE-2024-10978) . + Prevent trusted PL/Perl code from changing environment variables (Andrew Dunstan, Noah Misch) . The ability to manipulate process environment variables such as PATH gives an attacker opportunities to execute arbitrary code. Therefore, trusted PLs must not offer the ability to do that. To fix plperl, replace %ENV with a tied hash that rejects any modification attempt with a warning. Untrusted plperlu retains the ability to change the environment. . The PostgreSQL Project thanks Coby Abrams for reporting this problem. (CVE-2024-10979) Checksums-Sha1: 5d58930731dd7e70c1bb7b604f3e150b0815c26f 3919 postgresql-15_15.9-0+deb12u1.dsc 9ca995047123ef23e155cd4f5889d50041417bf1 23135232 postgresql-15_15.9.orig.tar.bz2 3b28011b4b3dc9b5a4513252da97d898548c9250 27052 postgresql-15_15.9-0+deb12u1.debian.tar.xz Checksums-Sha256: 460a683e3107d8912129f0bbeb49aebe5d4a23c1a804e1c877d420b9bacd775e 3919 postgresql-15_15.9-0+deb12u1.dsc 74f2d4565035f0cf729ecb059949faaf1102cbd93759b359822f98f82198c783 23135232 postgresql-15_15.9.orig.tar.bz2 9ebb91c68e098afc8d93c0122810926e15740d4cbe162a52a500d17835c81832 27052 postgresql-15_15.9-0+deb12u1.debian.tar.xz Files: 0b1021549b82e1aaed4ff82ad03dd035 3919 database optional postgresql-15_15.9-0+deb12u1.dsc 9eb98b92696f138ace0fff35ea965168 23135232 database optional postgresql-15_15.9.orig.tar.bz2 fc06f1e10e5a050dcb6232f53889bb9c 27052 database optional postgresql-15_15.9-0+deb12u1.debian.tar.xz -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEXEj+YVf0kXlZcIfGTFprqxLSp64FAmczag0ACgkQTFprqxLS p67j8Q/5AS10SME8WmbF/SIkld5TD8N+5EsuaPrVwxdGDLfMQJ+A38QFeXJMDois ObP39sc6IMHqEkgXYoxt4URIEIr0m6s9dANz8GL1fqrQRBLJgPB/J3oFBxDTFtIN Ai8xLWN48OThH3OS9JFzWohR4fK695nWskKiYOlNAOZDU089aU1wH3s61qXjXtqQ D2e51X4K4dwImSb/XUvXpvv5/4SxLuOf2xb+QkxnaND9ONdZqOFIBv9h6GBNsAFD ULyKhsEPP+qgg+fug/Khh79iYApOGM1kQDWxSj60RiyxxxEJ6G+0XQ/tO2kETg8h YUxNbjDSLrloOPOM2GyJeJSiByeGS3iJDZfkN5yDO/XZQsHdV9g9+Dbf1RBlVEOW 44mQO1sjQIkPI03DK69suX3WdxQHeB5JhZ0F6ISzRJdwozchAVKaObQSl1h30SMy iYzKnRbFbxzR0LbmBKoeo/HMkrjo+KQv+qmCNmOxPKWHWA00FuL1bGYc+vvmFk5I RrDPUoxf1ttmWig6P1oYQJhnX3hxcPuBOSk/X+w/nNwSfF4G0WSJxhISnW8tYYau HrxZTqbodTVQTiuIKMHGP9QL20A9/dKL/d/D6GzbLOF5Y4sNPN+lN1jHpcZvsjpt hFWCUEwqC7QoSrFgBSgjzlZYtgkEtvDwwICctSXR69tLBin3WsE= =L/Aj -----END PGP SIGNATURE-----