
Una falla nella compressione degli header QPACK permette a un aggressore non autenticato di esaurire la memoria di molti server HTTP/3, provocando un denial‑of‑service su larga scala.
Negli ultimi mesi, la società di sicurezza FoxIO ha scoperto una debolezza nella gestione degli header compressi da QPACK, il meccanismo usato da HTTP/3 per ridurre la dimensione delle richieste. La falla consente a un attaccante remoto, senza alcuna autenticazione, di inviare una piccola sequenza di header compressi che, una volta decompressi dal server, si espandono in centinaia di migliaia di voci, saturando la memoria disponibile e provocando un arresto del servizio. Non sono stati segnalati casi di furto di dati o esecuzione di codice, ma l’impatto in termini di disponibilità è significativo.
QPACK funziona trasformando i campi di intestazione ripetuti in brevi riferimenti, riducendo il traffico su UDP, protocollo su cui si basa HTTP/3. I server dovrebbero limitare sia la dimensione del pacchetto compresso ricevuto sia la quantità di dati decompressi. In diversi stack, però, il controllo è applicato solo al pacchetto in ingresso; il risultato decompressato può crescere di ordine di grandezza, fino a centinaia di volte la dimensione originale.
Il metodo più semplice consiste nell’inviare un batch di header compressi di circa 1 MB, che il server espande in circa 160 000 voci, occupando più di 15 MB di RAM. Alcuni stack, come Bun (che utilizza la libreria lsquic), mostrano un’amplificazione ancora più estrema: un singolo header di 4 KB può essere referenziato migliaia di volte, facendo crescere la memoria occupata di diversi gigabyte. Quando il contatore interno supera il limite di 2 GB, si verifica un overflow che riporta il valore a zero, facendo entrare il server in un ciclo infinito di ricostruzione degli header e bloccando la CPU al 100 %.
FoxIO ha testato dieci implementazioni di HTTP/3, riscontrando vulnerabilità in sette di esse. Le librerie interessate includono:
Le versioni già corrette comprendono quic-go, Cloudflare quiche, lsquic (aggiornamento del 16 luglio 2026) e Wireshark. Le rimanenti – Bun, aioquic e la libreria Rust – non hanno ancora ricevuto una patch ufficiale al momento della divulgazione (22 ottobre 2026).
Per le implementazioni ancora vulnerabili, FoxIO suggerisce le seguenti contromisure:
--set http3=false.max_field_section_size.La diffusione di HTTP/3 è in rapida crescita, grazie al suo vantaggio di latenza ridotta su reti moderne. Molti provider di hosting, CDN e server applicativi hanno già adottato stack basati su quic-go, lsquic o Cloudflare quiche. La vulnerabilità, quindi, potenzialmente colpisce una larga fetta di infrastrutture internet, soprattutto quelle che hanno attivato HTTP/3 senza un’attenta revisione delle impostazioni di sicurezza.
Il fatto che l’attacco avvenga su UDP rende più difficile l’intervento dei tradizionali firewall di rete, poiché il pacchetto raggiunge il server prima che vengano applicati filtri di livello superiore. Inoltre, la natura “one‑shot” dell’exploit – una singola connessione sufficiente a saturare la memoria – rende la mitigazione basata su rate‑limiting meno efficace.
Il lavoro di FoxIO è stato ispirato dalla ricerca di Gal Bar Nahum su “MadeYouReset”, una tecnica di denial‑of‑service contro HTTP/2. L’esperienza dimostra che le vulnerabilità legate alla compressione degli header non sono un problema limitato a una singola versione del protocollo, ma una classe di difetti che può riemergere con l’evoluzione di HTTP/3 e, in futuro, di HTTP/4.
Gli sviluppatori di stack dovranno introdurre controlli più rigorosi sul cumulative size degli header decompressi, non solo sul payload in ingresso. Inoltre, la community dovrebbe promuovere test di fuzzing mirati a QPACK, così da identificare scenari di overflow prima che vengano sfruttati in produzione.
Nel frattempo, gli operatori di rete sono invitati a verificare la versione dei propri stack HTTP/3, applicare le patch disponibili e adottare le contromisure temporanee suggerite. Un approccio proattivo è fondamentale per evitare interruzioni di servizio che, sebbene non compromettano la riservatezza dei dati, possono avere un impatto economico e reputazionale notevole.
La scoperta di questa vulnerabilità QPACK evidenzia come l’adozione rapida di nuovi protocolli possa introdurre punti ciechi inattesi. Sebbene l’attacco sia limitato al denial‑of‑service, la capacità di bloccare server critici con una singola connessione è preoccupante, soprattutto per servizi che dipendono da alta disponibilità. La risposta della comunità – patch rapide, linee guida di mitigazione e una maggiore attenzione al design di QPACK – rappresenta un modello di reazione efficace, ma resta fondamentale mantenere una vigilanza costante su tutte le componenti della catena HTTP/3.
Contenuto generato automaticamente da intelligenza artificiale a partire da fonti pubbliche. Non garantiamo l'accuratezza assoluta delle informazioni: consulta sempre la fonte originale. I diritti sui contenuti originali appartengono ai rispettivi editori.