58bd67f68b
The PostgreSQL Global Development Group has released an update to all supported versions of PostgreSQL, including 14.3, 13.7, 12.11, 11.16, and 10.21. This release closes one security vulnerability and fixes over 50 bugs reported over the last three months. CVE-2022-1552: Autovacuum, REINDEX, and others omit "security restricted operation" sandbox. Versions Affected: 10 - 14. The security team typically does not test unsupported versions, but this problem is quite old. Autovacuum, REINDEX, CREATE INDEX, REFRESH MATERIALIZED VIEW, CLUSTER, and pg_amcheck made incomplete efforts to operate safely when a privileged user is maintaining another user's objects. Those commands activated relevant protections too late or not at all. An attacker having permission to create non-temp objects in at least one schema could execute arbitrary SQL functions under a superuser identity. While promptly updating PostgreSQL is the best remediation for most users, a user unable to do that can work around the vulnerability by disabling autovacuum, not manually running the above commands, and not restoring from output of the pg_dump command. Performance may degrade quickly under this workaround. VACUUM is safe, and all commands are fine when a trusted user owns the target object. Bug Fixes and Improvements This update fixes over 50 bugs that were reported in the last several months. The issues listed below affect PostgreSQL 14. Some of these issues may also affect other supported versions of PostgreSQL. Included in this release: Fix issue that could lead to corruption of GiST indexes on ltree columns. After upgrading, you will need to reindex any GiST indexes on ltree columns. Column names in tuples produced by a whole-row variable (e.g. tbl.*) outside of a top-level of a SELECT list are now always associated with those of the associated named composite type, if there is one. The release notes detail a workaround if you depend on the previous behavior. Fix incorrect rounding when extracting epoch values from interval types. Prevent issues with calling pg_stat_get_replication_slot(NULL). Fix incorrect output for types timestamptz and timetz in table_to_xmlschema(). Fix errors related to a planner issue that affected asynchronous remote queries. Fix planner failure if a query using SEARCH or CYCLE features contains a duplicate common-table expression (WITH) name. Fix ALTER FUNCTION to support changing a function's parallelism property and its SET-variable list in the same command. Fix incorrect sorting of table rows when using CLUSTER on an index whose leading key is an expression. Prevent data loss if a system crash occurs shortly after a sorted GiST index build. Fix risk of deadlock failures while dropping a partitioned index. Fix race condition between DROP TABLESPACE and checkpointing that could fail to remove all dead files from the tablespace directory. Fix potential issue in crash recovery after a TRUNCATE command that overlaps with a checkpoint. Re-allow _ as the first character in a custom configuration parameter name. Fix PANIC: xlog flush request is not satisfied failure during standby promotion when there is a missing WAL continuation record. Fix possibility of self-deadlock in hot standby conflict handling. Ensure that logical replication apply workers can be restarted when the server is near the max_sync_workers_per_subscription limit. Disallow execution of SPI functions during PL/Perl function compilation. libpq now accepts root-owned SSL private key files, which matches the rules the server has used since the 9.6 release. Re-allow database.schema.table patterns in psql, pg_dump, and pg_amcheck. Several fixes for pageinspect to improve overall stability. Disable batch insertion in postgres_fdw when BEFORE INSERT ... FOR EACH ROW triggers exist on the foreign table. Update JIT code to work with LLVM 14. |
||
---|---|---|
.. | ||
DESCR | ||
Makefile | ||
PLIST |