Correcties zijn gemaakt voor alle ondersteunde versies van PostgreSQL: 14.3, 13.7, 12.11, 11.16 en 10.22. De 10.x tak nadert het einde van de ondersteuning (updates worden tot november 2022 verstrekt). De updates voor de 11.x tak gaan door tot november 2023, 12.x - tot november 2024, 13.x - tot november 2025, en 14.x - tot november 2026.
In de nieuwe versies zijn meer dan 50 correcties aangebracht en is de kwetsbaarheid CVE-2022-1552 verholpen, die verband houdt met de mogelijkheid om de isolatie van geprivileerde Autovacuum-bewerkingen, REINDEX, CREATE INDEX, REFRESH MATERIALIZED VIEW, CLUSTER en pg_amcheck te omzeilen. Een aanvaller met de bevoegdheid om niet-tijdelijke objecten in elk opslagschema te creëren, kan het uitvoeren van willekeurige SQL-functies met supergebruikersrechten bereiken tijdens de uitvoering van deze geprivileerde bewerkingen die het object van de aanvaller raakt. Het uitbuiten van de kwetsbaarheid kan ook plaatsvinden tijdens de automatische schoonmaak van de database tijdens de uitvoering van de autovacuum-handler.
Als het onmogelijk is om een update uit te voeren, kan als een manier om het probleem te omzeilen, autovacuum worden uitgeschakeld en kunnen de geprivilegieerde bewerkingen REINDEX, CREATE INDEX, REFRESH MATERIALIZED VIEW en CLUSTER worden vermeden, evenals het niet uitvoeren van de pg_amcheck utility en het niet herstellen van de inhoud uit een back-up die is gemaakt met de pg_dump utility. Het uitvoeren van VACUUM wordt als veilig beschouwd, evenals het toepassen van welke bewerkingen dan ook, zolang de te verwerken objecten behoren tot vertrouwde gebruikers.
Andere wijzigingen in de nieuwe releases zijn onder andere de actualisatie van de JIT-code om samen te werken met LLVM 14, de mogelijkheid om database.schema.table sjablonen te gebruiken in de psql, pg_dump en pg_amcheck utilities, en het verhelpen van problemen die leiden tot de beschadiging van GiST-indexen op ltree-kolommen, onjuiste afronding van waarden in epoch-formaat, verkregen uit interval-gegevens, onjuiste werking van de planner bij het gebruik van asynchrone externe aanvragen, onjuiste sortering van tabelrijen bij gebruik van de CLUSTER-expressie op indexen met op expressies gebaseerde sleutels, gegevensverlies bij een crash onmiddellijk na het bouwen van een gesorteerde GiST-index, wederzijdse blokkerigheid bij het verwijderen van een gepartitioneerde index, en een race-conditie tussen de DROP TABLESPACE-bewerking en de checkpoint-fixatie.
Daarnaast kan worden opgemerkt dat de uitbreiding pg_ivm 1.0 is uitgebracht met ondersteuning voor IVM (Incremental View Maintenance) voor PostgreSQL 14. IVM biedt een alternatieve manier om materialized views bij te werken, wat efficiënter is als de wijzigingen een klein deel van de weergave raken. IVM maakt het mogelijk om materialized views onmiddellijk bij te werken door alleen incrementele wijzigingen toe te passen, zonder de weergave opnieuw te berekenen zoals bij de operatie 'REFRESH MATERIALIZED VIEW'.
Bron: opennet.ru
