Le prove informatiche

Le fonti di prova informatiche in un processo civile o penale sono spesso trattate con poco rigore tecnico. Una corretta acquisizione forense di una pagina web, di una chat o di un documento informatico in genere può fare la differenza tra un successo e una rovinosa disfatta se ci affidiamo o se abbiamo di fronte un consulente tecnico preparato. Spesso infatti vengono utilizzate semplici rappresentazioni grafiche del dato, come email stampate o immagini catturate di programmi di messaggistica, che non hanno alcun valore legale in quanto mere riproduzioni senza alcuna garanzia di autenticità.


Una larghissima parte di controversie legali coinvolge ormai elementi di carattere informatico. Accanto ai c.d. “reati informatici” propriamente definiti (ex L.547/93 e L.48/08) esiste una moltitudine di reati non informatici ma commessi attraverso l’utilizzo di strumenti informatici o reati dei quali si rinvengono tracce o indizi nei sistemi informatici. Specie per quanto riguarda quest’ultima categoria di procedimenti è assai comune che il professionista avvocato chiamato a intervenire si trovi a fare i conti con fonti di prova completamente estranee alla propria sfera di competenza, rischiando di presentare elementi acquisiti in modo poco rigoroso. Tali elementi possono fare la differenza tra un successo e una rovinosa sconfitta se sottoposti alla perizia di un consulente tecnico preparato.

La Digital Forensics è la disciplina che si occupa delle fonti di prova costituite da dati informatici, e le linee guida per l’identificazione, la raccolta, il trasporto, l’analisi, la valutazione e la presentazione di evidenze digitali sono state formalizzate a livello internazionale dallo standard ISO 27037 che, pur non trovando (ancora) corrispondenza in specifici ordinamenti o norme giuridiche, è applicabile in qualsiasi ambito: civile, penale e stragiudiziale.

Per ciascuna delle fasi elencate valgono in linea generale i principi fondamentale della documentazione e dell’accountability, ossia gli obblighi di documentare attentamente ogni operazione svolta e di poter attribuire una determinata attività ad un preciso soggetto ad un certo istante di tempo.

Tutto questo mira ad ottenere un rigore nell’acquisizione delle evidenze digitali degno del c.d. metodo scientifico, rendendole certe e inattaccabili. A livello pratico ciò significa riuscire a superare in modo tecnicamente convincente le caratteristiche critiche di alta modificabilità, deteriorabilità e riproduzione senza perdita di informazione che sono tipiche del dato informatico, provando che la rappresentazione che stiamo fornendo corrisponda all’effettivo dato così come registrato in linguaggio macchina (una sequenza ordinata di bit, 0 e 1, che costituisce il dato vero e proprio) al momento del reato.

Una volta chiariti i concetti alla base della digital forensics dovrebbe apparire evidente come la stampa di una email, di una pagina web, di una serie di messaggi di chat o di un qualsivoglia documento informatico non sia affatto un elemento di prova sufficiente: manca infatti la garanzia che la rappresentazione sia fedele al dato vero e proprio. Qualsiasi immagine stampata può essere infatti facilmente contraffatta e persino un documento digitale copiato può essere modificato senza che ci sia prova immediata delle modifiche o dell’autore delle stesse, mancando dei segni distintivi di un testo olografo.

A livello pratico occorre rivolgere l’attenzione al dato originale producendone una copia informatica conforme, la c.d. copia forense”, che sia fedele non solo a livello grafico ma anche a livello tecnico e della quale vi sia garanzia di non alterazione e certezza temporale. Il metodo per garantire l’integrità di un dato è l’utilizzo delle c.d. tecniche di hashing, ossia una funzione (algoritmo) non invertibile che mappa una stringa di lunghezza arbitraria in una stringa di lunghezza diversa. Il confronto tra risultati di un hash verifica l’eventuale alterazione del dato: avendo a disposizione la fonte di prova originale, una successiva acquisizione garantirà lo stesso risultato della funziona di hash sul dato esaminato, accertando così che si tratti esattamente dello stesso dato, eventualmente riprodotto anche in maniera grafica per questioni di mera praticità e facilità di consultazione.

Delegando ad un soggetto terzo l’esecuzione della funzione di hash è possibile inoltre ottenere una testimonianza dell’integrità del dato in uno specifico momento, garantendone anche la certezza temporale (la c.d. marcatura temporale”)

Quando occorre esaminare fonti di prova più complesse quali ad esempio una pagina web è necessario altresì esaminare e registrare tutte le fonti di dati che concorrono alla costituzione della prova di nostro interesse e garantire per ciascuna di esse l’originalità e la certezza temporale.

Un sito web infatti ha diversi componenti: il codice sorgente delle pagine web è messo a disposizione dell’utente del sito da un server, il dispositivo dell’utente attraverso una connessione di rete lo legge e lo interpreta e, se il codice è funzionante, lo visualizza attraverso il browser, che fornisce all’utente finale l’esperienza d’uso, tipicamente oggetto di una controversia.

La soluzione più immediata potrebbe sembrare la copia forense da eseguire direttamente presso il provider, effettuando l’acquisizione direttamente dalla macchina che eroga il servizio; tuttavia si tratta di un procedimento non sempre attuabile in tempo utile dal punto di vista legale, oltre che oneroso per tempi e costi, ed è quindi consigliabile avere a disposizione anche metodi alternativi altrettanto efficaci.

Il codice sorgente è un documento informatico, possiamo quindi ottenerne una copia forense come precedentemente illustrato: attraverso una copia ordinaria effettuata da un dispositivo che lo stia consultando accompagnata da un hash marcato temporalmente che ne verifichi l’integrità strutturale e temporale.

E’ tuttavia necessario procedere contestualmente anche ad una registrazione del traffico di rete che garantisca che effettivamente al momento dell’acquisizione del documento informatico contenente il codice sorgente corrispondesse una comunicazione di rete generata dal server di origine al dispositivo che effettivamente conteneva il codice sorgente acquisito.

Non da ultimo, è consigliabile ottenere contestualmente anche una registrazione visiva dell’esperienza d’uso, che rappresenti effettivamente la somma dei dati acquisiti precedentemente in linguaggio macchina, adottando anche in questo caso opportuni criteri di hash e marcatura temporale che ne garantiscano l’autenticità e l’immodificabilità.

Solo la presentazione di ciascuno di questi tre elementi (codice sorgente, traffico di rete ed esperienza visiva) in maniera concorrente, scientifica e rigorosa garantisce che non vi possa essere alterazione nella presentazione di un determinato comportamento di una struttura web, liberando il campo da qualsiasi tipo di contestazione.

I principi e le metodologie esposte non sono riferibili soltanto ai casi di esempio presi in esame, tuttavia è bene ricordare che al crescere della complessità di un sistema informatico da analizzare aumenta anche il numero delle fonti di prova concorrenti da tenere in considerazione. Spesso nell’analisi di un sistema di messaggistica è necessario considerare la crittografia utilizzata nelle comunicazioni, che può facilmente ostacolare una corretta rappresentazione del contenuto, oltre alla concorrenza di più dispositivi in una determinata conversazione. Per questo motivo è fondamentale che l’avvocato si avvalga di collaboratori competenti in materia, che siano in grado caso per caso di esaminare quali siano tutte le fonti di prova da analizzare e di fornire risultanze tecnicamente inattaccabili.