Come funziona un attacco DOS Blacknurse

Chi potrebbe mai essere in grado di a bloccare tutta una infrastruttura protetta da Firewall con un semplice laptop da pochi centinaia di euro e una connessione ad Internet modesta?

Nessuno, si potrebbe giustamente asserire. Ed invece NO!

Prima di poter proseguire, è indispensabile avere una basilare cognizione su cosa è un DOS e perché può essere “fastidioso”; DoS sta per Denial of Service e può essere definito come un insieme di richieste inviate verso un host (client/server), il quale esaurisce le risorse per poter rispondere correttamente a tutte le richieste fatte, smettendo di funzionare.

Esistono vari modi per poter metter su un DOS; alcuni esempi possono essere il SYN-FLOOD, SMURF attack, Nuke, Ping of Death etc.

Ugualmente esistono software/tool chiamati LOIC [Low Orbit Ion Cannon] (scritto in C#)/ HOIC [High Orbit Ion Cannon] (scritto in Basic) in grado di lanciare un attacco DoS senza molti artifici.

Lanciare un attacco DoS/DDos è illegale e facilmente tracciabile. Consiglio l’utilizzo di LOIC/HOIC solo ed esclusivamente per test personali/lavorativi, previa autorizzazione.

Dove il DoS può essere visto più come uno stress test che può portare a disfunzioni della macchina attaccata, il DDoS (Distribuited Denial of Service) è propriamente un attacco volto a rendere indisponibile un servizio esposto su Internet; DoS e DDos possono funzionare per mezzo di attacchi diretti, tramite replication o reflection.

Il TDC Security Operations Center, un gruppo ricercatori danesi, ha individuato una nuova tipologia di attacco DoS, chiamata BlackNurse in grado di generare, con una normale connessione a 15 Mbps, un attacco da 180 Mbps. Per la prima volta non sono più solo BotNet (DDoS) Zeus o Mirai a far paura, ma anche un attacco DoS, che di per sé può sembrare banale.

Come avviene questo attacco e perché è così tanto efficiente?

L’idea di base è quella di utilizzare un semplice protocollo come ICMP (Internet Control Message Protocol): questo protocollo, fondamentale all’interno delle reti, fornisce informazioni di errori, indica l’indisponibilità di un servizio in Internet o l’impossibilità di raggiungere un client o router.

Per avere un’idea, nel “TCP/IP” ci troviamo nell’Internet Layer. Esempi tipici di ICMP possono essere il famosissimo e usatissimo “ping” o “tracert/traceroute” rispettivamente su MS/UNIX.

L’attacco BlackNurse non fa altro che inondare di pacchetti ICMP type 3 (Destination Unreachable) con code 3 (Port Unreachable), tra 40.000 e 50.000 pacchetti al secondo, un firewall posto a protezione di un’infrastruttura.

Il firewall, che ha in carico l’analisi e filtraggio dei pacchetti, a causa del numero spropositato, sovraccarica la CPU portando lo stesso a smettere di funzionare.

Risultato?

Tutto ciò che si trova al di là del Firewall non sarà più in grado di comunicare con Internet né in uscita né in entrata per tutta la durata dell’attacco. Sotto attacco il firewall continuerà a riavviarsi o bloccarsi fin quanto l’inondazione di pacchetti cesserà. Opportuno precisare che il limite non è tanto nella banda di rete ma bensì nella CPU del firewall stesso.

I dispositivi testati e vulnerabili risultano essere ad oggi:

  • Cisco ASA 5506, 5515, 5525 (default settings)
  • Cisco ASA 5550 (legacy) and 5515-X (latest generation)
  • Cisco Router 897 (can be mitigated)
  • SonicWall (misconfiguration can be changed and mitigated)
  • Some unverified Palo Alto
  • Zyxel NWA3560-N (wireless attack from LAN side)
  • Zyxel Zywall USG50

Come risolvere o in qualche modo mitigare questa problematica?

Come da consiglio, idea di base sarebbe quella di filtrare il traffico in entrata, creando una lista di fonti attendibili da cui poter ricevere traffico ICMP. Soluzione più drastica ma efficace la si implementa disabilitando ICMP type 3 code 3 sulla propria interfaccia WAN.

Siete curiosi? Volete testare la vostra infrastruttura?

È possibile verificare se il vostro firewall è soggetto a questa problematica adoperando “Hping3“, scaricabile da http://www.hping.org/manpage.html. Questo tool, fondamentale per chi si preoccupa di cyber security, permette di testare regole del firewall, effettuare port scanning avanzati, path MTU discovery, TCP/IP stack auditing e molto altro.

Naturalmente Open Source!

I Comandi per poter sferrare un attacco DoS (Maneggiare con Cura) sono:

# hping3 -1 -C 3 -K 3 -i u20 <target ip>

# hping3 -1 -C 3 -K 3 –flood <target ip>

Utilizzando uno dei due, sarà possibile verificare se il vostro firewall è alla portata di questo attacco.

Per chi volesse leggere il report ufficiale può consultare la pagina http://soc.tdc.dk/blacknurse/blacknurse.pdf