Обсуждение: pgsql: Check for CREATE privilege on the schema in CREATE STATISTICS.

Поиск
Список
Период
Сортировка

pgsql: Check for CREATE privilege on the schema in CREATE STATISTICS.

От
Nathan Bossart
Дата:
Check for CREATE privilege on the schema in CREATE STATISTICS.

This omission allowed table owners to create statistics in any
schema, potentially leading to unexpected naming conflicts.  For
ALTER TABLE commands that require re-creating statistics objects,
skip this check in case the user has since lost CREATE on the
schema.  The addition of a second parameter to CreateStatistics()
breaks ABI compatibility, but we are unaware of any impacted
third-party code.

Reported-by: Jelte Fennema-Nio <postgres@jeltef.nl>
Author: Jelte Fennema-Nio <postgres@jeltef.nl>
Co-authored-by: Nathan Bossart <nathandbossart@gmail.com>
Reviewed-by: Noah Misch <noah@leadboat.com>
Reviewed-by: Álvaro Herrera <alvherre@kurilemu.de>
Security: CVE-2025-12817
Backpatch-through: 13

Branch
------
REL_14_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/95cce56696867c7629d12c3ba1da8edd5bedaa8e

Modified Files
--------------
src/backend/commands/statscmds.c        | 16 +++++++++++++++-
src/backend/commands/tablecmds.c        |  2 +-
src/backend/tcop/utility.c              |  2 +-
src/include/commands/defrem.h           |  2 +-
src/test/regress/expected/stats_ext.out | 19 +++++++++++++++++++
src/test/regress/sql/stats_ext.sql      | 19 +++++++++++++++++++
6 files changed, 56 insertions(+), 4 deletions(-)