Attacco DDoS Slowloris

L'attacco slowloris tenta di sopraffare un server di destinazione aprendo e mantenendo molte connessioni HTTP simultanee al bersaglio.

Obiettivi di apprendimento

Dopo aver letto questo articolo sarai in grado di:

  • Definire un attacco DoS Slowloris
  • Spiegare come funziona un attacco Slowloris
  • Comprendere diverse strategie di mitigazione per un attacco Slowloris

Argomenti correlati


Vuoi saperne di più?

Abbonati a theNET, il riepilogo mensile di Cloudflare sulle tematiche più discusse in Internet.

Fai riferimento all'Informativa sulla privacy di Cloudflare per scoprire come raccogliamo ed elaboriamo i tuoi dati personali.

Copia link dell'articolo

Che cos’è un attacco DDoS Slowloris?

Slowloris è un programma di attacco denial-of-service che consente a un utente malintenzionato di sopraffare un server di destinazione aprendo e mantenendo molte connessioni HTTP simultanee tra l'utente malintenzionato e la destinazione.

Diagramma di un attacco Slowloris

Come funziona un attacco Slowloris?

Slowloris è un attacco a livello di applicazione che funziona utilizzando richieste HTTP parziali. L'attacco funziona aprendo connessioni a un server Web preso di mira e mantenendole aperte il più a lungo possibile.

Slowloris non è una categoria di attacco, bensì uno specifico strumento di attacco progettato per consentire a una singola macchina di disattivare un server senza utilizzare molta larghezza di banda. A differenza degli attacchi DDoS basati sulla riflessione che consumano larghezza di banda, come l'amplificazione NTP, questo tipo di attacco utilizza una piccola quantità di larghezza di banda e mira invece a utilizzare le risorse del server con richieste che sembrano più lente del normale ma che per il resto imitano il traffico regolare. Rientra nella categoria degli attacchi noti come “lenti e deboli”. Il server di destinazione avrà a disposizione solo un numero limitato di thread per gestire connessioni simultanee. Ogni thread del server proverà a restare attivo in attesa del completamento della richiesta lenta, cosa che non avviene mai. Una volta superato il numero massimo di connessioni possibili del server, ogni connessione aggiuntiva non riceverà risposta e si verificherà un diniego del servizio.

Un attacco Slowloris si verifica in quattro passaggi:

  1. L'aggressore apre innanzitutto più connessioni al server preso di mira inviando più intestazioni di richiesta HTTP parziali.
  2. La destinazione apre un thread per ogni richiesta in arrivo, con l'intento di chiudere il thread una volta completata la connessione. Per essere efficiente, se una connessione impiega troppo tempo, il server interromperà la connessione eccessivamente lunga, liberando il thread per la richiesta successiva.
  3. Per impedire che la destinazione interrompa il timeout delle connessioni, l'autore dell'attacco invia periodicamente intestazioni di richiesta parziali alla destinazione, in modo da mantenere attiva la richiesta. In sostanza dicendo: "Sono ancora qui! Sono solo lento, per favore aspettami."
  4. Il server designato non è mai in grado di rilasciare nessuna delle connessioni parziali aperte mentre attende la conclusione della richiesta. Una volta che tutti i thread disponibili sono in uso, il server non sarà in grado di rispondere alle richieste aggiuntive provenienti dal traffico regolare, con conseguente negazione del servizio.

Il segreto di Slowloris è la sua capacità di creare molti problemi consumando pochissimo larghezza di banda.

Come si mitiga un attacco Slowloris?

Per i server Web vulnerabili a Slowloris, esistono dei modi per mitigarne l'impatto. Le opzioni di mitigazione per i server vulnerabili possono essere suddivise in tre categorie generali:

  1. Aumento della disponibilità del server: aumentando il numero massimo di client che il server può gestire contemporaneamente, aumenterà anche il numero di connessioni che l'aggressore deve effettuare prima di poter sovraccaricare il server. Realisticamente, un malintenzionato potrebbe aumentare il numero di attacchi per superare la capacità del server, indipendentemente dagli incrementi.
  2. Limitazione della frequenza delle richieste in arrivo: limitare l'accesso in base a determinati fattori di utilizzo aiuterà a mitigare un attacco Slowloris. Tecniche come la limitazione del numero massimo di connessioni che un singolo indirizzo IP può effettuare, la limitazione delle basse velocità di trasferimento e la limitazione del tempo massimo di connessione consentito a un client sono tutti approcci volti a limitare l'efficacia degli attacchi lenti e lenti.
  3. Protezione basata su cloud: utilizza un servizio che possa funzionare come reverse proxy, proteggendo il server di origine.

In che modo Cloudflare mitiga un attacco Slowloris?

Cloudflare memorizza le richieste in arrivo prima di iniziare a inviare qualsiasi cosa al server di origine. Di conseguenza, il traffico di un attacco "lento e debole" come un attacco Slowloris non raggiunge mai l'obiettivo previsto. Scopri di più su come la protezione da attacchi DDoS di Cloudflare blocca gli attacchi Slowloris.