La sicurezza Cloud è diventata un tema decisamente molto “hot” e critico per tutte le aziende che scelgono di adottare ambienti e servizi Cloud. Se implementati in maniera consapevole, i servizi in cloud sono in grado di assicurare diversi vantaggi in termini di sicurezza informatica, dal momento che la maggior parte delle operazioni necessarie ricadono in capo ai cloud service provider (CSP), il che consente di alleggerire e deresponsabilizzare gran parte del lavoro di cybersecurity a livello aziendale.

Dal canto loro, sfruttando evidenti economie di scala, i CSP possono arrivare sulla sicurezza informatica dei sistemi laddove ben difficilmente una singola azienda potrebbe anche soltanto pensare di provarci.

Il cloud consente benefici in termini di sicurezza a business di qualsiasi dimensione, ma sono soprattutto le PMI a poter fare il cosiddetto salto di qualità, in quanto ben difficilmente avrebbero le risorse per garantire la sicurezza nel caso in cui mantenessero on-premise tutta l’infrastruttura IT, hardware e software, senza eccezione alcuna.

Il fronte della minaccia informatica è ormai talmente ampio e rapido nella propria evoluzione distruttiva, che le aziende devono affidarsi sempre più spesso ai servizi in cloud per salvaguardare i loro dati. Ovviamente non si migra in cloud soltanto per ragioni legate alla cybersecurity, ma gli aspetti legati alla sicurezza stanno scalando rapidamente la vetta delle priorità a livello IT.

Tuttavia, il cloud non è affatto esente da rischi. Ritenere che il cloud sia sicuro a prescindere è un peccato di presunzione che si rivela spesso fonte di amare sorprese. È infatti frequente assistere ad errori di configurazione, monitoraggio e aggiornamento dei servizi e delle macchine che non vengono gestite e amministrate dal CSP. Molto spesso, ciò accade quando vi è una scarsa visibilità e osservabilità dei propri servizi in cloud, il che accade spesso quando ci si avvale di soluzioni offerte da vari vendor (multicloud).

Errare è umano, perseverare è diabolico, per cui se vogliamo evitare di subire dei data breach, dobbiamo stare molto attenti a non cadere almeno negli errori più frequenti in fatto di sicurezza cloud. Senza la pretesa di voler presentare l’intero campionario degli errori, ci soffermeremo soprattutto sulle problematiche più diffuse a livello di server, dati e applicazioni.

Grazie ad operazioni che il più delle volte si basano sul semplice buon senso, possiamo ridurre sensibilmente i rischi di subire un data breach. Attraverso una semplice checklist, proviamo ad interrogarci in prima persona in merito alla nostra condotta in cloud, per capire dove siamo più a rischio.

Cercheremo inoltre di capire come intraprendere una condotta utile a salvaguardare le risorse IT dalle attenzioni dei cybercriminali e dalle situazioni di perdita accidentale dei dati che si generano in occasione di guasti ai sistemi informatici, ma anche grazie all’inefficienza e alla disorganizzazione.

Sicurezza Cloud: attacco degli zombie, teniamo d’occhio le risorse inutilizzate?

La tendenza delle linee di business aziendali è di attivare servizi in cloud per eseguire i loro carichi di lavoro. Tuttavia, quando cessa la necessità, spesso tali servizi rimangono attivi ma inutilizzati e “abbandonati a sé stessi”. Che si tratti di server o applicazioni, diventano un facile bersaglio per i malintenzionati, che possono sfruttarli per gli scopi più vari, come l’accesso fraudolento ai sistemi aziendali, il furto di dati o addirittura usare i server non monitorati come repository per i loro malware.

Per rendere l’idea della portata del fenomeno, alcuni dati pubblicati da IEEE Computer Society riportano come, già all’alba della pandemia Covid-19, nel cloud vi fossero almeno 10 milioni di server zombie. Un numero francamente impressionante.

È quindi molto importante avere osservare quanto accade nella nostra intera infrastruttura IT, sia perché i server zombie sono estremamente pericolosi per la sicurezza aziendale, sia perché costituiscono un onere importante, che potrebbe essere tranquillamente eliminato dalla voce costi delle risorse IT.

Cessare l’impiego di risorse ridondanti e inutili costituisce inoltre una best practice per contenere i consumi energetici e contribuire a sviluppare sistemi di gestione sostenibili e rispettosi dell’ambiente.

Cosa fare per la sicurezza cloud?

La prima cosa da fare per evitare il proliferare di zombie in giro per la rete è adottare una governance delle risorse IT, avvalendosi delle tecnologie per l’osservabilità, il monitoraggio e l’orchestrazione dei sistemi. In particolare, si rende consigliabile.

  • Rimuovere sistematicamente le risorse IT quando non sono più strettamente necessarie. Qualsiasi moderno tool di monitoraggio è in grado di identificare facilmente, attraverso log dormienti, le risorse inattive e indicarci da quanto non svolgono più alcuna attività.
  • Taggare le risorse in funzione dei progetti, in modo da poterle facilmente ricondurre ai carichi di lavoro eseguiti. Quando un progetto si conclude, è pertanto possibile richiamare le risorse impegnate e valutare quali abbia effettivamente senso tenere attive.
  • Utilizzare i sistemi di osservabilità e monitoraggio (es. full stack observability) per effettuare una reportistica regolare sulle attività in cloud. Tale prassi, al di là di consentire adeguate valutazioni tecniche, deve contribuire a sviluppare una vera e propria cultura zombie-free all’interno dell’azienda. È infatti bene ricordare a chi lascia attivi servizi inutili che sta spendendo soldi per mantenere una risorsa non necessaria, il che rende meno profittevoli le commesse, oltre a contribuire ad un controproducente aumento della superficie d’attacco.

Identificare server e app zombie non è sempre facile, considerando che potrebbero rimanere attivi servizi di alcuni CSP che l’azienda non monitora, in quanto ritiene che certi contratti di fornitura siano cessati da diverso tempo. In tali casi, è possibile accorgersi che siano ancora attivi soltanto controllando le fatture in amministrazione. Si auspica quindi di implementare dei rigorosi criteri di controllo sin quando i servizi in cloud vengono attivati.

Applichiamo le patch di sicurezza ai server che amministriamo in cloud (IaaS)?

Quando ci si avvale di soluzioni IaaS (Infrastructure-as-a-Service) si utilizzano server fisici e virtuali messi a disposizione dal cloud service provider. Questi vanno tuttavia gestiti interamente dagli amministratori di sistema delle aziende clienti: sia per quanto riguarda le risorse hardware da allocare, sia in merito ai sistemi operativi e alle applicazioni che i server, le macchine virtuali e i container vanno ad eseguire.

Chi non ha particolare confidenza con la gestione di ambienti IT in cloud tende infatti a confondere spesso quelli che sono le operazioni di sicurezza che vengono eseguite dal CSP e quelle che rimangono in capo ai clienti.

Da questa ambiguità derivano facilmente una serie di errori in materia di protezione dei dati, a cominciare dalla mancata applicazione delle patch di sicurezza che i vendor puntualmente rilasciano per risolvere le vulnerabilità che vengono di giorno in giorno rese note dal CVE (Common Vulnerabilities and Exposures) e trattate dagli esperti in materia di threat intelligence.

Un server non aggiornato, oggi come oggi, è una vera e propria bomba ad orologeria, cosi come lo è un’applicazione che non risponde a certi standard minimi in materia di sicurezza, come vedremo nel corso dei prossimi paragrafi.

Cosa fare per la sicurezza cloud IaaS?

Per scongiurare ragionevolmente i rischi derivanti da sistemi operativi e applicazioni non aggiornate è ancora una volta consigliabile investire sull’osservabilità della propria infrastruttura IT.

Nei contesti in cui il SoC rileva una potenziale criticità, data ad esempio da un numero molto elevato di risorse in esecuzione in multicloud, è inoltre consigliato adottare pratiche di vulnerability assessment, svolte da specialisti in grado di eseguire e interpretare correttamente i risultati delle scansioni.

Rilevare una vulnerabilità di sistema a livello di sicurezza consente di mitigare e risolvere le falle prima che vengano scoperte dai cybercriminali, pronti a sfruttarle con intenzioni ben meno concilianti.

Per quanto riguarda l’applicazione delle patch di sicurezza è bene procedere con soluzioni in grado di automatizzare la ricerca e l’installazione delle stesse, anziché procedere in modo manuale. Un solo server può eseguire diverse decine di applicazioni. Un’azienda si ritrova spesso a dover monitorare centinaia di applicazioni in attività sui propri sistemi.

Incaricare il personale IT per svolgere manualmente tali operazioni appare un’eventualità sempre meno sensata, in quanto ci sono applicazioni che sanno farlo automaticamente e in maniera estremamente puntuale. i tecnici dovrebbero limitarsi a pianificare i processi e supervisionare che tutto venga svolto in maniera corretta. L’automatizzazione consente di rendere più efficiente il patching sotto moltissimi aspetti, a cominciare dalla riduzione dei possibili errori umani.

Le nostre applicazioni cloud native sono sicure?

Le architetture a microservizi su cui si basano i software cloud native, che vengono resi disponibili come Software-as-a-Service (SaaS) possono celare varie insiede, se lo sviluppo non avviene secondo certi criteri. Non è un caso che alla generale metodologia DevOps si sia affiancata la DevSecOps, che integra soluzioni e approcci di design finalizzati a rendere nativamente sicura un’applicazione sviluppata in cloud.

Occorre inoltre stare molto attenti quando si utilizzano dei CMS (Content Management System) come WordPress, che integrano una serie di plugin funzionali che possono celare molte insidie in materia di sicurezza, soprattutto quando vengono rilasciati da terze parti. Un’elevata soglia di attenzione va dedicata in generale alla sicurezza dei siti e delle applicazioni web.

Cosa fare per la sicurezza delle applicazioni cloud?

Nel contesto sopra citato gli sviluppatori devono in primo luogo adottare dei criteri che implementino in maniera nativa i requisiti di sicurezza richiesti ad un’applicazione moderna. Chi cerca soluzioni come cliente deve invece stare attento agli aspetti relativi all’integrazione e alla personalizzazione, in quanto gli attaccanti sanno benissimo quali sono gli anelli deboli della catena ed è su quelli che soffermano le proprie attenzioni.

Una particolare attenzione va alle fasi zero-day, in corrispondenza del fresco rilascio di una nuova versione o di un aggiornamento di un applicativo. A tal proposito, è sempre bene testare le novità in ambienti che non coincidono direttamente con quelli di produzione, pur emulandone pienamente le caratteristiche, come nel caso delle istanze virtuali.

Per fare un esempio, nel caso del già citato WordPress, chi lo implementa dovrebbe seguire con grande costanza i rilasci degli aggiornamenti e informarsi in maniera scrupolosa in merito a tutti i possibili plugin che si prevede installare sulla piattaforma. Oltre ai possibili fenomeni di instabilità, i plugin costituiscono un rischio in fatto di sicurezza, per cui è opportuno moderare il loro contributo al minimo indispensabile, sia per semplicità di gestione che per contenere a monte una serie di variabili che possono entrare pericolosamente in gioco a favore degli attaccanti.

L’errore umano dilaga. Controlliamo in modo adeguato gli accessi e le autenticazioni ai servizi?

La grande diffusione del lavoro in remoto ha enfatizzato i rischi relativi al cosiddetto errore umano, in cui è sufficiente un grossolano errore da parte di un dipendente per mettere seriamente a rischio l’integrità dei sistemi e dei dati aziendali. Il furto di credenziali è una pratica molto diffusa, anche grazie a tecniche di phishing sempre più sofisticate nella loro azione truffaldina.

Tra le principali cause di incidenti di sicurezza informatica ritroviamo procedure di autenticazione poco robuste, criteri di autorizzazione poco adeguati in funzioni delle effettive responsabilità degli account e utilizzo promiscuo dei dispositivi utilizzati per accedere da remoto ai servizi aziendali.

Le aziende devono pertanto adottare un crescente livello di controllo su utenti e dispositivi, oltre a cercare di isolare molto bene le zone più critiche della rete, dove si presume che siano conservati i dati più sensibili, quelli che fanno maggiormente gola ai soggetti malintenzionati.

Cosa fare per garantire la sicurezza cloud?

Un’azienda dovrebbe innanzitutto capire chi accede ai suoi sistemi, chi ha effettivamente diritto a farlo e con quali autorizzazioni, quindi agire sulle piattaforme di directory abilitando soltanto gli utenti e dispositivi necessari.

A livello di autorizzazioni ogni account non dovrebbe godere di più privilegi rispetto a quelli strettamente necessari per svolgere il proprio lavoro. Esistono vari framework per determinare tali aspetti, tra cui il RBAC (Role Based Access Control) e l’ABAC (Attribute Based Access Control).

È inoltre opportuno implementare sistemi di autenticazione multifattoriali, peraltro già obbligatori in alcuni ambiti, come quelli legati alle transizioni finanziarie. Grazie a questo fatto, per assurdo, molti comuni cittadini hanno confidenza con prassi di autenticazione più sicure rispetto a diverse aziende, che continuano a non proteggere adeguatamente i propri sistemi nelle fasi di accesso. Un particolare di non poco conto, nell’epoca del lavoro “anytime, anywhere”.

Un sistema multifattoriale sufficientemente robusto si basa su “qualcosa che sai”, come username e password, “qualcosa che hai”, come un codice di conferma emesso da terzi, e “qualcosa che sei”, come un tratto biometrico (es. impronte digitali, iride, immagine del volto, ecc.).

Ovviamente un ruolo essenziale viene svolto da una corretta igiene informatica dei dipendenti, che vanno adeguatamente formati in merito. Anche il sistema di sicurezza più avanzato risulta infatti vano se chi gode di tutte le autorizzazioni del caso apre la porta al ladro.

Cancelliamo con regolarità i dati sensibili non più necessari?

Uno degli errori comuni in cui le aziende puntualmente ricadono in cloud è quello di non cancellare i dati dei loro utenti quando non si rendono più necessari. Ciò avviene ad esempio quando un’organizzazione cessa un contratto con un cloud service provider, ma non riesce a chiudere del tutto i suoi account o eliminare tutti i dati presenti.

È evidente che quando dati e applicazioni rimangono disponibili in cloud, si corre un rischio inutile e si espongono molto spesso informazioni sensibili relative ai propri clienti. I dati spesso rimangono online per agevolare una successiva riattivazione del servizio, oltre a tante altre buone e cattive ragioni che non giocano certamente a favore della protezione dei dati.

Ogni talvolta in cui si cessa un servizio, l’azienda dovrebbe fare tutto il possibile per assicurarsi che il cloud service provider rimuova dai propri sistemi tutti i dati presenti sui service, nei database, nei sistemi di storage e persino dall’orbita dei sistemi di monitoraggio e orchestrazione utilizzati.

Cosa fare?

In questo ambito, il luogo in cui trovare le risposte che cerchiamo è la normativa GDPR, che stabilisce i termini di responsabilità per la conservazione e il trattamento dei dati. Se siamo responsabili dei dati personali dei nostri clienti, lo siamo anche quando li dimentichiamo in maniera impropria sui sistemi di un CSP. La legge non ammette in alcun modo ignoranza.

In realtà, non occorre drammatizzare. Grazie un paio di semplici accorgimenti, è possibile abbattere considerevolmente il rischio di subire un data breach. Non bisogna innanzitutto sottovalutare il problema anche quando si ritiene che i rischi di violazione siano tutto sommato bassi o che i dati in questioni non siano poi così preziosi.

La sfortuna ci vede benissimo e non siamo mai del tutto in grado di controllare le conseguenze nefaste di una fuga di dati. Tante volte anche la semplice notizia che un’azienda sia rimasta vittima di un data breach può dare luogo a pericolosi crolli reputazionali. Tali aspetti si rivelano oltremodo critici quando si opera in ambiti di business particolarmente sensibili, come quello sanitario o legato alle infrastrutture critiche.

In primo luogo, quando si stipula un contratto con un cloud service provider è opportuno accertarsi delle condizioni relative alle operazioni che possono essere effettuate sui dati una volta che vengono caricati sui sistemi del CSP stesso. Le valutazioni in merito alla continuità di business consentono di offrire gran parte delle risposte che cerchiamo.

Entrando nello specifico delle condizioni relative alla cessazione di un servizio, esistono ad esempio delle clausole che prevedono la cancellazione automatica dei dati dopo un certo periodo. Il più delle volte, anche il semplice fatto di porsi il problema, offre già una soluzione sufficientemente efficace.

Anche se non è strettamente correlato a questo discorso, bisogna inoltre considerare un aspetto fondamentale. Un dato si rivela utile al cybercriminale soltanto se è accessibile. Se noi rigirassimo la frittata di una minaccia ransomware, restituendo a chi ci esfiltra i dati una serie di informazioni criptate, questi non saprebbe ovviamente cosa farsene e i dati dei nostri clienti rimarrebbero al sicuro anche nel caso in cui dovessero malauguratamente finire nelle mani sbagliate.

In termini pratici, dobbiamo sempre chiederci quali misure di sicurezza il CSP adotta sugli storage e sui backup che utilizziamo. Molto spesso i dati vengono protetti durante il loro impiego, quando transitano sulla rete, ma cosa succede quando rimangono “at rest”? La crittografia dei dati costituisce infatti una sicurezza in più anche nel caso in cui questi non dovessero essere cancellati una volta che il loro utilizzo non si rende più necessario.

A livello di condotta non dobbiamo mai dimenticare che le domande che ci stiamo ponendo per proteggere i nostri dati, se le pone anche l’attaccante che intende violarli. È pertanto decisivo saper di giocare d’anticipo e non cadere in errori grossolani che, con le tecnologie e le metodologie attualmente diffuse in fatto di cybersecurity, possono ormai essere facilmente evitati.