Aggiornamento PostgreSQL con correzione della vulnerabilità. pg_ivm versione 1.0

Sono stati generati aggiornamenti correttivi per tutti i rami PostgreSQL supportati: 14.3, 13.7, 12.11, 11.16 e 10.22. Il ramo 10.x si sta avvicinando alla fine del supporto (gli aggiornamenti verranno generati fino a novembre 2022). Il rilascio degli aggiornamenti per il ramo 11.x durerà fino a novembre 2023, 12.x fino a novembre 2024, 13.x fino a novembre 2025, 14.x fino a novembre 2026.

Le nuove versioni offrono più di 50 correzioni ed eliminano la vulnerabilità CVE-2022-1552 associata alla possibilità di bypassare l'isolamento dell'esecuzione delle operazioni privilegiate Autovacuum, REINDEX, CREATE INDEX, REFRESH MATERIALIZED VIEW, CLUSTER e pg_amcheck. Un utente malintenzionato con l'autorità di creare oggetti non temporanei in qualsiasi schema di archiviazione può causare l'esecuzione di funzioni SQL arbitrarie con privilegi root mentre un utente privilegiato esegue le operazioni di cui sopra che influiscono sull'oggetto dell'utente malintenzionato. In particolare, lo sfruttamento della vulnerabilità può avvenire durante la pulizia automatica del database quando viene eseguito il gestore autovacuum.

Se l'aggiornamento non è possibile, la soluzione alternativa per bloccare il problema è disabilitare l'autovacuum e non eseguire le operazioni REINDEX, CREATE INDEX, REFRESH MATERIALIZED VIEW e CLUSTER come utente root e non eseguire pg_amcheck o ripristinare il contenuto da un backup creato da pg_dump . L'esecuzione di VACUUM è considerata sicura, così come qualsiasi operazione di comando, purché gli oggetti elaborati siano di proprietà di utenti fidati.

Altre modifiche nelle nuove versioni includono l'aggiornamento del codice JIT per funzionare con LLVM 14, consentendo l'uso di modelli database.schema.table nelle utilità psql, pg_dump e pg_amcheck, risolvendo problemi che portano alla corruzione degli indici GiST sulle colonne ltree, errori arrotondamento dei valori nel formato epoch estratto dai dati dell'intervallo, funzionamento errato dello scheduler quando si utilizzano query remote asincrone, ordinamento errato delle righe della tabella quando si utilizza l'espressione CLUSTER su indici con chiavi basate su espressione, perdita di dati per terminazione anomala immediatamente dopo costruzione di un indice ordinato GiST, deadlock durante l'eliminazione dell'indice partizionato, race condition tra l'operazione DROP TABLESPACE e il checkpoint.

Inoltre, possiamo notare il rilascio dell'estensione pg_ivm 1.0 con l'implementazione del supporto IVM (Incremental View Maintenance) per PostgreSQL 14. IVM offre un modo alternativo per aggiornare le viste materializzate, più efficace se le modifiche interessano una piccola parte della vista. IVM consente l'aggiornamento istantaneo delle viste materializzate solo con modifiche incrementali, senza ricalcolare la vista utilizzando l'operazione AGGIORNA VISTA MATERIALIZZATA.

Fonte: opennet.ru

Aggiungi un commento