Skip to content

Commit 052aa02

Browse files
committed
Last-minute updates for release notes.
Security: CVE-2024-10976, CVE-2024-10977, CVE-2024-10978, CVE-2024-10979
1 parent f4f5d27 commit 052aa02

File tree

1 file changed

+179
-2
lines changed

1 file changed

+179
-2
lines changed

doc/src/sgml/release-17.sgml

Lines changed: 179 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
However, if you have ever detached a partition from a partitioned
2727
table that has a foreign-key reference to another partitioned table,
2828
and not dropped the former partition, then you may have catalog and/or
29-
data corruption to repair, as detailed in the first changelog entry
29+
data corruption to repair, as detailed in the fifth changelog entry
3030
below.
3131
</para>
3232

@@ -35,7 +35,7 @@
3535
database's <varname>LC_CTYPE</varname> setting is <literal>C</literal>
3636
while its <varname>LC_COLLATE</varname> setting is some other locale,
3737
indexes on textual columns should be reindexed, as described in the
38-
second changelog entry below.
38+
sixth changelog entry below.
3939
</para>
4040
</sect2>
4141

@@ -46,6 +46,183 @@
4646

4747
<listitem>
4848
<!--
49+
Author: Nathan Bossart <nathan@postgresql.org>
50+
Branch: master [cd7ab5753] 2024-11-11 09:00:00 -0600
51+
Branch: REL_17_STABLE [edcda9bb4] 2024-11-11 09:00:00 -0600
52+
Branch: REL_16_STABLE [562289460] 2024-11-11 09:00:00 -0600
53+
Branch: REL_15_STABLE [6db5ea8de] 2024-11-11 09:00:00 -0600
54+
Branch: REL_14_STABLE [4e51030af] 2024-11-11 09:00:00 -0600
55+
Branch: REL_13_STABLE [952ff31e2] 2024-11-11 09:00:00 -0600
56+
Branch: REL_12_STABLE [448525e8a] 2024-11-11 09:00:00 -0600
57+
-->
58+
<para>
59+
Ensure cached plans are marked as dependent on the calling role when
60+
RLS applies to a non-top-level table reference (Nathan Bossart)
61+
<ulink url="&commit_baseurl;edcda9bb4">&sect;</ulink>
62+
</para>
63+
64+
<para>
65+
If a CTE, subquery, sublink, security invoker view, or coercion
66+
projection in a query references a table with row-level security
67+
policies, we neglected to mark the resulting plan as potentially
68+
dependent on which role is executing it. This could lead to later
69+
query executions in the same session using the wrong plan, and then
70+
returning or hiding rows that should have been hidden or returned
71+
instead.
72+
</para>
73+
74+
<para>
75+
The <productname>PostgreSQL</productname> Project thanks
76+
Wolfgang Walther for reporting this problem.
77+
(CVE-2024-10976)
78+
</para>
79+
</listitem>
80+
81+
<listitem>
82+
<!--
83+
Author: Michael Paquier <michael@paquier.xyz>
84+
Branch: master [bf8835ea9] 2024-11-11 10:19:52 +0900
85+
Branch: REL_17_STABLE [a5cc4c667] 2024-11-11 10:19:56 +0900
86+
Branch: REL_16_STABLE [67d28bd02] 2024-11-11 10:19:58 +0900
87+
Branch: REL_15_STABLE [d2c3e31c1] 2024-11-11 10:19:59 +0900
88+
Branch: REL_14_STABLE [e6c945476] 2024-11-11 10:20:01 +0900
89+
Branch: REL_13_STABLE [7b49707b7] 2024-11-11 10:20:02 +0900
90+
Branch: REL_12_STABLE [2a951ef0a] 2024-11-11 10:20:03 +0900
91+
-->
92+
<para>
93+
Make <application>libpq</application> discard error messages
94+
received during SSL or GSS protocol negotiation (Jacob Champion)
95+
<ulink url="&commit_baseurl;a5cc4c667">&sect;</ulink>
96+
</para>
97+
98+
<para>
99+
An error message received before encryption negotiation is completed
100+
might have been injected by a man-in-the-middle, rather than being
101+
real server output. Reporting it opens the door to various security
102+
hazards; for example, the message might spoof a query result that a
103+
careless user could mistake for correct output. The best answer
104+
seems to be to discard such data and rely only
105+
on <application>libpq</application>'s own report of the connection
106+
failure.
107+
</para>
108+
109+
<para>
110+
The <productname>PostgreSQL</productname> Project thanks
111+
Jacob Champion for reporting this problem.
112+
(CVE-2024-10977)
113+
</para>
114+
</listitem>
115+
116+
<listitem>
117+
<!--
118+
Author: Tom Lane <tgl@sss.pgh.pa.us>
119+
Branch: master [5a2fed911] 2024-11-11 10:29:54 -0500
120+
Branch: REL_17_STABLE [cd82afdda] 2024-11-11 10:29:54 -0500
121+
Branch: REL_16_STABLE [ae340d031] 2024-11-11 10:29:54 -0500
122+
Branch: REL_15_STABLE [a5d2e6205] 2024-11-11 10:29:54 -0500
123+
Branch: REL_14_STABLE [2a68808e2] 2024-11-11 10:29:54 -0500
124+
Branch: REL_13_STABLE [76123ded6] 2024-11-11 10:29:54 -0500
125+
Branch: REL_12_STABLE [4c9d96f74] 2024-11-11 10:29:54 -0500
126+
Branch: master [73c9f91a1] 2024-11-11 17:05:53 -0500
127+
Branch: REL_17_STABLE [f4f5d27d8] 2024-11-11 17:05:53 -0500
128+
Branch: REL_16_STABLE [95f5a5237] 2024-11-11 17:05:53 -0500
129+
Branch: REL_15_STABLE [109a32380] 2024-11-11 17:05:53 -0500
130+
Branch: REL_14_STABLE [00b94e8e2] 2024-11-11 17:05:53 -0500
131+
Branch: REL_13_STABLE [dc7378793] 2024-11-11 17:05:53 -0500
132+
Branch: REL_12_STABLE [0edad8654] 2024-11-11 17:05:53 -0500
133+
-->
134+
<para>
135+
Fix unintended interactions between <command>SET SESSION
136+
AUTHORIZATION</command> and <command>SET ROLE</command> (Tom Lane)
137+
<ulink url="&commit_baseurl;cd82afdda">&sect;</ulink>
138+
<ulink url="&commit_baseurl;f4f5d27d8">&sect;</ulink>
139+
</para>
140+
141+
<para>
142+
The SQL standard mandates that <command>SET SESSION
143+
AUTHORIZATION</command> have a side-effect of doing <command>SET
144+
ROLE NONE</command>. Our implementation of that was flawed,
145+
creating more interaction between the two settings than intended.
146+
Notably, rolling back a transaction that had done <command>SET
147+
SESSION AUTHORIZATION</command> would revert <literal>ROLE</literal>
148+
to <literal>NONE</literal> even if that had not been the previous
149+
state, so that the effective user ID might now be different from
150+
what it had been before the transaction. Transiently
151+
setting <varname>session_authorization</varname> in a
152+
function <literal>SET</literal> clause had a similar effect.
153+
A related bug was that if a parallel worker
154+
inspected <literal>current_setting('role')</literal>, it
155+
saw <literal>none</literal> even when it should see something else.
156+
</para>
157+
158+
<para>
159+
The <productname>PostgreSQL</productname> Project thanks
160+
Tom Lane for reporting this problem.
161+
(CVE-2024-10978)
162+
</para>
163+
</listitem>
164+
165+
<listitem>
166+
<!--
167+
Author: Noah Misch <noah@leadboat.com>
168+
Branch: master [b7e3a52a8] 2024-11-11 06:23:43 -0800
169+
Branch: REL_17_STABLE [3ebcfa54d] 2024-11-11 06:23:46 -0800
170+
Branch: REL_16_STABLE [8fe3e697a] 2024-11-11 06:23:47 -0800
171+
Branch: REL_15_STABLE [e530835c6] 2024-11-11 06:23:47 -0800
172+
Branch: REL_14_STABLE [d15ec27c9] 2024-11-11 06:23:47 -0800
173+
Branch: REL_13_STABLE [e428cd058] 2024-11-11 06:23:48 -0800
174+
Branch: REL_12_STABLE [2ab12d860] 2024-11-11 06:23:48 -0800
175+
Author: Tom Lane <tgl@sss.pgh.pa.us>
176+
Branch: REL_14_STABLE [f89bd92c9] 2024-11-11 10:42:32 -0500
177+
Branch: REL_13_STABLE [6bccd7b03] 2024-11-11 10:42:32 -0500
178+
Branch: REL_12_STABLE [b1e58defb] 2024-11-11 10:42:32 -0500
179+
Branch: master [a34c33fd2] 2024-11-11 12:20:08 -0500
180+
Branch: REL_17_STABLE [4cd4f3b97] 2024-11-11 12:20:08 -0500
181+
Branch: REL_16_STABLE [88269df4d] 2024-11-11 12:20:08 -0500
182+
Branch: REL_16_STABLE [168579e23] 2024-11-11 12:27:06 -0500
183+
Author: Noah Misch <noah@leadboat.com>
184+
Branch: REL_16_STABLE [c335264c9] 2024-11-11 10:55:18 -0800
185+
Branch: REL_15_STABLE [16ed4f4d0] 2024-11-11 10:56:05 -0800
186+
Branch: REL_14_STABLE [c1fff7b1b] 2024-11-11 10:56:09 -0800
187+
Branch: REL_13_STABLE [9f97c31c2] 2024-11-11 10:56:12 -0800
188+
Branch: REL_12_STABLE [1e457468f] 2024-11-11 10:56:14 -0800
189+
Author: Tom Lane <tgl@sss.pgh.pa.us>
190+
Branch: master [c4252c9ef] 2024-11-11 13:57:21 -0500
191+
Branch: REL_17_STABLE [8d19f3fea] 2024-11-11 13:57:21 -0500
192+
Branch: REL_16_STABLE [64df88700] 2024-11-11 13:57:40 -0500
193+
Branch: REL_15_STABLE [c834b375a] 2024-11-11 13:57:41 -0500
194+
Branch: REL_14_STABLE [256e34653] 2024-11-11 13:57:41 -0500
195+
Branch: REL_13_STABLE [0bd9560d9] 2024-11-11 13:57:41 -0500
196+
Branch: REL_12_STABLE [9fc1c3a02] 2024-11-11 13:57:41 -0500
197+
-->
198+
<para>
199+
Prevent trusted PL/Perl code from changing environment variables
200+
(Andrew Dunstan, Noah Misch)
201+
<ulink url="&commit_baseurl;3ebcfa54d">&sect;</ulink>
202+
<ulink url="&commit_baseurl;4cd4f3b97">&sect;</ulink>
203+
<ulink url="&commit_baseurl;8d19f3fea">&sect;</ulink>
204+
</para>
205+
206+
<para>
207+
The ability to manipulate process environment variables such
208+
as <literal>PATH</literal> gives an attacker opportunities to
209+
execute arbitrary code. Therefore, <quote>trusted</quote> PLs must
210+
not offer the ability to do that. To fix <literal>plperl</literal>,
211+
replace <varname>%ENV</varname> with a tied hash that rejects any
212+
modification attempt with a warning.
213+
Untrusted <literal>plperlu</literal> retains the ability to change
214+
the environment.
215+
</para>
216+
217+
<para>
218+
The <productname>PostgreSQL</productname> Project thanks
219+
Coby Abrams for reporting this problem.
220+
(CVE-2024-10979)
221+
</para>
222+
</listitem>
223+
224+
<listitem>
225+
<!--
49226
Author: Álvaro Herrera <alvherre@alvh.no-ip.org>
50227
Branch: master [53af9491a] 2024-10-22 16:01:18 +0200
51228
Branch: REL_17_STABLE [5914a22f6] 2024-10-22 16:01:18 +0200

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy