È stata soprannominata CPDoS (Cache-Poisoned Denial of Service) la nuova tecnica di attacco che prende di mira i servizi di web caching consentendo ai criminal hacker di bloccare un sito Internet senza colpire direttamente il server su cui è ospitato.
Scoperta da un team di ricercatori dell’Università tedesca di Colonia (Hoai Viet Nguyen, Luigi Lo Iacono e Hannes Federrath), la nuova tecnica consente di portare a termine un attacco di tipo DoS contro un sito web mirato senza però comprometterne il server su cui è ospitato: il risultato è che il sito colpito inizierà a consegnare pagine di errore alla maggior parte dei suoi visitatori invece di contenuti o risorse legittime.
Indice degli argomenti
Ecco come funziona l’attacco CPDoS
Il nuovo attacco sfrutta l’infrastruttura dei Content Delivery Networks (CDN) utilizzati per creare versioni multiple distribuite a livello globale dei siti Internet, fornendo così un servizio di caching utile per alleggerire il compito dei Web server.
In pratica, senza i CDN tutti i visitatori dei un sito web richiederebbero tutte le pagine ad una sola origine, il Web server appunto. Grazie ai Content Delivery Networks, i visitatori possono ottenere i contenuti direttamente dal server a loro più vicino, senza richiederli al server “principale” che ospita le pagine del sito Web, riducendo i tempi di caricamento e velocizzando le prestazioni generali del sito.
Il nuovo attacco CPDoS mira dunque a colpire la disponibilità delle risorse Web del sito target semplicemente inviando una singola richiesta HTTP per una risorsa cacheable. Tale richiesta, però, contiene campi imprecisi che vengono ignorati dal sistema di caching ma che generano un errore di tipo “400 Bad Request” durante l’elaborazione da parte del server di origine.
Si tratta quindi di un meccanismo di attacco tanto semplice quanto sofisticato che di fatto “avvelena” (da qui il nome di Cache-Poisoned Denial of Service) la cache dei siti Web ospitati sulla rete dei Content Delivery Networks con pagine di errore.
Il problema, quindi, potrebbe interessare tutti quei siti che utilizzano servizi di Reverse Proxy Cache come Varnish o CDN ampiamente utilizzati tra cui Amazon CloudFront, Cloudflare, Fastly, Akamai e CDN77.
Ecco, in pratica, come i criminal hacker potrebbero portare a termine un attacco di tipo CPDoS:
- innanzitutto, l’attaccante remoto richiede una pagina Web al sito target inviando una richiesta HTTP contenente un’intestazione malformata;
- se il server CDN intermedio non dispone di una copia della risorsa richiesta, inoltra la richiesta al server Web di origine, che si blocca a causa dell’intestazione malformata;
- di conseguenza, il server di origine restituisce una pagina di errore, che alla fine viene memorizzata dal server di cache al posto della risorsa richiesta;
- da questo momento in poi, ogni volta che i visitatori legittimi cercano di ottenere la risorsa di destinazione, verrà loro inviata la pagina di errore della cache invece del contenuto originale;
- il server CDN inizierà quindi a diffondere la stessa pagina di errore anche ad altri nodi marginali della Content Delivery Networks, rendendo non disponibili le risorse mirate del sito Web della vittima, simulando di fatto un attacco DoS senza colpire le risorse del server Web.
Per “avvelenare” la cache dei CDN, la richiesta HTTP malformata può essere di tre differenti tipi:
- HTTP Header Oversize (HHO);
- HTTP Meta Character (HMC);
- HTTP Method Override (HMO).
I consigli per mettere in sicurezza i siti Web
I ricercatori fanno notare che l’attacco CPDoS può essere portato a termine con successo anche perché la singola richiesta HTTP malformata inviata dai criminal hacker al servizio di Web caching non fa scattare i sistemi di rilevamento dei firewall usati a protezione delle applicazioni Web e di protezione dagli attacchi DDoS, che di solito vengono configurati per scansionare e bloccare grandi quantità di traffico di rete irregolare.
La gravità di un attacco CPDoS, inoltre, sta anche nel fatto che i criminal hacker possono sfruttarlo per bloccare, ad esempio, la distribuzione delle patch di sicurezza dei sistemi operativi e delle applicazioni software o degli aggiornamenti firmware delle periferiche hardware distribuiti proprio tramite cache, impedendo che le vulnerabilità vengano corrette.
Allo stesso modo, i criminal hacker possono anche disattivare importanti avvisi o messaggi di sicurezza su siti Web “mission-critical” come l’online banking o appartenenti a enti governativi.
Per fortuna è possibile mitigare il rischio di subire un attacco di tipo CPDoS contro il proprio sito Web. Innanzitutto, occorre modificare le impostazioni dei CDN per escludere i messaggi di errore dal sistema di caching.
Le misure di protezione devono includere, inoltre, anche la creazione di un Web Application Firewall (WAF) sulla cache per catturare contenuti dannosi che cercano di raggiungere il server di origine.