È stata pubblicata la release del server Apache HTTP 2.4.58 che introduce 33 modifiche ed elimina tre vulnerabilità, due delle quali legate alla possibilità di effettuare un attacco DoS su sistemi utilizzando il protocollo HTTP/2.
- CVE-2023-45802 Viene creata una condizione di esaurimento della memoria a causa di una deallocazione ritardata della memoria dopo che un flusso HTTP/2 viene reimpostato da un pacchetto con il flag RST. Poiché la memoria non viene rilasciata immediatamente dopo l'elaborazione del flag RST, ma solo dopo la chiusura della connessione, un utente malintenzionato può aumentare significativamente il consumo di memoria inviando nuove richieste e scaricandole con un pacchetto RST, ma senza chiudere la connessione.
- CVE-2023-43622 – L'elaborazione della connessione HTTP/2 si blocca a tempo indeterminato se è stata aperta con la dimensione iniziale della finestra scorrevole impostata su 0. La vulnerabilità può essere utilizzata per causare una negazione del servizio superando il limite del numero massimo consentito di connessioni aperte.
- CVE-2023-31122 è una vulnerabilità in mod_macro che consente la lettura dei dati da un'area esterna al buffer allocato.
Tra le modifiche non legate alla sicurezza:
- mod_http2 aggiunge il supporto per l'utilizzo del protocollo WebSocket su un flusso in una connessione HTTP/2 (RFC 8441). Per abilitare WebSocket su HTTP/2, è stata proposta la direttiva 'H2WebSockets on|off'.
- Aggiunta la direttiva "H2EarlyHint name value" a mod_http2 per aggiungere intestazioni alla risposta "103 Early Hints".
- Aggiunta la direttiva "H2ProxyRequests on|off" a mod_http2 per controllare se l'elaborazione delle richieste HTTP/2 è abilitata nella configurazione del proxy.
- La direttiva 'H2MaxDataFrameLen n' è stata aggiunta a mod_http2 per limitare la dimensione massima del corpo della risposta in byte trasmessi in un frame DATA in HTTP/2. Il limite predefinito è 16KB.
- Aggiornato il file mime.types, in cui l'estensione ".js" è legata al tipo 'text/javascript' invece che a 'application/javascript' e aggiunte le estensioni: ".mjs" (con il tipo 'text/javascript' ) e ".opus" ('audio/ogg'). Aggiunti tipi MIME ed estensioni utilizzati in WebAssembly.
- Il modulo mod_tls (un'alternativa a mod_ssl nel linguaggio Rust) è stato tradotto per utilizzare la libreria rugginels-ffi 0.9.2+.
- Aggiunta la direttiva 'MDMatchNames all|servernames' al modulo mod_md per controllare come gli MDomains vengono abbinati ai contenuti VirtualHosts.
- La direttiva 'MDChallengeDns01Version' è stata aggiunta al modulo mod_md per selezionare la versione del protocollo ACME utilizzata per la verifica DNS.
- In mod_md è consentito l'uso della direttiva MDChallengeDns01 per i singoli domini.
- Aggiunta la direttiva 'DavBasePath' a mod_dav per configurare il percorso alla radice del repository WebDav.
- Aggiunta la direttiva 'AliasPreservePath' a mod_alias per utilizzare il valore Alias nel blocco Location come percorso completo.
- Aggiunta la direttiva "RedirectRelative" a mod_alias, consentendo il reindirizzamento utilizzando percorsi relativi.
- Gli identificatori di formato %{z} e %{strftime-format} sono stati aggiunti alla direttiva ErrorLogFormat.
- Aggiunta la direttiva 'DeflateAlterETag' a mod_deflate per controllare come cambia ETag quando viene utilizzata la compressione.
- Le prestazioni della funzione send_brigade_nonblocking() sono state ottimizzate.
- Mod_status garantisce che le chiavi duplicate "BusyWorkers" e "IdleWorkers" vengano rimosse e venga aggiunto un nuovo contatore "GracefulWorkers".
Fonte: opennet.ru
