Dos e DDoS
Attacchi DoS/DDoS (Denial of Service) mirano a sfruttare vulnerabilità! Scopri la difesa essenziale in cybersecurity. Guida ita.
Un attacco DoS (Denial of Service) è un tipo d’attacco informatico in cui un criminale tenta di rendere inaccessibile un sistema informatico, una rete o un servizio (da un singolo dispositivo). Un attacco DDoS (Distributed Denial of Service) è, invece, un tipo di attacco informatico in cui l’attaccante utilizza più dispositivi per provocare un disservizio.
IMPATTO
Gli attacchi DoS e DDoS possono avere impatti significativi sulle strutture colpite, tra cui:
- Blocco dei servizi: gli utenti autorizzati, dunque, non potranno più accedere ai servizi/sistemi con conseguente blocco della produttività/funzionalità.
- Perdita/Danneggiamento di dati: il blocco improvviso di un sistema può provocare, a determinate condizioni, perdite o danneggiamento dei dati
TIPOLOGIE D'ATTACCO
Esistono varie tipologie di attacchi DoS:
- Attacchi volumetrici: questi attacchi si basano sull’invio di un numero elevato di richieste a un sistema in modo da sovraccaricarlo e renderlo inaccessibile.
- Attacchi mirati all’esaurimento delle risorse: questi attacchi si basano sull’utilizzo eccessivo di una o più risorse del sistema puntando ad esaurirle e rendere, di conseguenza, inaccessibile il servizio/sistema (questo lo si può fare anche su di un server DNS: in questo caso si parla di DNS Flood Attack).
- Exploit di vulnerabilità: sfruttare alcune vulnerabilità di alcuni componenti o funzioni del sistema può comportare il crash dell’applicativo/servizio.
Nel caso in cui l’attacco (volumetrico o mirato all’esaurimento delle risorse), venga effettuato da più dispositivi, si parla di attacco DDoS.
ESEMPIO D'ATTACCO
Prendiamo come esempio una vulnerabilità DoS afferente alle versioni da 3.0.1 a 7.0.1 di Grafana, la ben nota soluzione per la visualizzazione dati opensource.
Queste versioni sono affette da una vulnerabilità (CVE-2020-13379) di tipo SSRF (Server-Side Request Forgery) derivante da un incorretto controllo degli accessi (Improper Access Control) che consente ad un utente non autenticato di effettuare una richiesta HTTP circa gli avatar. Tale vulnerabilità, può essere utilizzata sia per ottenere informazioni utili ad altri attacchi sia a provocare un Denial of Service, nel caso in cui venga effettuata una richiesta contenente uno URL non valido.
Il Proof of Concept iniziale, realizzato nel 2020, è il seguente:
Eseguendo questo semplice codice, dunque, è possibile provocare un errore di Segmentazione nell’istanza di Grafana (non riesce dunque a gestire l’eccezione circa lo URL non corretto fornitogli) e provocare il crash dell’applicativo.
Un altro esempio d’attacco DoS è quello denominato “SlowLoris”. In questo caso particolare, anziché inviare al server quante più informazioni possibili, vengono aperte, in contemporanea, molteplici sessioni valide e queste vengono mantenute effettuando nuove richieste (con cadenza periodica) per mantenere riservate le relative risorse del sistema.
Il relativo codice di un exploit assomiglierà a questo:
TECNICHE DI AMPLIFICAZIONE
Esistono diversi tipi di attacchi di amplificazione DoS, tra cui:
- Attacchi di amplificazione DNS: in questo tipo di attacco, l’attaccante invia un numero elevato di richieste di interrogazione DNS a un server DNS. Il server DNS risponderà a ogni richiesta inviando un numero elevato di pacchetti di risposta, che sovraccaricheranno il sistema di destinazione.
- Attacchi di amplificazione NTP: in questo tipo di attacco, l’attaccante invia un numero elevato di richieste di sincronizzazione NTP a un server NTP. Il server NTP risponderà a ogni richiesta inviando un numero elevato di pacchetti di risposta, che sovraccaricheranno il sistema di destinazione.
- Attacchi di amplificazione ICMP: in questo tipo di attacco, l’attaccante invia un numero elevato di richieste ICMP a un sistema. Il sistema risponderà a ogni richiesta inviando un numero elevato di pacchetti di risposta, che sovraccaricheranno il sistema di destinazione.
Per esempio, per effettuare un’amplificazione DNS, si potrebbe ricorrere a uno script di questo genere:
Il codice originale di questo script lo potete trovare su Github.
TECNICHE DI DIFESA
Come abbiamo visto, gli attacchi di amplificazione DoS possono essere molto dannosi e possono rendere inaccessibili i sistemi di destinazione per un lungo periodo di tempo. Per proteggersi da questi attacchi, è importante adottare una serie di misure di sicurezza, tra cui:
- Mantenere aggiornati i software
- Utilizzare firewall e altri sistemi di sicurezza (WAF, etc.)
- Monitorare il traffico di rete per rilevare anomalie.
- Gestire correttamente le eccezioni