Red Hot Cyber

La cybersecurity è condivisione.
Riconosci il rischio, combattilo, condividi le tue esperienze ed 
incentiva gli altri a fare meglio di te.

Cerca
Crowdstrike

Scoperta Vulnerabilità Critica nel Protocollo HTTP/2: Continuation Flood Minaccia i Server Web

Redazione RHC : 8 Aprile 2024 07:46

Un ricercatore di sicurezza ha scoperto una serie di vulnerabilità nel protocollo HTTP/2, chiamate collettivamente Continuation Flood. Questi problemi possono portare ad attacchi Denial of Service (DoS) e possono causare il crash dei server Web in alcune implementazioni con una singola connessione TCP.

Secondo l’esperto, il Continuation Flood è molto più pericoloso di un problema simile, il Rapid Reset, scoperto lo scorso autunno.

Ricordiamo che HTTP/2 è una versione aggiornata del protocollo HTTP, standardizzato nel 2015 e progettato per migliorare le prestazioni dei server web introducendo il framing binario per un trasferimento dati più efficiente, il multiplexing per la trasmissione di più richieste e risposte su un’unica connessione, nonché come compressione dell’intestazione.

I bug sono stati scoperti dal ricercatore Barket Nowotarski. Afferma che le vulnerabilità sono dovute all’uso di frame CONTINUATION HTTP/2, che non sono adeguatamente limitati o controllati in molte implementazioni del protocollo.

Pertanto, i messaggi HTTP/2 contengono sezioni di intestazione serializzate in blocchi. Durante la trasmissione, tali blocchi possono essere frammentati in più frame e i frame CONTINUATION vengono utilizzati per combinare il flusso.

Come spiega Nowotarski, la mancanza di un adeguato controllo dei frame consente agli aggressori di inviare stringhe di frame estremamente lunghe semplicemente non impostando il flag END_HEADERS. Di conseguenza, ciò può portare a guasti del server a causa dell’esaurimento delle risorse che verranno spese per l’elaborazione di questi frame.

Il ricercatore ha avvertito che in alcune implementazioni è possibile disabilitare il server utilizzando una sola connessione HTTP/2 TCP.

Gli esperti del Centro di coordinamento CERT (CERT-CC) hanno già pubblicato un avviso dedicato al Continuation Flood. Alle vulnerabilità in varie implementazioni HTTP/2 sono stati assegnati i propri identificatori CVE:

  • CVE-2024-27983 influisce sul server HTTP/2 Node.js. L’invio di più frame HTTP/2 può causare una perdita di memoria a causa di una condizione di competizione, portando a una potenziale negazione del servizio;
  • CVE-2024-27919 influisce sul codec oghttp di Envoy. Provoca un consumo illimitato di memoria, poiché non reimposta la richiesta se il limite della mappa di intestazione viene esaurito;
  • CVE-2024-2758. Le restrizioni non impediscono efficacemente gli attacchi da parte di frame CONTINUATION vuoti, che potrebbero potenzialmente portare alla negazione del servizio;
  • CVE-2024-2653 : influisce su amphp/http. Raccoglie i frame CONTINUATION in un buffer illimitato, che può portare a arresti anomali se viene superato il limite della dimensione dell’intestazione;
  • CVE-2023-45288 – Influisce sui pacchetti Go net/http e net/http2. Consente a un utente malintenzionato di inviare un ampio set di intestazioni, il che porta a un consumo eccessivo della CPU;
  • CVE-2024-28182 – influenza le implementazioni che utilizzano la libreria nghttp2, che continua a ricevere frame CONTINUATION finché non provoca un rifiuto del servizio;
  • CVE-2024-27316 – Interessa Apache Httpd. È possibile inviare un flusso continuo di frame CONTINUATION senza impostare il flag END_HEADERS;
  • CVE-2024-31309 : influisce sul server di traffico Apache. Un attacco Continuation Flood può causare il consumo delle risorse del server;
  • CVE-2024-30255 influisce sulle versioni Envoy 1.29.2 e precedenti. Esaurisce le risorse della CPU con un flusso di frame CONTINUATION.

Secondo il CERT-CC, la vulnerabilità di Continuation è già stata confermata dai creatori di Red Hat, SUSE Linux, Arista Networks, Apache HTTP Server Project, nghttp2, Node.js, AMPHP e Go linguaggio di programmazione.

Secondo Nowotarski il problema del Continuation Flood è molto più grave del già citato attacco HTTP/2 Rapid Reset descritto lo scorso ottobre dai principali fornitori di servizi cloud. Ricordiamo che allora Google, Cloudflare e AWS hanno affermato che il problema del Rapid Reset ha provocato un’ondata degli attacchi DDoS più potenti nell’intera storia dell’osservazione.

Considerando l’importanza dei progetti interessati e il fatto che, secondo Cloudflare Radar, il traffico HTTP rappresenta oltre il 70% di tutte le comunicazioni Internet, si può presumere che gran parte di Internet sia affetto da una vulnerabilità facilmente sfruttabile: in molti casi basta una sola connessione TCP per mandare in crash il server”, avverte Nowotarski.

Il ricercatore ritiene inoltre che sarà difficile per gli amministratori dei server risolvere il problema senza un’adeguata conoscenza di HTTP/2.

Il fatto è che le richieste dannose non saranno visibili nei registri di accesso a meno che sul server non sia abilitata l’analisi avanzata dei frame, che nella maggior parte dei casi è disabilitata.

Redazione
La redazione di Red Hot Cyber è composta da un insieme di persone fisiche e fonti anonime che collaborano attivamente fornendo informazioni in anteprima e news sulla sicurezza informatica e sull'informatica in generale.