exploit zero day

Vulnerabilità zero-day, ecco perché sono così tanto pericolose

Un attacco zero-day sfrutta una vulnerabilità non patchata (o non risolta) e ciò potrebbe influenzare negativamente le aziende dando vita a sistemi informatici o software vulnerabili.
Infatti, fino a quando una patch non sarà disponibile per colmare la lacuna di sicurezza, i cyber criminali cercheranno di scoprire e sfruttare al massimo la vulnerabilità.

In questo articolo avrai una panoramica che descrive in dettaglio ciò che le aziende devono sapere sulle vulnerabilità zero-day.
Scopriamo insieme cosa sono e come funzionano, in modo da poter ridurre al minimo i rischi e le minacce che le sfruttano.

Indice degli argomenti

Cos’è una vulnerabilità zero day

Una vulnerabilità zero-day è una vulnerabilità di sicurezza di un sistema informatico o propria di un dispositivo che è stata scoperta (e in qualche modo divulgata) ma non è ancora patchata. Un exploit che attacca una vulnerabilità zero-day è chiamato exploit zero-day.

Le vulnerabilità zero day normalmente vengono scoperte da terzi (non necessariamente con cattive intenzioni) prima che i ricercatori della sicurezza e gli sviluppatori di software possano rendersi conto della loro esistenza. Di conseguenza, se la stessa casa madre non conosce l’esistenza di un problema di sicurezza sul proprio prodotto resta complesso creare una patch capace di risolverlo.

Le vulnerabilità zero-day rappresentano il rischio più elevato per gli utenti perché fino a prova contraria non hanno una soluzione.

Trattandosi di un problema che consente ad un hacker di andare a colpo sicuro nel condurre un attacco informatico, dobbiamo dire che le vulnerabilità zero day sono uniche nel loro genere perché:

  • I cybercriminali fanno a gara per sfruttare queste vulnerabilità;

  • I sistemi sono esposti fino a quando non viene emessa una patch dal fornitore.

I rischi di una vulnerabilità 0-day

Una vulnerabilità zero-day pone rischi di sicurezza significativi, con effetti che dipendono principalmente dall’intenzione dell’attacco e dalla rilevanza della vulnerabilità stessa.

Oltre all’esposizione dei dati sensibili dell’azienda e dei sistemi critici, le organizzazioni avranno a che vedere anche con danni alla reputazione, perdite finanziarie e sanzioni imposte dalle normative sulla privacy e sulla gestione delle patch.

I cybercriminali possono approfittare del divario di tempo tra la scoperta della vulnerabilità e la creazione della patch, per riuscire ad attaccare il sistema informatico o il software.

Purtroppo nell’era moderna, in cui nuove tecnologie sono costantemente integrate in quelle già esistenti (spesso obsolete), le vulnerabilità vengono inevitabilmente introdotte nei sistemi che le usano.

In effetti, si prevede che gli attacchi zero-day aumenteranno anno dopo anno.

Come trovare una vulnerabilità 0-day

Per definizione, le vulnerabilità zero-day non sono rilevabili poiché mancano di correzioni.
Ci sono, in ogni caso, una varietà di tecniche per scoprire problemi software precedentemente sconosciuti.

Se stai cercando di capire come proteggere il tuo sistema, questi consigli potrebbero aiutarti a trovare falle di sicurezza precedentemente sconosciute.

Scansione di vulnerabilità (o Vulnerability Assessment)

Alcune vulnerabilità 0-day possono essere rilevate tramite la scansione delle vulnerabilità.
Ne esistono di tre tipi diversi:

  • SAST: consente agli sviluppatori di scoprire le vulnerabilità più comuni prima della creazione di una build.
    Un team di sviluppo potrebbe utilizzare anche più strumenti SAST per supportare vari linguaggi o piattaforme di sviluppo.
  • DAST: consente di scansionare una build in esecuzione ed individuare problemi di configurazione, gestione degli errori, input e output dell’applicazione ecc. SAST e DAST sono di solito utilizzati insieme.
  • IAST: un mix tra DAST e SAST, viene considerato un test grey-box.

Le aziende possono utilizzare strumenti di scansione di vulnerabilità per identificare falle nella sicurezza all’interno del codice del software, valutare l’applicazione da una prospettiva esterna e cercare nuove vulnerabilità che potrebbero essere state introdotte a causa della mancanza di aggiornamenti del software.

In realtà, la maggior parte delle organizzazioni impiega molto tempo per sistemare le vulnerabilità di recente divulgazione (Patch management), mentre gli aggressori possono trarre vantaggio da una vulnerabilità zero-day in pochi secondi.

Fuzzing

Il fuzzing è un metodo che prevede di alimentare un computer con una quantità enorme di dati ad intervalli casuali.
L’attaccante esamina quindi la risposta del programma. Il sovraccarico potrebbe comportare arresti anomali o comportamenti strani, che possono rivelare le vulnerabilità.
Infine, l’attaccante sviluppa il codice per replicare il comportamento che ha causato la falla, che è anche il modo in cui viene realizzato l’exploit.

Honeypot

Lanciare un honeypot (un sistema, componente hardware o software usato come trappola) è un modo per trovare una vulnerabilità 0-day.
Ma come funziona?
Supponiamo che apri un server Linux e lo lasci esposto ad Internet.
Installi vari strumenti di monitoraggio e controlli periodicamente i registri.

Dopo un po’ potresti notare che il tuo server agisce in modo strano e dai registri potresti vedere alcune richieste interessanti.
Dopo un’ulteriore indagine potresti capire di essere stato violato con una vulnerabilità precedentemente sconosciuta.

Come prevenire le vulnerabilità

Le vulnerabilità zero-day sono difficili da prevenire ed evitare poiché si palesano senza preavviso.
Spesso gli attacchi che sfruttano le vulnerabilità 0-day prendono di mira obiettivi importanti.
Nonostante ciò, seguendo buone pratiche di sicurezza e avendo un piano di backup, è possibile aiutare a diminuirne il possibile impatto.

Possiamo proteggere i nostri dispositivi e dati nel caso di un attacco, anche se non possiamo sempre scoprirne le vulnerabilità.
Ti consigliamo di:

  1. Mantenere aggiornato il sistema operativo per garantire l’installazione delle patch di sicurezza, così il pericolo di infiltrazione di malware sarà ridotto al minimo;
  2. Monitorare e prevenire attività sospette, come exploit 0-day, attraverso l’implementazione di firewall aziendali;
  3. Diventare ben informato sulle vulnerabilità zero-day e cercare rimedi quando vengono scoperte;
  4. Installare un software antivirus che dovrebbe essere utilizzato per proteggersi da minacce sia note che da quelle sconosciute.

La distribuzione di un Web Application Firewall (WAF) sulla rete è inoltre una delle tecniche più efficaci per evitare attacchi 0-day.
Un WAF esamina tutto il traffico in arrivo e filtra input dannosi che potrebbero essere utilizzati per sfruttare le vulnerabilità di sicurezza.

Inoltre, l’autoprotezione dell’applicazione di runtime è l’innovazione più recente nella battaglia contro gli assalti 0-day (RASP).
Gli agenti RASP risiedono all’interno delle applicazioni, valutando i payload delle richieste per decidere se esse siano legittime o dannose, consentendo così alle app di proteggersi.

Molte delle sfide che derivano dal rilevamento della vulnerabilità e dallo studio e rilascio delle patch possono essere risolte con la convalida dell’input.
Quest’ultima potrebbe garantire che il sistema venga utilizzato così come presupposto. Ad esempio, se solo i numeri sono autorizzati nel campo di input, immettere delle lettere potrebbe arrestare il sistema. Nel peggiore dei casi, potrebbe persino portare a vulnerabilità, come l’SQL injection.

Bisogna però tenere presente che anche se è in atto la convalida dell’input, il codice potrebbe comunque essere vulnerabile.
In questo caso, se un utente malintenzionato trova una vulnerabilità, può provare ad aggirarla.

Un’altra tecnica è quella di distribuire aggiornamenti software per le vulnerabilità appena trovate il più rapidamente possibile.
Sebbene ciò non impedisca attacchi zero-day, se le patch e gli aggiornamenti del software vengono eseguiti rapidamente, le possibilità di un attacco saranno notevolmente ridotte. Nonostante ciò, c’è un motivo preciso per cui le correzioni di sicurezza potrebbero essere ritardate:

  • Ci vuole tempo per identificare le vulnerabilità, creare una patch e diffonderla tra i consumatori;
  • La patch può anche richiedere del tempo per essere applicata nei sistemi organizzativi.
    Più tempo ci impiega questa attività, più è probabile che un attacco zero-day venga sviluppato.

Conclusioni

Come tutti sappiamo, una vulnerabilità 0-day è un grosso problema non solo per le società di software e gli sviluppatori, ma anche per le persone e persino i governi, poiché i cybercriminali potrebbero accedere a dati critici.

Trovare una vulnerabilità zero-day è difficile ma quando accade, è un vero disastro.

Chi è Onorato Informatica?

Azienda specializzata in sicurezza informatica da oltre 15 anni, certificata ISO 9001 e 27001

Onorato Informatica è un’azienda informatica, specializzata in sicurezza informatica, da oltre 15 anni.
Forniamo servizi di Vulnerability Assessment e Penetration Test a oltre 4500 clienti in tutta Italia.

Ci occupiamo di Cyber Security dalle nostre sedi di Mantova, Parma, Milano e Los Angeles. Siamo un’azienda certificata ISO 9001ISO 27001 e azienda etica.

Se vuoi conoscere i servizi di sicurezza informatica e sapere come possiamo aiutarti, contattaci.