Sono stati rilasciati aggiornamenti correttivi per tutti i rami supportati di PostgreSQL: 13.3, 12.7, 11.12, 10.17 e 9.6.22. Gli aggiornamenti per il ramo 9.6 saranno forniti fino a novembre 2021, per 10 fino a novembre 2022, per 11 fino a novembre 2023, per 12 fino a novembre 2024 e per 13 fino a novembre 2025. Nei nuovi rilasci sono state risolte tre vulnerabilità e corretti errori accumulati.
La vulnerabilità CVE-2021-32027 può portare alla scrittura di dati oltre i limiti del buffer a causa di un overflow intero durante il calcolo degli indici degli array. Manipolando i valori degli array in query SQL, un aggressore con accesso all'esecuzione di query SQL può scrivere qualsiasi dato in un'area di memoria arbitraria del processo e ottenere l'esecuzione del proprio codice con i diritti della server DBMS. Le altre due vulnerabilità (CVE-2021-32028, CVE-2021-32029) causano una fuoriuscita dei contenuti della memoria del processo durante la manipolazione delle query 'INSERT ... ON CONFLICT ... DO UPDATE' e 'UPDATE ... RETURNING'.
Tra le correzioni non legate a vulnerabilità si possono evidenziare:
- Correzione di calcoli errati durante l'esecuzione di 'UPDATE ... RETURNING' per l'aggiornamento di tabelle segmentate unite.
- Risoluzione del problema con il comando «ALTER TABLE … ALTER CONSTRAINT» in presenza di vincoli per le chiavi esterne con l'uso di tabelle segmentate.
- Funzionalità «COMMIT AND CHAIN» funzionante.
- Per le nuove versioni di FreeBSD, impostato di default il metodo fdatasync in thatwal_sync_method.
- Disattivato di default il parametro vacuum_cleanup_index_scale_factor.
- Corrette perdite di memoria che si verificano durante l'inizializzazione delle connessioni TLS.
- In pg_upgrade sono state aggiunte ulteriori verifiche per i tipi di dati nelle tabelle utente che non possono essere aggiornati.
Fonte: opennet.ru
