Re: Multivariate MCV stats can leak data to unprivileged users

Andres Freund <andres@anarazel.de>

From: Andres Freund <andres@anarazel.de>
To: Dean Rasheed <dean.a.rasheed@gmail.com>
Cc: Tomas Vondra <tomas.vondra@2ndquadrant.com>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2019-05-17T20:29:38Z
Lists: pgsql-hackers
Hi,

On 2019-05-16 14:28:03 +0100, Dean Rasheed wrote:
> 5). Some columns from pg_statistic_ext have to be made visible for
> psql \d to work. Basically, it needs to be able to query for the
> existence of extended statistics, but it doesn't need to see the
> actual statistical data. Of course, we could change psql to use the
> view, but this way gives us better backwards compatibility with older
> clients.
> 
> This is still going to break compatibility of any user code looking at
> stxndistinct or stxdependencies from pg_statistic_ext, but at least it
> doesn't break old versions of psql.

Hm, it's not normally a goal to keep old psql working against new
postgres versions. And there's plenty other issues preventing a v11 psql
to work against 12. I'd not let this guide any design decisions.


Greetings,

Andres Freund



Commits

  1. Add security checks to the multivariate MCV estimation code.

  2. Add pg_stats_ext view for extended statistics

  3. Rework the pg_statistic_ext catalog