Gli incidenti informatici coinvolgono ormai quasi ogni giorno le multinazionali così come le piccole aziende, enti pubblici così come realtà private, infrastrutture computazionali di prestigiosi centri industriali così come PC server o smartphone dell’azienda dietro l’angolo, infrastrutture critiche di ospedali e centri siderurgici, ma anche datacenter comunali e governativi: di fatto, la trasformazione digitale ha allargato notevolmente la superficie di attacco di un’azienda e il modo più efficace ed efficiente per proteggere un perimetro sempre più vasto e virtuale consiste nell’adottare un modello di Zero Trust Security basato su un rigido processo di verifica delle identità.
Indice degli argomenti
I principi cardine della Zero Trust Security
D’altronde, ormai non c’è limite ai target colpiti dagli attackers (siano essi parte di una cyber gang, così come uno o più cracker solitari): dal pizzo informatico (giacché di questo si tratta quando sentiamo o sentiremo nuovamente la parola “ransomware”) ai defacement, dagli accessi abusivi ai sistemi informativi fino ai furti d’identità utilizzati per svuotare conti correnti bancari o utilizzati per la compromissione via software di ATM e POS.
Il denominatore comune di questi attacchi informatici che vanno a segno è un deficit nella progettualità dei meccanismi di sicurezza informatica, meccanismi di verifica e controllo che dovrebbero invece essere architetturalmente alla base di software, sistemi informatici e reti: meccanismi di sicurezza informatica, procedure, best practice e modelli volti a eliminare o quanto meno a limitare al minimo le possibili superfici di attacco ma anche i “buchi” progettuali di sicurezza informatica e che dovrebbero essere la prima priorità per i sistemi informatici e informativi di aziende, governi, enti pubblici e privati.
Oggi soprattutto, alle soglie del 2022, con i vari Think Tank tecnologici che ci parlano e ci invitano sempre più all’adozione di processi di migrazione verso soluzioni di cloud computing, così come della pervasività del 5G e dell’IoT nell’industria e in generale nelle vite di ognuno di noi, è quanto mai opportuno riflettere sull’opportunità o meno di queste migrazioni, sull’adottare o meno determinate architetture innovative di cyber security rispetto a quelle tradizionali, nell’ottica di garantire la sicurezza delle reti informatiche, dei dati (personali e non) che vi transitano e delle applicazioni che vi girano.
È dunque utile apprendere tutta una serie di concetti e principi di base delle architetture di rete, dei modelli di threat e delle considerazioni progettuali indipendenti da vendor specifici ma che, se messi in atto, producono sistemi e servizi informatici resilienti ai vettori di attacco ad oggi conosciuti.
È su questi principi, per l’appunto, che si fonda la tecnica di modellizzazione nota nel mondo informatico nord-europeo e statunitense come Zero Trust Security.
Cos’è la Zero Trust Security
Con l’adozione della tecnica Zero Trust Security nulla viene dato per scontato e ogni singola richiesta di accesso alle infrastrutture aziendali – che sia fatta da un cliente in banca o da un server virtualizzato operativo nel datacenter aziendale – è rigorosamente controllata e deve dimostrare di essere autorizzata.
L’adozione di questo modello riduce al minimo gli impatti negativi derivanti dalla seppur minima possibilità che un attacker possa effettuare spostamenti laterali, effettuare esfiltrazioni, riduce i colli di bottiglia e le problematiche nella gestione di VPN e certificati digitali, evita i sovraccarichi derivanti da una gestione centralizzata dei firewall: se avessimo la possibilità di visionare i modelli architetturali delle reti e dei sistemi informatici delle vittime dei più recenti attacchi ransomware andati a segno nelle infrastrutture informatiche di pubbliche amministrazioni e aziende (italiane e non), scopriremmo probabilmente che il 90% di essi erano basati su di una rete piatta o con una segmentazione ridotta all’osso e pertanto le vittime (o, se volessimo ragionare di responsabilità, potremmo tirare in ballo i “fornitori” ICT/CyberSec delle vittime, giacché alcune delle vittime si sono affidate a fornitori esterni) non avevano ingegnerizzato né la propria rete men che meno le proprie applicazioni riflettendo preventivamente in termini di modelli di threat.
Chi può trarre giovamento dalla modellizzazione Zero Trust Security (ZTS)? Chi in azienda ricopre il ruolo di CISO o di CTO, ma anche chi esercita operativamente il ruolo di Network Engineer, di Cybersecurity Engineer o di System/Cloud Architect in enti pubblici o privati, in piccole medie o grandi aziende, senza tralasciare chi è coinvolto in processi di modellizzazione relativamente a progetti di ingegnerizzazione o di riprogettazione di reti informatiche o sistemi utilizzati da SOC/CERT/CSIRT.
Dove e quando nasce la Zero Trust Security
È stato John Kindervag, analista del settore presso la Forrester, a utilizzare per la prima volta il termine “Zero Trust”, ma è stato ufficializzato nell’aprile 1994 da Stephen Paul Marsh nella sua tesi di Dottorato sulla Sicurezza Informatica presso l’Università di Stirling.
Il lavoro di Marsh riguardava uno studio del “trusting”, ossia della fiducia come qualcosa che può essere descritto in un modello matematico piuttosto che semplicemente un fenomeno conflittuale o puramente umano.
Nel 2009, Google ha implementato un’architettura ZTS denominata BeyondCorp (a differenza delle VPN tradizionali, le policy di accesso di BeyondCorp si basano sulle informazioni su di un dispositivo, il suo stato e l’utente associato; BeyondCorp considera sia le reti interne che le reti esterne completamente non attendibili (“untrusted”) e consente l’accesso alle Applicazioni sostenendo e applicando dinamicamente diversificati “livelli di accesso”).
Nel 2014 Gianclaudio Moresi, Security Engineer operativo nel mercato svizzero, ha brevettato il primo sistema di firewalling basato su standard ZTS per proteggere i client da malware ed exploit 0-day (Zero Day Protection con Zero Trust Network).
Dal 2019, il britannico National Cyber Security Centre (NCSC) raccomanda agli architetti di reti informatiche di adottare un approccio Zero Trust Security per i progetti ICT/ICS, in particolare dov’è previsto un uso significativo di servizi Cloud e IoT.
Lo scorso anno, il NIST ha pubblicamente rilasciato il documento 800-207 in cui si delineano le proprietà che devono soddisfare le architetture di sicurezza informatica (di sistemi e reti informatiche per uso civile) per potersi dire basate su architetture Zero Trust Security.
Fondamenti della Zero Trust Security
L’assunto (adottato da molti architetti di sistema ed esperti di rete che ho personalmente conosciuto in più di vent’anni di esperienza professionale nel settore CyberSec/InfoSec) che i sistemi e il traffico di rete all’interno di un datacenter possano essere considerati attendibili è fondamentalmente ingannevole.
Le reti informatiche e i relativi modelli di utilizzo moderni non rispecchiano più i modelli adottati dalle tecniche di difesa perimetrale ideate trent’anni fa.
Di conseguenza, oggi come oggi muoversi liberamente all’interno di un’infrastruttura “ingannevolmente sicura” (poiché progettata su presupposti fallaci) è spesso banale per un attacker una volta che un singolo host o device sia stato compromesso.
La Zero Trust Security si fa carico dei problemi inerenti la nostra fiducia nelle reti, giacché con le tecniche adottate dalla modellizzazione ZTS è possibile proteggere la comunicazione e l’accesso alle reti in modo così efficace che la sicurezza del livello di trasporto può passare in secondo piano, e tutto questo anche grazie a un utilizzo intensivo e ottimizzato di moderni sistemi di cifratura.
Quali sono le fondamenta di un’architettura Zero Trust Security? Essenzialmente risponde a queste cinque asserzioni:
- assumere che le reti siano fondamentalmente ostili;
- sussistono minacce (d’ora in avanti “threat”) interne ed esterne alle reti;
- la localizzazione di una rete non è un presupposto sufficiente per “trustare” quella rete;
- ogni dispositivo, utente e flusso di rete deve essere autenticato e autorizzato;
- le policy devono essere dinamiche e calcolate da quante più fonti di dati possibili.
Le architetture di sicurezza di rete tradizionali suddividono le reti in zone limitrofe differenti, protette da uno o più firewall in cascata. Ad ogni zona il progettista assegna un certo livello di fiducia (“trust level”), che determina quali risorse di rete si potranno raggiungere da quella specifica zona.
Ad esempio, le risorse ritenute più a rischio, come i web server esposti sulla rete internet, sono collocati in un’area di esclusione (spesso denominata “demilitarizzata”, e indicata con l’acronimo “DMZ”), dove il traffico può essere strettamente monitorato e controllato: un tale approccio dà origine a un’architettura simile alla seguente, che il lettore avrà probabilmente già incontrato se si occupa progettualmente di reti o architetture di sicurezza informatica:
Modello di architettura tradizionale di sicurezza informatica.
Questo modello, seppur adottato ancora oggi da tantissime (anche insospettabili) aziende ed enti, pecca su più fronti:
- carenza o assenza totale dell’ispezione interna alla zona di riferimento;
- poca flessibilità nel posizionamento dell’host (sia a livello fisico che logico);
- single point of failure;
Qualora i requisiti delle localizzazioni delle Reti venissero rimossi, con il modello tradizionale verrebbero rimosse anche le necessità delle VPN. Una VPN consente a un utente, previa autenticazione, di ricevere un indirizzo IP per accedere a una Rete remota.
Il traffico è quindi incapsulato dal dispositivo alla Rete remota, dove viene decifrato e instradato. Ma relativamente alle VPN standard, si tratta di uno dei più grandi buchi di Sicurezza Informatica su cui non tutti ragioniamo (c’è invece chi appunto lo fa da decenni, all’insaputa di molte aziende, privati cittadini ed enti).
La modellizzazione di una rete Zero Trust Security, viceversa, capovolge il diagramma tradizionale. Se partiamo dall’assunto che la posizione della rete in esame non ha valore, le VPN risultano improvvisamente obsolete, insieme a molti altri costrutti di Rete.
Ovviamente questo approccio richiede di spingere l’applicazione il più lontano possibile dai bordi della rete ma, allo stesso tempo, solleva il core da una grande responsabilità.
Esistono da decenni firewall stateful in tutti i principali sistemi operativi, e potenti firewall con funzionalità DPI, inoltre i progressi nella commutazione e nel routing ci danno l’opportunità di installare funzionalità avanzate nell’edge.
Tutti questi potenziali vantaggi ci segnalano che è arrivato il momento per un cambio di paradigma. Sfruttando l’applicazione delle policy distribuite e applicando i principi della modellizzazione Zero Trust Security, è possibile arrivare a produrre un’architettura simile alla seguente: