mercoledì, Maggio 1, 2024

Attacco CONTINUATION Flood minaccia la sicurezza dei siti Web con una sola connessione

SCOPERTA AGGHIACCIANTE: ATTACCO CONTINUATION FLOOD BLOCCA I SITI WEB CON UNA SOLA CONNESSIONE

HTTP/2 è una revisione del protocollo HTTP progettata per migliorare le prestazioni e l’efficienza del trasferimento di dati su Internet. Le sue caratteristiche principali includono il multiplexing, che consente di inviare più richieste e risposte contemporaneamente su una singola connessione TCP, la compressione degli header per ridurre il carico di dati trasmessi, il concetto di server push per inviare risorse aggiuntive prima che siano richieste esplicitamente, la prioritizzazione dei flussi per gestire in modo efficiente le risorse, l’uso raccomandato di TLS per una maggiore Sicurezza. In generale, HTTP/2 mira a fornire un caricamento più veloce delle pagine Web e una migliore esperienza utente rispetto al suo predecessore, HTTP/1.1.

COME FUNZIONA L’ATTACCO DoS CHE BLOCCA I SITI WEB

CONTINUATION Flood è l’appellativo assegnato alle vulnerabilità scoperte in HTTP/2 nel loro complesso. I messaggi HTTP/2 includono sezioni header e trailer suddivise in blocchi. Questi blocchi possono essere frammentati su più frame per la trasmissione: per unire i flussi sono utilizzati i cosiddetti frame CONTINUATION. L’omissione di controlli adeguati sul contenuto dei frame in molte implementazioni, consente ai criminali informatici di inviare una stringa di frame estremamente lunga, non impostando il flag END_HEADERS. Questo genere di comportamento può portare a crash del server dovuti all’esaurimento della memoria o all’uso anomalo delle risorse della CPU durante l’elaborazione dei frame in eccesso. Nowotarski spiega che le implementazioni esposte al fenomeno del memory leak semplicemente non limitano la dimensione della sequenza di header costruiti ricorrendo al frame CONTINUATION di HTTP/2.

QUALI Software SONO VULNERABILI ALL’ATTACCO CONTINUATION FLOOD

Il problema di sicurezza scoperto nelle implementazioni di HTTP/2 riguarda potenzialmente molteplici software. Tra le varie soluzioni interessate ci sono ad esempio Web server e proxy come Apache httpd e Apache Traffic Server (CVE-2024-27316 e CVE-2024-31309). Le falle CONTINUATION Flood, tuttavia, affliggono anche l’utilizzo del protocollo HTTP/2 in Node.js (CVE-2024-27983), l’anti DDoS Tempesta FW (CVE-2024-2758), i pacchetti net/http e net/http2 del linguaggio Go (CVE-2023-45288), il client HTTP asincrono per PHP basato su Revolt amphp/http (CVE-2024-2653), la libreria nghttp2 (CVE-2024-28182), il proxy Envoy (CVE-2024-30255 e CVE-2024-27919). L’impatto delle vulnerabilità è grave: al momento, i fornitori di soluzioni software e gli sviluppatori che hanno confermato di essere interessati da almeno uno dei CVE sopra menzionati sono Red Hat, SUSE Linux, Arista Networks, il progetto Apache HTTP Server, nghttp2, Node.js, AMPHP e i gestori del linguaggio di Programmazione Go. Secondo Nowotarski il problema sarebbe ben più grave dell’attacco HTTP/2 Rapid Reset venuto a galla a ottobre 2023. Dato che Cloudflare Radar stima i dati del traffico HTTP sopra il 70% di tutti i trasferimenti Internet, l’esposizione alle aggressioni DoS è significativa a livello globale: in molti casi basta una sola connessione TCP per bloccare il server. Il ricercatore avverte che il problema in questione sarebbe complesso da diagnosticare e attenuare per tutti gli amministratori non in possesso di una conoscenza adeguata di HTTP/2. Ciò perché le richieste malevole non sarebbero visibili nei log, a meno che non ci si serva dell’analisi avanzata a livello di frame, cosa che nella maggior parte dei casi non avviene. A questo punto, è fondamentale aggiornare i server e le librerie interessate prima che le vulnerabilità CONTINUATION Flood inizino ad essere attivamente sfruttate.

ARTICOLI COLLEGATI:

ULTIMI ARTICOLI: