Hacking etico - Attacchi DDOS

Un attacco Distributed Denial of Service (DDoS) è un tentativo di rendere non disponibile un servizio online o un sito Web sovraccaricandolo con enormi flussi di traffico generati da più fonti.

A differenza di un attacco Denial of Service (DoS), in cui un computer e una connessione Internet vengono utilizzati per inondare una risorsa mirata con pacchetti, un attacco DDoS utilizza molti computer e molte connessioni Internet, spesso distribuite a livello globale in quello che viene definito un botnet.

Un attacco DDoS volumetrico su larga scala può generare un traffico misurato in decine di Gigabit (e anche centinaia di Gigabit) al secondo. Siamo sicuri che la tua rete normale non sarà in grado di gestire tale traffico.

Cosa sono le botnet?

Gli aggressori costruiscono una rete di macchine hackerate note come botnets, diffondendo codice dannoso tramite e-mail, siti Web e social media. Una volta che questi computer sono stati infettati, possono essere controllati a distanza, all'insaputa dei loro proprietari, e usati come un esercito per lanciare un attacco contro qualsiasi bersaglio.

Un flood DDoS può essere generato in diversi modi. Ad esempio:

  • Le botnet possono essere utilizzate per inviare un numero di richieste di connessione superiore a quello che un server può gestire contemporaneamente.

  • Gli aggressori possono fare in modo che i computer inviino a una risorsa della vittima enormi quantità di dati casuali per utilizzare la larghezza di banda del bersaglio.

A causa della natura distribuita di queste macchine, possono essere utilizzate per generare traffico elevato distribuito che può essere difficile da gestire. Alla fine si traduce in un blocco completo di un servizio.

Tipi di attacchi DDoS

Gli attacchi DDoS possono essere ampiamente classificati in tre categorie:

  • Attacchi basati sul volume
  • Attacchi al protocollo
  • Attacchi a livello di applicazione

Attacchi basati sul volume

Gli attacchi basati sui volumi includono TCP Flood, UDP Flood, ICMP Flood e altri spoofedpacket Flood. Questi sono anche chiamatiLayer 3 & 4 Attacks. Qui, un utente malintenzionato tenta di saturare la larghezza di banda del sito di destinazione. L'intensità dell'attacco viene misurata inBits per Second (bps).

  • UDP Flood - Un flusso UDP viene utilizzato per inondare le porte casuali su un host remoto con numerosi pacchetti UDP, più specificamente la porta numero 53. È possibile utilizzare firewall specializzati per filtrare o bloccare pacchetti UDP dannosi.

  • ICMP Flood- È simile al flood UDP e viene utilizzato per inondare un host remoto con numerose richieste Echo ICMP. Questo tipo di attacco può consumare larghezza di banda sia in uscita che in entrata e un volume elevato di richieste ping comporterà un rallentamento generale del sistema.

  • HTTP Flood - L'aggressore invia richieste HTTP GET e POST a un server Web mirato in un volume elevato che non può essere gestito dal server e porta alla negazione di connessioni aggiuntive da client legittimi.

  • Amplification Attack - L'aggressore effettua una richiesta che genera una risposta ampia che include richieste DNS per record TXT di grandi dimensioni e richieste HTTP GET per file di grandi dimensioni come immagini, PDF o altri file di dati.

Attacchi al protocollo

Gli attacchi di protocollo includono SYN flood, Ping of Death, attacchi di pacchetti frammentati, Smurf DDoS, ecc. Questo tipo di attacco consuma risorse del server effettive e altre risorse come firewall e bilanciatori del carico. L'intensità dell'attacco viene misurata inPackets per Second.

  • DNS Flood - I flussi DNS vengono utilizzati per attaccare sia l'infrastruttura che un'applicazione DNS per sovraccaricare un sistema di destinazione e consumare tutta la sua larghezza di banda di rete disponibile.

  • SYN Flood- L'attaccante invia le richieste di connessione TCP più velocemente di quanto la macchina presa di mira possa elaborarle, causando la saturazione della rete. Gli amministratori possono modificare gli stack TCP per mitigare l'effetto dei SYN flood. Per ridurre l'effetto dei SYN flood, è possibile ridurre il timeout fino a quando uno stack non libera la memoria allocata a una connessione o interrompendo selettivamente le connessioni in entrata utilizzando un firewall oiptables.

  • Ping of Death- L'aggressore invia pacchetti non validi o di grandi dimensioni utilizzando un semplice comando ping. L'IP consente l'invio di pacchetti da 65.535 byte, ma l'invio di un pacchetto ping di dimensioni superiori a 65.535 byte viola il protocollo Internet e potrebbe causare un overflow della memoria sul sistema di destinazione e infine arrestare il sistema. Per evitare gli attacchi Ping of Death e le sue varianti, molti siti bloccano del tutto i messaggi ping ICMP sui loro firewall.

Attacchi a livello di applicazione

Gli attacchi a livello di applicazione includono Slowloris, attacchi DDoS zero-day, attacchi DDoS che prendono di mira le vulnerabilità di Apache, Windows o OpenBSD e altro ancora. Qui l'obiettivo è bloccare il server web. L'intensità dell'attacco viene misurata inRequests per Second.

  • Application Attack - Questo è anche chiamato Layer 7 Attack, in cui l'autore dell'attacco effettua un numero eccessivo di richieste di accesso, ricerca nel database o ricerca per sovraccaricare l'applicazione. È davvero difficile rilevare gli attacchi di livello 7 perché assomigliano al traffico di un sito Web legittimo.

  • Slowloris- L'aggressore invia un numero enorme di intestazioni HTTP a un server Web mirato, ma non completa mai una richiesta. Il server di destinazione mantiene aperte ognuna di queste false connessioni e alla fine supera il pool di connessioni simultanee massimo e porta alla negazione di connessioni aggiuntive da client legittimi.

  • NTP Amplification - L'autore dell'attacco sfrutta i server NTP (Network Time Protocol) accessibili pubblicamente per sovraccaricare il server mirato con il traffico UDP (User Datagram Protocol).

  • Zero-day DDoS Attacks- Una vulnerabilità zero-day è un difetto del sistema o dell'applicazione precedentemente sconosciuto al fornitore e non è stato risolto o patchato. Si tratta di nuovi tipi di attacchi che si verificano giorno dopo giorno, ad esempio sfruttando vulnerabilità per le quali non è stata ancora rilasciata alcuna patch.

Come risolvere un attacco DDoS

Esistono diverse opzioni di protezione DDoS che è possibile applicare a seconda del tipo di attacco DDoS.

La tua protezione DDoS inizia dall'identificazione e dalla chiusura di tutte le possibili vulnerabilità a livello di sistema operativo e applicazione nel tuo sistema, chiudendo tutte le possibili porte, rimuovendo gli accessi non necessari dal sistema e nascondendo il tuo server dietro un sistema proxy o CDN.

Se vedi una bassa entità del DDoS, puoi trovare molte soluzioni basate su firewall che possono aiutarti a filtrare il traffico basato su DDoS. Ma se hai un volume elevato di attacchi DDoS come in gigabit o anche di più, allora dovresti prendere l'aiuto di un fornitore di servizi di protezione DDoS che offre un approccio più olistico, proattivo e genuino.

È necessario fare attenzione quando ci si avvicina e si seleziona un provider di servizi di protezione DDoS. Ci sono un certo numero di fornitori di servizi che vogliono trarre vantaggio dalla tua situazione. Se li informi che sei sotto attacco DDoS, inizieranno a offrirti una varietà di servizi a costi irragionevolmente alti.

Possiamo suggerirti una soluzione semplice e funzionante che inizia con la ricerca di un buon fornitore di soluzioni DNS che sia abbastanza flessibile da configurare i record A e CNAME per il tuo sito web. In secondo luogo, avrai bisogno di un buon provider CDN in grado di gestire un grande traffico DDoS e fornirti un servizio di protezione DDoS come parte del loro pacchetto CDN.

Supponi che l'indirizzo IP del tuo server sia AAA.BBB.CCC.DDD. Quindi dovresti eseguire la seguente configurazione DNS:

  • Creare un A Record nel file di zona DNS come mostrato di seguito con un identificatore DNS, ad esempio, ARECORDID e mantenerlo segreto dal mondo esterno.

  • Ora chiedi al tuo provider CDN di collegare l'identificatore DNS creato con un URL, qualcosa di simile cdn.someotherid.domain.com.

  • Utilizzerai l'URL CDN cdn.someotherid.domain.com per creare due record CNAME, il primo a cui puntare www e il secondo record in modo che punti a @ come mostrato di seguito.

Puoi richiedere l'aiuto del tuo amministratore di sistema per comprendere questi punti e configurare il tuo DNS e CDN in modo appropriato. Infine, avrai la seguente configurazione sul tuo DNS.

Ora lascia che il provider CDN gestisca tutti i tipi di attacchi DDoS e il tuo sistema rimarrà al sicuro. Ma qui la condizione è che tu non debba rivelare l'indirizzo IP del tuo sistema o l'identificatore del record A a nessuno; altrimenti gli attacchi diretti ricominceranno.

Soluzione rapida

Gli attacchi DDoS sono diventati più comuni che mai e, sfortunatamente, non esiste una soluzione rapida per questo problema. Tuttavia, se il tuo sistema è sotto attacco DDoS, non farti prendere dal panico e inizia a esaminare la questione passo dopo passo.