Cosa sono gli Zero-Day?


Gli zero-day (o 0day) sono tipi di attacchi informatici che sfruttano bug software non ancora noti e per i quali non esistono patch. Quando dico “non ancora noti” intendo dire che i suddetti bug non sono noti ne ai produttori del software ne tanto meno agli utenti.

Zero-day significa appunto “zero giorni” da quando la vulnerabilità è stata resa pubblica, appunto zero perché la vulnerabilità non è pubblica!

Per comprendere a fondo le implicazioni di questo tipo di exploit analizziamo brevemente come i pirati possono attaccare un sistema.

Esistono due tipi di approccio:

L’hacking rivolto alle vulnerabilità e l’hacking tattico.
Mentre il secondo approccio (hacking tattico, tactical exploitation) tende a sfruttare elementi che non coinvolgono il fattore tempo (come errori di configurazione, attacchi laterali in genere) il primo tipo, l’hacking rivolto alle vulnerabilità è direttamente coinvolto nella discussione sugli zero-day.

In un attacco rivolto alle vulnerabilità il pirata cercherà in una prima fase di ricognizione di determinare la presenza di software o sistemi le cui vulnerabilità sono già note sperando che lepatch non siano state applicate o le contromisure non siano state ancora prese.
Se il pirata non è in grado di trovare un punto d’appiglio in questo modo, può sperare di trovare un bug ancora ignoto: questo è lo zero-day.

Nell’esempio di cui sopra ho semplificato. Lo zero-day (le vulnerabilità in genere) non viene scoperto da un pirata intento a perforare un sistema ma da un ricercatore che ha lo scopo preciso di cercare vulnerabilità e creare strumenti (exploit) in grado di sfruttarle. In un secondo momento la vulnerabilitàraggiungerà i pirati “operativi” che seguono l’attacco.

Il ciclo di vita di uno zero-day può essere riassunto dai seguenti punti:

  1. un ricercatore/pirata identifica un bug
  2. crea un exploit e lo sfrutta
  3. si diffonde la notizia di un nuovo attacco sconosciuto
  4. la software house scopre la causa degli attacchi
  5. viene creata la patch
  6. viene rilasciata la patch
  7. viene rivelata pubblicamente l’esistenza di una vulnerabilità
  8. gli utenti aggiornano i propri sistemi


La forza dello zero-day sta nel fatto che tra il punto 2 e il punto 7 può passare molto tempo, tempo che il pirata può sfruttare per attaccare qualsiasi sistema affetto da quel bug senzaincontrare la minima resistenza: in questo tipo ti attacco il fattore tempo è determinante.

Lo stesso concetto vale per i virus: un virus la cui firma non sia ancora stata aggiunta ai database degli antivirus può essere considerato un malware zero-day: tutti i virus “nuovi” sono zero-day. Per questo motivo qualcuno sostiene che gli antivirus sono inutili.

Esistono diversi modi per diffondere gli exploit zero-day. C’e’ un mercato nero, dove i black-hat fanno circolare in modo riservato i propri codici; e c’è poi un mercato alla luce del sole.
Per esempio citiamo il sito www.wslabi.com dove possiamo trovare queste “armi digitali” all’asta, o idefense.com che acquista exploit direttamente dai ricercatori.