Il cambio di paradigma del cloud computing elimina la dipendenza dai server locali, consente la fruizione delle applicazioni senza soluzione di continuità e offre un’elevata disponibilità di capacità di calcolo e memorizzazione. Inoltre, offre scalabilità, flessibilità ed economicità. Di conseguenza, la sicurezza del cloud riveste un ruolo qualificante.
Le statistiche sugli incidenti informatici che riguardano il cloud rilevano che le principali minacce riguardano l’abuso di credenziali, il cryptomining, i ransomware, il data exfiltration e gli attacchi DOS, mentre i punti deboli della sicurezza del cloud sono rappresentati da credenziali d’accesso deboli o con privilegi elevati, errori di configurazione, vulnerabilità del software di terze parti.
Le organizzazioni che affidano i loro servizi essenziali al cloud computing devono pretendere un modello che contempli il controllo degli accessi, l’adozione di tecniche di crittografia e il monitoraggio continuo del traffico di rete. Inoltre, devono verificare che sia presente una policy di accesso robusta, una gestione proattiva delle patch, gli audit di sicurezza, la valutazione delle vulnerabilità, un sistema di rilevamento delle intrusioni e gli strumenti SIEM. In sintesi, una strategia di sicurezza del cloud si fonda sulla fiducia, garantisce la protezione dei dati e il rispetto dei requisiti legali e degli standard settoriali.
I principali elementi per la sicurezza e protezione dei dati nel cloud sono riepilogati di seguito:
La conduzione di un’indagine digitale deve necessariamente tenere conto di queste proprietà per un duplice motivo: da un lato serve a individuare le criticità o le vulnerabilità di un sistema cloud, dall’altro agevola la ricerca delle evidenze, come vedremo nel seguito.
Il cloud computing ha visto il progressivo spostamento di servizi, applicazioni e dati su infrastrutture di elaborazione e storage ubicate presso soggetti terzi rispetto ai loro utenti, gestori o proprietari. Ovviamente, anche i sistemi cloud possono essere oggetto di attività illecite, o essere a loro volta utilizzati per compiere attività di tale genere, per cui è necessario saper effettuare l’analisi forense in questi ambienti, determinare le attività eseguite su di essi o mediante essi, le modalità con cui sono state compiute e il soggetto cui sono riconducibili, ovvero comprendere i diversi livelli di responsabilità nei contenziosi di natura contrattualistica.
La specificità dei sistemi cloud, come la distribuzione e la duplicazione di dati e delle componenti applicative, o anche l’elevato livello di virtualizzazione e segmentazione, richiede specifiche metodologie di analisi forense che rendono difficilmente applicabili, se non inadatte, le metodologie sviluppate per l’analisi dei sistemi on-premise. Queste ultime sono infatti basate sul presupposto che sia possibile accedere, senza restrizioni, ai sistemi e ai dati, ipotesi che non valgono nel cloud computing.
La cloud computing forensics si pone l’obiettivo di sviluppare metodologie e strumenti per l’analisi forense dei sistemi cloud: «Cloud Computing forensic science is the application of scientific principles, technological practices and derived and proven methods to process past cloud computing events through identification, collection, preservation, examination and reporting of digital data for the purpose of facilitating the reconstruction of these events».
La letteratura scientifica prevede una sequenza di attività distinte: l’identificazione (identification) delle potenziali fonti di prova digitale, la raccolta (collection) e/o l’acquisizione (acquisition) di tali fonti, la conservazione (preservation), l’analisi (analysis) e, infine, la presentazione (reporting) dei risultati ottenuti.
Ogniuna di queste fasi è ben definita dagli standard ISO/IEC 27037:2012 “Guidelines for identification, collection, acquisition, and preservation of digital evidence” e ISO/IEC 27042:2015 “Guidelines for the analysis and interpretation of digital evidence” (a cui si rimanda per un maggiore approfondimento), ma non indicano le specifiche procedure da adottare per l’attuazione delle varie fasi in un determinato contesto. Pertanto, devono essere definite, tenendo conto delle specificità dei sistemi basati sul cloud computing, affinché sia garantito il rispetto dei requisiti che caratterizzano sia la prova digitale (autenticità e integrità), sia il procedimento e gli strumenti di analisi forense (affidabilità, ripetibilità e giustificabilità dei risultati ottenuti).
Tipicamente un sistema cloud è formato da diversi sottosistemi: i client utilizzati per accedere ai servizi, le risorse virtualizzate che erogano tali servizi, le risorse fisiche utilizzate per la gestione di quelle virtualizzate e la rete che permette l’interconnessione. Mentre per la prima categoria e l’ultima categoria esistono processi consolidati (cd. Computer forensics e Network forensics), per le risorse virtualizzate e gli ambienti che le ospitano occorre sviluppare procedure specifiche. Inoltre, essendo ciascuno di tali sottosistemi diverso dagli altri, richiedono l’applicazione di procedure di analisi ulteriormente personalizzate che potremmo definire “sartoriali”.
Con il termine Identification si intende “the process involving the search for, recognition and documentation of potential digital evidence”, ovvero la ricerca, l’individuazione e la documentazione delle potenziali fonti di prova digitale. Nel contesto del cloud computing consente di individuare le risorse fisiche e virtualizzate, compresi i dati di utilizzo (p.e. i file di log, il controllo degli accessi e le attività degli utenti), potenziali fonti di prova digitale.
L’identificazione richiede:
L’identificazione non è di semplice attuazione perché occorre fare i conti con una serie di criticità:
Per superare alcune delle criticità esposte, è opportuno che il forenser proceda a:
Con la voce Collection si intende “the process of gathering items that contain potential digital evidence”, ovvero il sequestro di dispositivi che contengono delle potenziali prove digitali; mentre con il termine Acquisition si intende “the process of creating a copy of data within a defined set”, ovvero la creazione di una copia dei dati che costituiscono delle potenziali prove digitali.
Nel caso specifico, il sequestro è virtuale e potrebbe essere realizzato attraverso la disabilitazione delle utenze admin /user (oppure con il cambio password), l’inibizione dell’accesso agli utenti e il blocco delle VM, delle istanze e dei servizi (a meno che non siano servizi critici), mentre l’acquisizione consente di realizzare una copia delle risorse virtualizzate e dei dati correlati individuati durante la fase di identificazione.
Nei sistemi fisici la copia dei relativi supporti di memoria è realizzata connettendo il dispositivo ad un sistema di acquisizione mediante il quale è creata la copia. Gli ambienti cloud si caratterizzano per l’inaccessibilità fisica delle risorse, la volatilità delle risorse virtualizzate e l’uso di meccanismi di replicazione; pertanto, occorre utilizzare metodologie specifiche.
Per risolvere il problema dell’inaccessibilità è necessario acquisire i dati direttamente dall’infrastruttura del provider e, successivamente, essere trasferiti all’esterno del sistema cloud mediante un canale sicuro. Innanzitutto, occorre tenere presente che la realizzazione di questa modalità di acquisizione potrebbero presentarsi problemi di natura legale (transnazionalità), organizzative (interfacciarsi con il provider), tecnica (utilizzo di tecnologie costose e tempistiche ristrette) e forense (violazione di normative).
A riguardo possono essere utilizzate le seguenti tecniche:
Come è noto, i servizi di tipo IaaS e PaaS si basano su risorse virtuali e, per definizione, volatili, pertanto, potrebbero essere facilmente rimosse durante l’acquisizione. Una soluzione a questa criticità è l’utilizzo dello snapshotting già indicato. Ciò presuppone che le risorse di interesse siano individuate in anticipo rispetto alla necessità di acquisizione, prima che vengano rimosse.
Inoltre, occorre tenere conto della duplicazione dei dati. I sistemi cloud sfruttano i meccanismi di replicazione dei dati per offrire adeguati livelli di prestazioni e disponibilità di servizio. La presenza di più repliche dello stesso insieme di dati può causare dei problemi durante l’acquisizione, in quanto i meccanismi di sincronizzazione delle repliche richiedono una congrua quantità di tempo per propagare le modifiche a tutte le altre repliche presenti nel sistema. Pertanto, è necessario che la procedura di acquisizione si interfacci con il gestore delle repliche in modo da ottenere la versione più recente dei dati. Inoltre, è necessario impedire che una qualunque replica venga aggiornata durante l’acquisizione tramite dei meccanismi, se presenti, di lock globali.
Infine, occorre considerare l’aspetto della crittografia. In questi casi dobbiamo prevedere anche l’acquisizione dei client da cui si è avuto accesso al cloud, per acquisire le chiavi di decifratura, ovvero chiedere al cloud provider, nel caso ne fosse provvisto.
Spesso quest’attività è delegata agli specialisti del cloud presso il provider che non hanno quella formazione e sensibilità necessaria per raccogliere e conservare meticolosamente le evidenze in conformità agli standard forensi, preservandone l’integrità e l’autenticità per potenziali procedimenti legali; pertanto, è necessario formarli o affiancarli durante la fase di acquisizione.
Di seguito un elenco, non esaustivo, di tools utilizzabili per l’acquisizione dalle piattaforme cloud: Cado, Google Cloud Forensics Utils, CloudTrail (AWS), Azure Security Center, Azure Activity Log (Azure), Cloud Monitoring (GCP), Magnet AXIOM cloud, Cellebrite UFED cloud analyzer, Mandiant CloudLens, AccessData cloud extractor, Oxygen forensic cloud extractor, ecc.
Con la voce Preservation si intende “the process to maintain and safeguard the integrity and/or original condition of the potential digital evidence”, ovvero la preservazione dell’integrità delle potenziali prove digitali. Dunque, la conservazione di un’acquisizione forense deve garantire l’integrità dei dati, ovvero mantenere le stesse condizioni dell’acquisizione. Lo strumento più utilizzato nella digital forensics a tale scopo è il calcolo dei codici hash crittografici, ma per raggiungere lo stesso obiettivo nel contesto cloud occorre considerare alcune criticità:
Non esiste una soluzione unica a questi problemi, ma è possibile ridurli formando una dettagliata documentazione delle fasi di acquisizione e conservazione e, inoltre, utilizzando meccanismi di firma digitale con marca temporale per cristallizzare il momento dell’esecuzione.
La fase di Analysis consente “the identification and evaluation of items of evidence from a source of potential digital evidence”, ovvero l’individuazione e la valutazione di prove digitali, partendo da una sorgente di potenziali prove digitali. Con il termine Presentation si identifica il processo che “includes describing the actions performed (…) and other aspects of the forensic process”, ovvero che comprende la descrizione delle azioni effettuate, nonché altri aspetti del procedimento seguito nell’analisi forense. In altri termini, è la presentazione dei risultati.
L’analisi delle evidenze digitali deve essere in grado di individuare e valutare le potenziali prove. Un sistema cloud è caratterizzato dalla presenza di diversi sottosistemi che interagiscono tra loro. Questa integrazione può essere complessa perché le risorse di interesse sono distribuite su diversi dispositivi. Inoltre, un provider può avvalersi di servizi erogati da altri, creando una catena di dipendenze che determina la presenza di possibili potenziali prove su più sistemi cloud.
Risulta determinante effettuare l’integrazione delle diverse fonti di prova per realizzare la ricostruzione completa degli eventi. Alcune soluzioni per effettuare adeguatamente tale integrazione si basano sull’uso di aggregatori dei file di log distinti ed aventi formato eterogeneo.
Spesso è necessario redigere la cosiddetta linea temporale (timeline), ovvero la sequenza degli eventi ordinati cronologicamente in base all’istante della loro occorrenza (timestamp) per ricostruire la successione di eventi verificatisi in un sistema cloud. Poiché gli eventi possono essere generati da dispositivi distinti, è necessario inserire nella stessa linea temporale eventi provenienti da dispositivi diversi. Ciò può essere influito negativamente dalla possibile mancata sincronizzazione degli orologi di sistema oppure dalla difficoltà di associare l’evento a una determinata risorsa. Sarebbe opportuno utilizzare sistemi di logging sicuro.
Inoltre, si può ripresentare il problema della cifratura dei dati. In questa fase le ricadute sono ulteriormente onerose a causa dell’impossibilità di decodificare dati e, quindi, una ricostruzione incompleta degli eventi verificatisi sul sistema.
L’esposizione delle peculiarità del cloud computing, e delle criticità specifiche di questo ambiente di erogazione dei servizi ICT, ha evidenziato la necessità di scegliere e adottare una metodologia di analisi forense specifica per questi sistemi. Le procedure forensi devono adattarsi ai diversi modelli di erogazione e distribuzione dei servizi, garantendo l’integrità delle evidenze raccolte. La rapida evoluzione degli ambienti cloud richiede un’acquisizione e conservazione tempestiva, per evitare lacune nello svolgimento dell’iter. La solidità della credibilità delle prove si basa sulla loro conservazione sicura.
Dall’analisi emerge chiaramente che vi siano criticità importanti da dover affrontare durante un’indagine digitale. Tra questi, particolare rilievo assumono quelli dovuti alla volatilità delle risorse virtualizzate, quelli determinati dall’inaccessibilità delle risorse fisiche, quelli causati dall’uso di tecniche di cifratura dei dati e, infine, la giurisdizione dei provider. In alcuni casi è fondamentale ottenere il coinvolgimento e il supporto del provider, a meno che non sia una controparte del contenzioso, e sfruttare le tecnologie di detection e response presenti.
Spesso non si distingue l’ambito della Cloud Security da quello della Cloud Forensics. Sono due domini distinti: la cloud security si concentra sulle misure proattive per proteggere i dati e le risorse, tra cui la sicurezza della rete, la crittografia dei dati e il controllo degli accessi, mira a prevenire l’accesso non autorizzato, le violazioni dei dati e le potenziali minacce; la Cloud Forensics, d’altra parte, è un approccio reattivo che indaga e analizza incidenti, violazioni o attività non autorizzate, aiutando le organizzazioni a imparare dalle violazioni e a migliorare il proprio livello di sicurezza.
La sicurezza del cloud e la digital forensics condividono alcune tecniche, ma l’analisi forense aderisce rigorosamente alle linee guida legali per l’ammissibilità in tribunale. In una strategia di sicurezza completa è essenziale integrare l’analisi forense per affrontare efficacemente le minacce alla sicurezza come le violazioni dei dati, gli attacchi DDoS e la cattiva condotta degli insider. Pertanto, è indispensabile individuare delle modalità che incentivino i provider all’adozione di procedure che agevolino la produzione e l’acquisizione di evidenze, superando le resistenze che possono frenarne il coinvolgimento e, contemporaneamente, formare i professionisti della sicurezza cloud alla metodologia forense, per evitare che durante un incidente si perdano delle evidenze importanti.
Infine, va ricordato che la cloud forensics presenta problemi di natura giuridica dovuti all’allocazione di risorse virtuali e dati su risorse fisiche ubicate in diversi paesi che devono essere opportunamente approfonditi in altre sedi, al fine di stimolare la ricerca di soluzioni adeguate.
Questo articolo è stato estratto dal white paper “Cloud Computing Forensics: Peculiarità e Indicazioni Metodologiche” disponibile in maniera libera e gratuita al seguente link: https://www.ictsecuritymagazine.com/pubblicazioni/cloud-computing-forensics-peculiarita-e-indicazioni-metodologiche/
Articolo a cura di Vincenzo Calabrò
Un mese dopo essere stato arrestato a Parigi, Pavel Durov continua a far parlare di…
Nel panorama in rapida evoluzione della sicurezza informatica, l'Extended Detection and Response (XDR) emerge come…
La 22a edizione del Forum ICT Security, che si svolgerà a Roma il 23 e…
In questo articolo, ci dedichiamo alla descrizione delle nozioni fondamentali dietro a Self-Sovereign Identity, un…
I dati aziendali violati sono al centro dell'attenzione in questo momento. Il 2023 ha segnato…
L’architettura del sistema operativo Android, rappresentata in Figura 6[1], ha caratteristiche uniche. Costruita con la…