Skip to content

Commit 585e8ff

Browse files
committed
Last-minute updates for release notes.
Security: CVE-2019-10129, CVE-2019-10130
1 parent 40353bc commit 585e8ff

File tree

1 file changed

+39
-0
lines changed

1 file changed

+39
-0
lines changed

doc/src/sgml/release-10.sgml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,28 @@
3333

3434
<itemizedlist>
3535

36+
<listitem>
37+
<para>
38+
Prevent row-level security policies from being bypassed via
39+
selectivity estimators (Dean Rasheed)
40+
</para>
41+
42+
<para>
43+
Some of the planner's selectivity estimators apply user-defined
44+
operators to values found in <structname>pg_statistic</structname>
45+
(e.g., most-common values). A leaky operator therefore can disclose
46+
some of the entries in a data column, even if the calling user lacks
47+
permission to read that column. In CVE-2017-7484 we added
48+
restrictions to forestall that, but we failed to consider the
49+
effects of row-level security. A user who has SQL permission to
50+
read a column, but who is forbidden to see certain rows due to RLS
51+
policy, might still learn something about those rows' contents via a
52+
leaky operator. This patch further tightens the rules, allowing
53+
leaky operators to be applied to statistics data only when there is
54+
no relevant RLS policy. (CVE-2019-10130)
55+
</para>
56+
</listitem>
57+
3658
<listitem>
3759
<para>
3860
Avoid catalog corruption when a temporary table with <literal>ON
@@ -263,6 +285,23 @@
263285
</para>
264286
</listitem>
265287

288+
<listitem>
289+
<para>
290+
Check the appropriate user's permissions when enforcing rules about
291+
letting a leaky operator see <structname>pg_statistic</structname>
292+
data (Dean Rasheed)
293+
</para>
294+
295+
<para>
296+
When an underlying table is being accessed via a view, consider the
297+
privileges of the view owner while deciding whether leaky operators
298+
may be applied to the table's statistics data, rather than the
299+
privileges of the user making the query. This makes the planner's
300+
rules about what data is visible match up with the executor's,
301+
avoiding unnecessarily-poor plans.
302+
</para>
303+
</listitem>
304+
266305
<listitem>
267306
<para>
268307
Speed up planning when there are many equality conditions and many

0 commit comments

Comments
 (0)