L'attacco HTTP/2 Bomb è una nuova vulnerabilità di tipo denial-of-service che colpisce diversi server web e implementazioni HTTP/2, tra cui Nginx, Apache HTTP Server, Microsoft IIS, Envoy e Cloudflare Pingora. Questo attacco sfrutta comportamenti standard del protocollo HTTP/2 per costringere i server a allocare e trattenere grandi quantità di memoria.

L'attacco è stato reso pubblico dai ricercatori di Calif, che lo descrivono come un attacco remoto che prende di mira le configurazioni predefinite di HTTP/2. A differenza degli attacchi tradizionali, HTTP/2 Bomb utilizza due tecniche principali: la prima sfrutta la compressione delle intestazioni HPACK, inviando piccole riferimenti ad intestazioni indizizzate che si espandono in allocazioni molto più grandi lato server. La seconda sfrutta il controllo del flusso HTTP/2 per bloccare le risposte, impedendo al server di rilasciare la memoria allocata.

Questo consente a un client con una banda limitata di consumare una quantità significativa di RAM su un server vulnerabile. I test dei ricercatori hanno mostrato che Envoy 1.37.2 ha raggiunto 32 GB di memoria in 10 secondi, Apache httpd 2.4.67 in 18 secondi, Nginx 1.29.7 in 45 secondi e Microsoft IIS su Windows Server 2025 ha raggiunto 64 GB in 45 secondi.

Il problema non riguarda solo la dimensione delle intestazioni decodificate. Molte difese limitano la dimensione totale delle intestazioni decodificate, ma questo attacco sfrutta numerose piccole intestazioni, dove l'uso della memoria risulta dal bookkeeping e dall'elaborazione lato server piuttosto che dalla dimensione del payload.

La gestione dei cookie contribuisce ulteriormente al problema in alcune implementazioni. HTTP/2 permette di suddividere le intestazioni Cookie in campi separati, e in casi affetti, questi non sono stati correttamente contati contro i limiti dei campi di richiesta. Questo ha permesso agli attaccanti di creare molti oggetti di intestazione rimanendo sotto le soglie di protezione previste.

Prerequisiti

  • Sistemi operativi: Windows Server 2025, sistemi compatibili con Nginx, Apache HTTP Server, Microsoft IIS, Envoy, Cloudflare Pingora
  • Software: Nginx versione 1.29.7 o superiore, Apache HTTP Server versione 2.4.67 o superiore, Microsoft IIS, Envoy versione 1.37.2 o superiore, Cloudflare Pingora
  • Accesso amministrativo: Permessi di amministratore per modificare le configurazioni dei server
  • Connessione Internet: Per scaricare eventuali aggiornamenti o patch di sicurezza

Procedura per mitigare l'attacco HTTP/2 Bomb

Alla fine di questa guida, sarai in grado di applicare le misure necessarie per mitigare l'attacco HTTP/2 Bomb sui tuoi server web.

Passo 1: Verifica la versione del tuo server web

  • Controlla la versione attualmente in uso.

Passo 2: Applica le patch disponibili

  • Per Apache httpd:
    • Aggiorna a modhttp2 2.0.41 o superiore.
  • Per Microsoft IIS, Envoy e Cloudflare Pingora:
    • Verifica la disponibilità di patch ufficiali.

Passo 3: Configura le impostazioni di sicurezza

  • Per Apache httpd:
  • Per Nginx:

Passo 4: Monitora e valuta

  • Monitora l'uso della memoria del server dopo l'applicazione delle patch o delle configurazioni.
  • Valuta l'impatto delle modifiche apportate.
  • Assicurati che i limiti di conteggio delle intestazioni delle richieste siano applicati.

Verifica e Troubleshooting

Test di Vulnerabilità

  • Verifica la versione del server web: Identifica la versione del tuo server web (Nginx, Apache HTTP Server, Microsoft IIS, Envoy, Cloudflare Pingora) per determinare se è vulnerabile.
  • Controlla le configurazioni HTTP/2: Assicurati che il server utilizzi HTTP/2 e verifica le impostazioni predefinite.
  • Simula l'attacco: Utilizza strumenti di test di sicurezza per simulare l'attacco HTTP/2 Bomb e osservare il comportamento del server in termini di allocazione della memoria.

Correzioni e Mitigazioni

  • Nginx:

Monitoraggio e Prevenzione

  • Monitora l'uso della memoria: Implementa strumenti di monitoraggio per rilevare un uso anomalo della memoria che potrebbe indicare un attacco HTTP/2 Bomb.
  • Applica limiti alle intestazioni: Configura il server per limitare il numero di intestazioni per richiesta.
  • Mantieni aggiornati i server web: Assicurati di applicare tempestivamente gli aggiornamenti di sicurezza per prevenire future vulnerabilità.
  • Sintesi didattica:

L'attacco HTTP/2 Bomb sfrutta le vulnerabilità nelle configurazioni predefinite di HTTP/2, utilizzando tecniche come l'esploit di HPACK e il controllo del flusso HTTP/2 per consumare grandi quantità di memoria del server. Questo può portare a un consumo significativo di RAM, come dimostrato nei test su vari server.

  • Invito alla pratica:

Se gestisci un server HTTP/2, è fondamentale agire immediatamente:

  • Verifica se il tuo stack è vulnerabile.
  • Applica le patch disponibili per il tuo server.
  • Se non è possibile aggiornare immediatamente, disabilita HTTP/2 come misura temporanea.

Per ulteriori dettagli, consulta il messaggio su Openwall.

Nota Editoriale e Disclaimer

Le guide e i contenuti pubblicati su GoYou sono frutto di attività di ricerca e analisi indipendente, a scopo informativo, educativo e di approfondimento.

GoYou non costituisce una testata giornalistica né un prodotto editoriale ai sensi della Legge n. 62/2001 e non svolge attività di informazione in tempo reale.

Il progetto GoYou non fornisce consulenza professionale, tecnica, legale o finanziaria e declina ogni responsabilità per l’uso improprio delle informazioni pubblicate.

Nel settore Crypto, ogni investimento comporta rischi: si invita il lettore a informarsi sempre in modo autonomo prima di assumere qualsiasi decisione.