INFORMATICA - CLOUD FORENSICS - CHALLENGES

Con il "cloud" il vecchio concetto di processo relativo ai sistemi operativi sta evolvendo verso un'entità granulare e rarefatta in grado di erogare con facilità ed efficienza un'enormità di servizi spesso neanche espressamente pensati dal programmatore o dal CSP. Quale miglior ambiente per svolgere attività illecite?...

Agosto 2014

Questa pagina è stata ispirata da alcune domande sul cloud forensics che mi sono pervenute e dal documento del NIST Draft NISTIR 8006 NIST Cloud Computing - Forensic Science Challenges di giugno 2014. Si può anche far anche riferimento ad altre pagine di questo sito sul cloud come Cloud Computing & Digital Forensics e Cloud Computing Definition by NIST.

Premessa

In ambito scientifico e di ricerca le "challenge(s)" sono elementi vitali che danno chiara idea dell'espansione ed importanza del fenomeno studiato. Maggiore e' il numero di "sfide" che si riescono ad inquadrare più alta è la possibilità di sviluppo di teorie e metodi nell'ambito studiato. Non bisogna dimenticare che uno dei lavori di ricerca più ricorrenti nei campi pionieristici è proprio l'inquadramento delle tassonomie dei problemi e dei livelli di risoluzione degli stessi.

Elencare quelli che allo stato dell'arte sono i problemi maggiori nel cloud forensics ha sicuramente un senso in quanto la digital forensics sta dirigendosi inequivocabilmente verso il cloud sia come mezzi di indagine che come target di analisi per cui bisogna prepararsi ad un sostanziale rinnovamento di strumenti, metodi e teorie.

La definizione

Nell'ambito del cloud forensics si possono individuare (in accordo con il NIST) diverse tipologie di problemi che afferiscono a 3 punti sostanziali: (a) aspetti tecnici inerenti la struttura stessa dei cloud e la sua implementazione; (b) aspetti legali inerenti sia la gestione che l'uso dei servizi cloud (lato provider e lato utente); (c) aspetti organizzativi in quanto la cloud forensics impedisce l'indagine tecnica classica singolo consulente/specialista ed introduce una complessa e necessaria gerarchia di attori con diverse specializzazioni.

Quando si può parlare di cloud?

Partiamo dalla sfida base: dato che Internet è il mondo dei sistemi "ibridati" (dopotutto interessa di più il risultato sull'utente che come questo risultato venga ottenuto) è importante capire se si sta operando su un cloud o meno. Da un punto di vista meramente pratico un cloud esiste se esiste almeno un hypervisor (VMM) che possa operare (in genere) su grandi quantità di risorse (memoria ed elaborazione) più o meno distribuite su reti (in genere) ad alta velocità.

Una questione importante, in tal senso, è che la VMM è un software che spesso (non sempre ma il trend attuale è questo, anche per facilitare gli utenti) insiste su un sistema operativo di quelli noti per cui nulla vieta che una VMM possa essere impiantata essa stessa su una macchina virtuale. Questa "virtualizzazione della virtualizzazione" sembra una cosa artificiosa ma è sempre più comune per motivi di ordine economico. Ad esempio un CSP (Cloud Service Provider) di alto profilo è interessato a fornire servizi (altamente remunerativi) di sub-cloud, ossia vende la possibilità di costruire sub-cloud indipendenti sulla sua piattaforma ponendo come limiti (spesso e solo) l'impegno in termini di risorse. In questo modo è semplice vedere che esistono CSP dentro altri CSP e talvolta con un livello di ricorsione 3 o 4 (dopotutto il cloud nasce all'insegna della terziarizzazione ed il processo di terziarizzazione può essere innestato e reso granulare a piacere).

Quindi: a chi possiamo riferire il cloud che abbiamo in uso? alla VMM che direttamente gestisce le VM che generano i servizi che sfruttiamo quale singolo utente? oppure alle VMM di ordine superiore che magari gestiscono le VM che virtualizzano l'intero CSP cui siamo collegati assieme a migliaia di altri utenti? Sia in termini tecnici che legali questi interrogativi sono altamente problematici. Ad esempio qualora sia avvenuto un reato in relazione ad un servizio erogato dal sub-cloud X ed il magistrato vuole emettere un decreto di acquisizione LOG, tale richiesta va emessa nei confronti solo di X oppure anche nei confronti del "contenitore" di X (il cloud che genera X)? Al momento la risposta essendo complessa si affida al singolo caso (dimostrando delle necessità tecniche specifiche) ma nella maggioranza delle situazioni il cloud di ordine superiore invoca la sua impossibilità di gestire le attività di X sebbene il reato avvenga attraverso i suoi sistemi.

Domicilio Informatico...

Al momento, con la previsione dell'art.615-ter c.p., introdotto dalla L. 23 dicembre 1993 n.547, si è assicurata, in Italia, la realizzazione legale e conseguente protezione del domicilio informatico. Il problema con i cloud è che il 615-ter si riferisce all'Accesso abusivo a un sistema informatico o telematico che, per natura stessa del modo di realizzazione dei servizi cloud, potrebbe non esistere fisicamente. E' opinione dello scrivente che si debba velocemente transitare, a livello legale, dal concetto di domicilio su sistema telematico a quello di domicilio su servizio telematico che, si badi bene, è cosa molto differente.

Un esempio chiarificherà meglio l'affermazione fatta. Ammesso che un servizio S sia fornito per mezzo della virtualizzazione di due risorse fisiche R1 ed R2 (ad esempio, per semplificare ulteriormente, 2 server) la violazione singola dei domicili informatici di R1 ed R2 non implica necessariamente quella del servizio S ed anche viceversa una violazione di S non vuole necessariamente dire che R1 ed R2 siano stati violati. Questo in quanto le misure di protezione di R1, R2 ed S non solo sono separate ma neanche concorrono le une sulle altre. R1 ed R2 possono essere soggette al domicilio informatico del CSP con le sue misure di protezione, mentre S è costruito dalla concorrenza di R1 ed R2 con una misura di protezione dettata dall'utente di S (es. strong cripto) di cui il CSP non necessariamente è avveduto.

In definitiva il concetto di sistema telematico sta divenendo obsoleto in favore di quello di servizio telematico di alto livello che perde rispetto al primo sia in termini di fisicità che di tutela legale.

ALTRO ESEMPIO: ammesso di realizzare su cloud una sub-net virtualizzata multi-utente accessibile da Internet a pochi utenti con password. Se un utente non dotato di password riesce ad entrare in tale rete virtuale, ma non nei singoli nodi, si configura una violazione del domicilio informatico nel senso del codice penale italiano? Si tratta di un invito alla riflessione.

Repertamento su cloud

Ammesso che si possa individuare il servizio su cloud che ha concorso in qualche modo alla realizzazione del reato, ci si deve sicuramente porre qualche domanda su come si possa effettuare il repertamento nei suoi confronti. Un servizio di alto livello è formato in maniera dinamica da: dati, elaborazioni e comunicazioni. Bisogna poi aggiungere che un servizio è comunque gestito e realizzato da almeno un software. Il repertamento dei dati si concretizza generalmente nella copia degli stessi ma bisogna ricordare che i dati su un cloud sono fortemente tempo-dipendenti per cui spesso si hanno copie multiple dello stesso dato in tempi diversi (gestione delle versioni) ed il data recovery spesso coincide con l'acquisizione di versioni non più attuali del dato. La copia del dato è quindi la copia ad un certo istante (magari quello del reato) oppure l'insieme di tutte le copie disponibili del dato in certo periodo?

Il vecchio concetto di repertamento dei dati su memorie in post-mortem (parte del disk-forensics) va quindi contestualizzato ad un nuovo concetto di "imaging" in cui il target (ad esempio un cloud drive come un'utenza di dropbox) viene considerato in un lasso di tempo e non in un'istante fisso (si tratta di una generalizzazione del concetto di "image" che i software forensi di acquisizione presto implementeranno nelle loro funzionalità base). Questo stesso problema, in scala minore, era stato già individuato nella RAM-forensics in cui, per la prima volta, si notò che l'oggetto della copia (la RAM) cambiava durante la copia forense per cui l'immagine della RAM non ha la stessa solidità come concetto dell'immagine di un HD acquisito in post-mortem. I dati del cloud non solo cambiano durante la copia ma si accumulano in versioni successive per cui l'immagine dei dati è uno storico per definizione.

Tornando a "dati, elaborazioni e comunicazioni" la successiva questione è nel repertamento delle "elaborazioni". Questo concetto non è stato affrontato se non negli elementari termini di LOGGING (traccia dell'elaborazione...) e repertamento delle istanze di VM. Dato che su cloud tutto è frutto di una virtualizzazione l'acquisire i dati di una macchina virtuale che genera un servizio e quindi copiarne l'istanza dopo averla congelata, può significare effettuare un'istantanea dei processi e quindi delle elaborazioni in corso. Ovviamente il risultato non è esaustivo e solo la VMM potrebbe mettere totalmente sotto controllo le elaborazioni attive in un dato istante ma per quanto a conoscenza dello scrivente non esistono ad oggi sistemi forensi atti a tale scopo.

Infine è bene considerare le "comunicazioni", per le quali il repertamento coincide con un'attività ben nota a livello legale denominata intercettazione digitale (telematica). L'unica differenza è che le comunicazioni in un cloud possono avvenire anche solo virtualmente per cui quello che potrebbe sembrare uno sniffing in una LAN virtualizzata potrebbe essere solo la cattura di dati su determinate locazioni di memoria di un server e non necessariamente l'attività di cattura dei pacchetti su un canale fisico di trasmissione. Questa dualità: acquisizione - intercettazione, crea non pochi problemi a livello legale ad oggi irrisolti.

Ultima tappa di questa "sfida" è poi ovviamente il repertamento del software di gestione del servizio che tipicamente si realizza operando un'analisi live della macchina virtuale distribuita su cui è installato. Raramente viene condotto (anche per criticità degli strumenti di live analysis su VM) e generalmente si esegue quando si può ricondurre il reato direttamente a dei fatti intrinseci al servizio stesso (ad esempio se il servizio è stato alterato da un malware e/o se è stato oggetto di attacchi informatici).

Physical location versus Virtual location

Ad oggi, l'associazione [reato - luogo fisico] è determinante ai fini di stabilire legalmente le responsabilità e le possibilità di indagine. Con modi differenti questa associazione è riproposta nella maggioranza delle legislazioni dei paesi occidentali. Dato però che le VM prodotte in un ambiente cloud possono afferire dinamicamente a risorse fisiche internazionalmente distribuite e non stabilite a priori è immediato capire che l'associazione proposta costituisce uno dei principali problemi per la risoluzione dei casi di PG nel settore.

L'evoluzione da considerare sfida di ampie proporzioni, è il passaggio da "luogo fisico" a "luogo virtuale". Sebbene vero che la stessa VM possa "muoversi" nel mondo a seconda della disponibilità degli strumenti del CSP che la realizza, è chiaro che l'hypervisor (VMM) la deve poter identificare univocamente. Per cui sebbene neanche il CSP sappia bene com'è fatta fisicamente, egli la identifica univocamente, ne identifica un responsabile e gli associa dei pagamenti, dei privilegi, ecc. Il luogo virtuale cui associare il reato, quindi, è proprio l'identificativo della (o delle) VM che ne realizza il servizio indagato.

Come si possa uniformare a livello internazionale questa identificazione non è ancora chiaro (è una sfida...) e nemmeno è chiaro come associare le legislazioni a queste aree virtuali ma è una cosa necessaria anche tecnicamente in vista della prossima evoluzione di Internet verso Intercloud. Si tratta della stessa evoluzione, avutasi su scala di molto inferiore, da LAN/WAN ad Internet, quando fu necessario trovare un identificativo di nodo ulteriore ai MAC Address che potesse permettere la convivenza di macchine diverse sulla stessa rete delle reti.

La legislazione italiana ha già fatto in passato uno step verso l'applicazione del concetto di "virtual location", si tratta ora di ampliare tecnicamente e legalmente tale approccio. Lo step in questione è sui nomi dei siti web nel dominio di primo livello ".it" per i quali, all'atto della registrazione, deve essere identificato un responsabile civile e penale. Ma, dato che le informazioni che pubblica il sito possono essere anche all'estero e la loro locazione fisica può cambiare nel tempo, di fatto si è stabilito un luogo virtuale in cui è applicabile la legge civile e penale italiana: tale luogo è ".it" e non si trova in nessun posto...

Anti-Forensics As A Service

Sebbene un cloud, come sistema, sia intrinsecamente complesso da analizzare dal punto di vista forense non è esattamente un metodo o strumento Anti-Forense. Il motivo essenziale di questa strana contraddizione è che nessun cloud assicura nativamente la cancellazione reale dei dati e/o delle tracce in esso presenti. Questo è dovuto al fatto che consumerebbe grandi quantità di risorse. L'uso estremale di pointer e link è caratteristica essenziale in un cloud per mantenerne la performance da cui qualsiasi cancellazione riguarda più spesso questi che la vera rimozione del dato. Si pensi che uno dei servizi di Anti-Forensics più diffuso in ambito cloud è la cancellazione sicura dei dati, in cui complessi algoritmi distribuiti "inseguono" le modifiche della struttura del cloud tenendo traccia di come e dove i dati "sotto controllo" vengono memorizzati. Si generano quindi grandi quantità di metadati annessi ad ogni dato controllato per poi poter effettivamente assicurare la cancellazione definitiva su richiesta dell'utente.

Data l'enorme quantità ed articolazione dei dati (e dei loro collegamenti) in ambito cloud assicurare un servizio di Anti-Forensics completo è ad oggi praticamente irrealizzabile. Per questo motivo servizi che cancellino totalmente le tracce di un'attività di un utente (e non solo i suoi dati) su cloud sono in genere costosi e non affidabili al 100%. Si tratta comunque di un business importante che vedrà svilupparsi molta ricerca attorno nei prossimi anni (si pensi ai servizi che assicurano la rimozione dei dati personali di un utente su Internet).

Catena di custodia

L'alta dinamicità della struttura di un cloud non permette la definizione di una catena di custodia verificabile unicamente tramite dati informatici o matematici (si pensi al classico valore di hash). Ad oggi l'unica possibilità rimane quella di video-riprendere e verbalizzare le attività umane che hanno luogo nel mentre la fonte di prova viene isolata, copiata, trasferita o calcolata mediante il cloud. Questa è una limitazione legale notevole in quanto diminuisce le garanzie per la parte indagata, e tecnica in quanto mina la ripetibilità e riproducibilità degli accertamenti scientifici. La creazione di un metodo di tracciamento delle indagini di polizia giudiziaria su cloud costituirà uno sviluppo molto importante del cloud forensics.

Nuovo paradigma investigativo?

I metodi e le indicazioni per la digital forensics (rif. ISO/IEC 27037:2012) sono tutti applicabili al cloud forensics? La grande incidenza di elementi inerenti: la live forensics, la dinamicità dell'ambiente, l'intercettazione diretta o indiretta delle comunicazioni, l'ambiente di rete e quello virtualizzato, rendono la cloud forensics una materia non perfettamente inquadrabile e definita. Anche il parlare di forensics su cloud potrebbe risultare non perfettamente corretto. Siamo quindi in presenza di una materia di indagine tecnica nella quale il paradigma investigativo classico mostra molte pecche e deve essere rivisto su base tecnica, legale ed organizzativa.

Alla anche semplice domanda: chi può (o deve) svolgere indagini su cloud? la risposta scontata, dal punto di vista tecnico, sembra "uno specialista informatico" ma questo non è totalmente vero. Se dei servizi di forensics o di indagine sono integrati in un cloud (da esso erogati) è possibile che l'investigatore classico non specializzato ottenga maggiori risultati del tecnico scientifico forense e questo è testimoniato dalla grande quantità di indagini di polizia giudiziaria ad oggi sviluppate proficuamente da personale non altamente tecnico su uno dei più grandi social & cloud del mondo: Facebook. In tale ambito, infatti l'impiego "sociale" del mezzo (conoscenza delle reazioni degli utenti agli stimoli) è forse più importante della conoscenza di come il mezzo funzioni.

Conclusioni

Il mondo del cloud continua la sua ascesa tecnologica e soprattutto espande continuamente le sue possibilità integrandosi alla perfezione con le necessità attuali di risparmio economico e delocalizzazione delle risorse. La ricerca nell'ambito del cloud forensics vede una miriade di nuovi target che lascia scorgere per la materia un luminoso futuro. Molte delle caratteristiche del cloud forensics con le sue necessità di nuove teorie, metodi e strumenti ricordano la computer forensics nei suoi primi decenni di attività. Dall'altra parte bisogna tenere presente, però, che il cloud forensics chiede anche un nuovo paradigma investigativo e questo lo differenzia sostanzialmente dalle altre macro-aree della digital forensics e spesso lo porta anche fuori da tale materia.