Blacklisting vs. Whitelisting
Il Settembre 20, 2021 da adminPer proteggere un dispositivo o una rete da potenziali minacce, è necessario controllare l’accesso. Questo richiede un perimetro ben definito e modi per difendere quel perimetro. Richiede anche di decidere quali entità dovrebbero avere accesso e quali dovrebbero essere bloccate.
Ci sono due approcci primari usati per gestire quali entità hanno accesso al vostro sistema – blacklisting e whitelisting. Entrambi i metodi hanno i loro pro e contro, e non tutti sono d’accordo su quale sia il miglior approccio da usare. La scelta giusta dipende soprattutto dai bisogni e dagli obiettivi della vostra organizzazione e, spesso, la tattica ideale è una combinazione di entrambi. Esaminiamo in dettaglio la blacklist e la whitelist e discutiamo le differenze tra i due metodi.
Che cos’è la blacklist?
L’approccio della blacklist comporta la definizione di quali entità devono essere bloccate. Una lista nera è una lista di entità sospette o dannose a cui dovrebbe essere negato l’accesso o i diritti di esecuzione su una rete o un sistema.
Per esempio nel mondo fisico, un’autorità di controllo delle frontiere potrebbe mantenere una lista nera di terroristi noti o sospetti. Il proprietario di un negozio potrebbe avere una lista nera di taccheggiatori. Nel mondo della sicurezza della rete, una lista nera spesso consiste di software maligno come virus, spyware, trojan, worm e altri tipi di malware. Si potrebbe anche avere una lista nera di utenti, indirizzi IP, applicazioni, indirizzi e-mail, domini, processi o organizzazioni. È possibile applicare la blacklist praticamente a qualsiasi aspetto della vostra rete.
È possibile identificare entità sospette o dannose dalle loro firme digitali, euristica, comportamenti o con altri mezzi. Per mettere in blacklist le applicazioni, le organizzazioni possono creare le proprie blacklist e anche usare liste create da terzi, come i fornitori di servizi di sicurezza della rete. La lista nera è l’approccio tradizionale al controllo dell’accesso ed è stata a lungo utilizzata da strumenti anti-virus, filtri antispam, sistemi di rilevamento delle intrusioni e altri programmi software di sicurezza.
L’approccio della lista nera è incentrato sulla minaccia, e l’impostazione predefinita è quella di consentire l’accesso. Qualsiasi entità non presente nella lista nera è autorizzata ad accedere, ma tutto ciò che è noto o ci si aspetta sia una minaccia viene bloccato.
Per riassumere:
- La lista nera comporta il blocco dell’accesso a entità sospette o dannose.
- L’impostazione predefinita è quella di consentire l’accesso.
- La blacklist è incentrata sulle minacce.
Quali sono i pro e i contro della blacklist?
Uno dei maggiori pro dell’approccio della blacklist è la sua semplicità. Funziona sulla base di un semplice principio – basta identificare le minacce conosciute e sospette, negare loro l’accesso e lasciare andare tutto il resto.
Per gli utenti, è un approccio relativamente a bassa manutenzione. In molti casi, il software di sicurezza o il fornitore di servizi di sicurezza si occuperà di compilare la lista con poco bisogno di input da parte dell’utente.
Una lista nera non può mai essere completa, però, poiché nuove minacce emergono costantemente. Ogni giorno, l’istituto AV-TEST, che fa ricerche sulla sicurezza informatica, registra più di 350.000 nuovi programmi maligni e applicazioni potenzialmente indesiderate. Anche se tenere il passo con queste minacce è impegnativo, la condivisione delle informazioni sulle minacce può aiutare a rendere le blacklist più efficaci.
Anche con la condivisione delle informazioni, è facile per i fornitori di software di sicurezza mancare le minacce semplicemente perché sono così tante. Mentre la blacklist è efficace contro le minacce conosciute, è inutile contro le nuove minacce sconosciute come gli attacchi zero-day. Se la vostra organizzazione è abbastanza sfortunata da essere la prima ad essere colpita da un nuovo tipo di attacco, la blacklist non sarà in grado di fermarlo.
Gli hacker a volte progettano malware appositamente per eludere il rilevamento da parte degli strumenti che utilizzano un sistema di blacklist. Possono essere in grado di modificare il malware in modo che lo strumento della blacklist non lo riconosca come un elemento della lista nera.
Che cos’è la whitelist?
La whitelist affronta le stesse sfide della blacklist, ma utilizza un approccio opposto. Invece di creare una lista di minacce, si crea una lista di entità permesse e si blocca tutto il resto. Si basa sulla fiducia, e l’impostazione predefinita è quella di negare tutto ciò che è nuovo a meno che non sia provato che sia accettabile. Questo si traduce in un approccio molto più rigoroso al controllo degli accessi. È analogo al negare a chiunque l’accesso all’edificio del tuo ufficio a meno che non possa passare un controllo dei precedenti e abbia le credenziali per provare che l’ha fatto.
Se un firewall permette solo a particolari indirizzi IP di accedere a una rete, per esempio, sta usando l’approccio whitelisting. Un altro esempio con cui la maggior parte delle persone ha avuto a che fare è l’app store di Apple. L’azienda permette agli utenti di eseguire solo le applicazioni che Apple ha approvato e permesso nell’app store.
La tecnica più semplice che si può usare per mettere in whitelist le applicazioni è quella di identificarle dal nome del file, dalla dimensione e dal percorso della directory. Il problema con questa tecnica, però, è che gli hacker potrebbero creare un’applicazione con lo stesso nome di file e la stessa dimensione dell’applicazione in whitelist, permettendole di infilarsi nel sistema. Per combattere questa possibilità, è possibile utilizzare un approccio più rigoroso, che il National Institute of Standards and Technology (NIST) degli Stati Uniti raccomanda. Si tratta di utilizzare tecniche di hash crittografico e le firme digitali del produttore o dello sviluppatore di ogni componente.
Per creare una whitelist a livello di rete, è necessario considerare tutti i compiti che gli utenti devono eseguire e gli strumenti di cui avranno bisogno per completarli. Questa whitelist a livello di rete può includere l’infrastruttura di rete, i siti, le posizioni, le applicazioni, gli utenti, gli appaltatori, i servizi e le porte, così come dettagli più fini come le dipendenze delle applicazioni, le librerie software, i plugin, le estensioni e i file di configurazione. A livello di utente, una whitelist potrebbe includere indirizzi e-mail, file e programmi. L’utilizzo dell’approccio della whitelist richiede di considerare l’attività dell’utente così come i privilegi dell’utente.
Le organizzazioni possono creare le proprie whitelist o lavorare con terze parti che tipicamente creano whitelist basate sulla reputazione e danno valutazioni al software e ad altri elementi in base alla loro età, firme digitali e altri fattori.
Per riassumere:
- La whitelist consiste nel permettere l’accesso solo alle entità approvate.
- Il default è bloccare l’accesso.
- La whitelist è incentrata sulla fiducia.
Quali sono i pro e i contro della Whitelisting?
Whitelisting è un approccio molto più rigoroso al controllo dell’accesso rispetto alla blacklist, poiché l’impostazione predefinita è quella di negare gli elementi e far entrare solo quelli che si è dimostrato essere sicuri. Questo significa che i rischi che un malintenzionato acceda al tuo sistema sono molto più bassi quando usi l’approccio della whitelisting.
Mentre la whitelisting offre una maggiore sicurezza, può anche essere più complessa da implementare. È difficile delegare la creazione di una whitelist a una terza parte perché ha bisogno di informazioni sulle applicazioni utilizzate. Poiché richiede informazioni specifiche per ogni organizzazione, richiede più input da parte degli utenti. La maggior parte delle organizzazioni cambia regolarmente gli strumenti che utilizzano, il che significa che ogni volta che installano una nuova applicazione o una patch per quella esistente, devono aggiornare la loro whitelist. Amministrativamente, la whitelist può essere più complicata per l’utente, specialmente se hanno sistemi più grandi e complessi.
Le applicazioni in whitelist limitano anche ciò che gli utenti possono fare con i loro sistemi. Non possono installare quello che vogliono, il che limita la loro creatività e i compiti che possono eseguire. C’è anche la possibilità che il whitelisting abbia come risultato il blocco del traffico che si desidera, che è una probabilità più alta in alcune applicazioni che in altre.
Che cos’è il Graylisting?
Un’altra tecnica che è collegata al blacklisting e al whitelisting, ma meno frequentemente discussa è il graylisting, scritto anche greylisting. Come suggerisce il nome, è da qualche parte tra la blacklisting e la whitelisting. E’ tipicamente usato in tandem con almeno uno di questi due metodi principali.
Una graylist è una lista dove si possono inserire elementi che non sono ancora stati confermati come benigni o dannosi. Gli elementi in graylist sono temporaneamente banditi dall’accesso al vostro sistema. Dopo che un elemento finisce in una graylist, lo si esamina ulteriormente o si raccolgono più informazioni per determinare se dovrebbe essere permesso o meno. Idealmente, le cose non rimangono in una graylist per molto tempo e si spostano rapidamente in una blacklist o in una whitelist.
Come si decide cosa fare con un elemento in graylist dipende dal tipo di entità che è. Uno strumento di sicurezza potrebbe, per esempio, chiedere all’utente o all’amministratore di rete di prendere una decisione.
Un esempio dell’uso di graylist è nella posta elettronica. Se un filtro antispam non è sicuro se accettare un messaggio, può bloccarlo temporaneamente. Se il mittente tenta di inviare nuovamente il messaggio entro un determinato periodo, allora sarà consegnato. In caso contrario, rifiuterà il messaggio. Il pensiero dietro a questo è che la maggior parte dello spam proviene da applicazioni progettate per inviare spam, non da utenti reali, quindi non tenteranno di inviare nuovamente un’email se ricevono un messaggio che dice che è temporaneamente bloccato. Un vero utente, invece, invierebbe di nuovo l’email.
Quale approccio dovresti usare?
Quindi, quale approccio è giusto per te? Vediamo quando usare ognuno di essi e come usarli entrambi insieme.
Quando usare la blacklist
La blacklist è la scelta giusta se vuoi rendere facile l’accesso degli utenti ai tuoi sistemi e vuoi minimizzare lo sforzo amministrativo. Se dai più valore a queste cose che ad avere il controllo di accesso più rigoroso possibile, scegli la blacklisting.
La blacklisting è tradizionalmente l’approccio più comune che i team di sicurezza usano in gran parte perché quando le persone progettano i sistemi, spesso vogliono che quante più persone possibile siano in grado di accedervi. Un negozio di e-commerce, per esempio, molto probabilmente preferirebbe rischiare una transazione fraudolenta occasionale piuttosto che bloccare un cliente legittimo dall’effettuare un acquisto. Se un negozio di ecommerce bloccasse ogni cliente che non conosceva già, non durerebbe molto a lungo.
Se si vuole fornire qualcosa al pubblico e massimizzare il numero di persone che possono usarlo, la blacklist è tipicamente l’approccio migliore.
In breve, usare la blacklist quando:
- Vuoi che il pubblico possa usare un sistema, come un negozio di ecommerce.
- Vuoi un ambiente meno restrittivo.
- Vuoi minimizzare lo sforzo amministrativo.
Quando usare la whitelisting
Se, invece, vuoi massimizzare la sicurezza e non ti importa dello sforzo amministrativo extra o dell’accessibilità limitata, la whitelisting è la scelta migliore. La whitelisting è ideale quando il controllo degli accessi e la sicurezza sono cruciali.
La whitelisting funziona bene per i sistemi che non sono pubblici. Se hai un’applicazione a cui solo alcuni dipendenti della tua azienda hanno bisogno di accedere, per esempio, potresti mettere in whitelist gli indirizzi IP dei loro computer e bloccare tutti gli altri indirizzi IP dall’accesso all’applicazione.
Inoltre, la whitelist può essere utile quando vuoi definire quali azioni può eseguire un’applicazione o un servizio e limitarle dal fare altro. Si può ottenere ciò inserendo nella whitelist certi tipi di comportamento. Per esempio, si potrebbe avere un computer che si usa solo per eseguire un compito specifico. Nella hall di un hotel, per esempio, si potrebbe avere un computer che gli ospiti possono utilizzare per accedere. Potresti mettere in whitelist il sito web dell’hotel in modo che sia l’unico sito a cui gli ospiti possono accedere sul dispositivo. Come altro esempio, potreste creare una policy che permetta a un microservizio di consumare una certa quantità di risorse o di essere eseguito su un particolare host, ma che lo spenga se cerca di usare più risorse o di spostarsi su un nuovo host.
Non sarebbe pratico fare questo usando la blacklist perché il numero di possibili comportamenti che non volete che la vostra applicazione esegua è troppo alto. Non puoi prevedere tutto ciò che l’applicazione potrebbe fare, ma puoi definire ciò che vuoi che faccia se vuoi che faccia solo cose molto specifiche.
Usa la whitelisting quando:
- Solo un gruppo selezionato di utenti deve usare un sistema.
- Vuoi un ambiente più controllato.
- Non ti dispiace investire più sforzi amministrativi.
Utilizzare blacklist e whitelist insieme
Spesso, usare blacklist e whitelist insieme è la scelta ideale. Puoi usare approcci diversi a diversi livelli della tua infrastruttura e persino usarli entrambi all’interno dello stesso livello.
Potresti adottare un approccio da blacklist, per esempio, per il rilevamento di malware e istruzioni usando un software di sicurezza, ma usare un approccio da whitelist per controllare l’accesso alla rete nel suo complesso. Potreste anche mettere in blacklist gli host in base ai loro indirizzi IP mentre mettete in whitelist il comportamento dell’applicazione desiderata.
Potreste anche mettere in whitelist l’accesso a un servizio in base alla regione geografica, permettendo solo agli utenti delle regioni in cui sapete che si trovano gli utenti reali. Allo stesso tempo, però, si potrebbe avere una lista nera di utenti malintenzionati situati in quelle regioni. Questo è un esempio di utilizzo di whitelisting e blacklisting all’interno dello stesso livello.
Molte organizzazioni usano sia blacklisting che whitelisting per diverse parti delle loro strategie di sicurezza. Per esempio, controllare l’accesso a un computer o a un account usando una password è whitelisting. Solo coloro che hanno la password sono autorizzati ad accedere, e tutti gli altri non possono entrare. Molte di queste stesse organizzazioni eseguono anche programmi anti-malware che usano una lista nera di malware conosciuti per bloccare i programmi dannosi.
Migliora la tua sicurezza di rete con Consolidated Technologies, Inc.
Il controllo dell’accesso è al centro della sicurezza di rete. Blacklisting e whitelisting sono entrambi approcci legittimi per controllare l’accesso alle vostre reti e mantenere i vostri dati al sicuro. Quello giusto per te dipende dai bisogni e dagli obiettivi della tua organizzazione.
Gli esperti di Consolodated Technologies, Inc. possono aiutarti a capire quali strategie di cybersecurity sono migliori per la tua organizzazione e fornirti una gamma di soluzioni per aiutarti a raggiungere i tuoi obiettivi di sicurezza. Offriamo soluzioni firewall, valutazioni di vulnerabilità della rete, assistenza per la conformità e anche soluzioni di sicurezza gestite complete. Per parlare con uno dei nostri esperti su quali strategie e soluzioni di cybersecurity sono giuste per voi, contattateci oggi stesso.
Lascia un commento