Master Executive di II livello in Cyber Security – Anno Accademico 2015-2016, estratto dalla mia tesi.
“There are two types of companies: those who have been hacked, and those who don’t yet know they have been hacked”
- John Chambers, Executive Chairman Cisco Systems. World Economic Forum 2015
“… possiamo affermare che il 2016 è stato complessivamente l’anno peggiore di sempre in termini di evoluzione delle minacce “cyber” e dei relativi impatti, non solo dal punto di vista quantitativo ma anche e soprattutto da quello qualitativo.”
- Rapporto Clusit 2017
Questa era la mia prefazione alla tesi redatta nel 2016, ma considerando quanto scritto nel “Rapporto Clusit 2023”:
“Osservando la situazione dal punto di vista quantitativo, negli ultimi 5 anni la situazione è peggiorata nettamente, seguendo un trend pressoché costante. Confrontando i numeri del 2018 con quelli del 2022 la crescita del numero di attacchi rilevati è stata del 60% … Oltre alla maggiore frequenza, anche la nostra valutazione della Severity media (indice di gravità) di questi attacchi è drasticamente peggiorata, il che rappresenta un significativo moltiplicatore dei danni.”
Anello debole: l’uomo. La forza di una catena, si dice, si misura da quella del suo anello più debole.
Cap.1 La Minaccia Cyber nelle Aziende
La vulnerabilità dei sistemi informatici è oggi riconosciuta a livello globale. Cittadini, aziende e governi subiscono attacchi sempre più frequenti e difficili da contrastare. L’ultimo “Rapporto Clusit” sulla sicurezza ICT evidenzia che la capacità complessiva di attivare protezioni efficaci è ancora debole.
La minaccia cyber
Con minaccia cibernetica intendiamo l’insieme delle condotte controindicate che possono essere realizzate nel e tramite lo spazio cibernetico ovvero in danno di quest’ultimo e dei suoi elementi costitutivi. La minaccia si sostanzia nei c.d. attacchi cibernetici: azioni più o meno automatizzate sulle reti da parte di singoli individui o organizzazioni, statuali e non, finalizzate a distruggere, danneggiare o ostacolare il regolare funzionamento dei sistemi, delle reti o dei sistemi attuatori di processo da essi controllati ovvero a compromettere l’autenticità, l’integrità, la disponibilità e la riservatezza dei dati ivi custoditi o che vi transitano[1].
Una caratteristica saliente della minaccia cibernetica è la sua asimmetricità. L’attaccante infatti:
- può colpire a grandissima distanza, da dovunque nel mondo esista un accesso alla rete;
- potenzialmente può attaccare sistemi particolarmente sofisticati e protetti sfruttandone anche una sola vulnerabilità;
- può agire con tempi tali da non consentire un’efficace reazione difensiva;
- può rimanere anonimo o comunque non facilmente individuabile rendendo in tal modo estremamente complessa e difficile una corretta risposta da parte dell’attaccato.
In cosa consiste la Cyber Security?
Sui giornali, ai convegni, nelle presentazioni commerciali si evidenzia una notevole confusione in merito al significato dell’espressione “Cyber Security”.
Ma possiamo dire che “La cyber security è quella pratica che consente a una entità̀ (ad esempio, organizzazione, cittadino, nazione ecc.) la protezione dei propri asset fisici e la confidenzialità̀, integrità̀ e disponibilità̀ delle proprie informazioni dalle minacce che arrivano dal cyber space”.[2]
Dove, “the Cyberspace” è definito come “il complesso ambiente derivante dall’interazione tra persone, software e servizi su Internet tramite dispositivi tecnologici e reti connesse, che non esiste in nessuna forma fisica”[3]
In sintesi, proteggere gli assetti della propria organizzazione significa garantire i seguenti tre obiettivi:
- riservatezza,le informazioni devono essere accessibili direttamente o indirettamente solo alle persone (o ai sistemi) che ne hanno diritto e che sono espressamente autorizzate a conoscerle;
- integrità, i dati e le rispettive informazioni devono essere protette da alterazioni, quali modifiche, danneggiamenti o cancellazioni improprie, anche accidentali;
- disponibilità, i dati e le rispettive informazioni devono essere sempre accessibili agli utilizzatori che ne hanno diritto nei tempi e nei modi previsti.
Il dato è la rappresentazione oggettiva di un fatto o evento che consenta la sua trasmissione oppure interpretazione da parte di un soggetto umano o di uno strumento informatico.
L’informazione è l’interpretazione e il significato assegnato a uno o più dati.
Cap.2 I Possibili “Nemici”
Già nel Rapporto CLUSIT 2015, alla luce dei trend individuati si leggeva: “dunque la vera questione per i difensori (con riferimento ai dati, alle infrastrutture informatiche ed a tutti quei servizi, molti dei quali critici, oggi realizzati tramite l’ICT) non è più “se”, ma “quando” si subirà un attacco informatico (dalle conseguenze più o meno dannose), e quali saranno gli impatti conseguenti”.
Questa tendenza si è ulteriormente consolidata e nel 2016, il principale problema non è tanto che si verrà attaccati (tutti lo sono ormai costantemente, per lo più tramite sistemi automatizzati, nella sfera personale e professionale, per i motivi più disparati), ma quali saranno gli impatti degli attacchi andati a buon fine sulla sicurezza di organizzazioni, utenti, clienti e partner, e come impedire al maggior numero possibile di incidenti di verificarsi.
Tipi di minaccia
A seconda degli attori e delle finalità si usa distinguere la minaccia cibernetica in quattro macro-categorie. Si parla in tal caso di:
- criminalità cibernetica (cyber-crime): complesso delle attività con finalità criminali (quali, per esempio, la truffa o frode telematica, il furto d’identità, la sottrazione indebita di informazioni o di creazioni e proprietà intellettuali);
- spionaggio cibernetico (cyber-espionage): acquisizione indebita di dati/informazioni sensibili, proprietarie o classificate;
- terrorismo cibernetico (cyber-terrorism): insieme delle azioni ideologicamente motivate, volte a condizionare uno stato o un’organizzazione internazionale;
- guerra cibernetica (cyber-warfare): insieme delle attività e delle operazioni militari pianificate e condotte allo scopo di conseguire effetti nel predetto ambiente.
Europol, nel suo rapporto IOCTA[4] sugli otto trend del cyber crime nel 2016, li ha classificati in:
- crime-as-a-service: il crimine diventa una commodity che si compra al “supermercato” (nero) criminale. Il crimine informatico e la criminalità ordinaria sono sempre più vicini grazie al modello noto come “cybercrime-as-a-service” in cui esperti hacker offrono prodotti e servizi a gruppi criminali che intendono differenziare le proprie attività;
- i ransomware, la nuova edizione dell’estorsione;
- l’uso criminale dei dati nelle forme di truffe od estorsioni più sofisticate;
- le frodi nei pagamenti;
- la pedopornografia online e gli abusi;
- l’abuso di darknet per attività illecite;
- il social engineering, ora rivolto anche ai vertici aziendali per frodi articolate;
- l’uso distorto delle valute virtuali, divenute lo strumento di pagamento degli illeciti.
Gli autori
- pirati informatici, quelli che spesso, comunemente, vengono chiamati hacker, È sbagliato pensare che i cybercriminali puntino solamente ad eseguire attacchi in grande stile. A fianco di bersagli quali istituti governativi e bancari, sono sempre più oggetto di attacchi informatici anche PMI, liberi professionisti, sino al singolo utente domestico;
- spie, sabotatori, vandali. Attualmente, diversi Governi si sono dotati delle necessarie capacità per penetrare le reti nazionali degli altri Stati (in uso sia alle autorità pubbliche che ai privati) a fini di spionaggio o per mappare i sistemi potenzialmente oggetto di un futuro attacco. Il vandalo adotta un insieme di azioni al fine di danneggiare o distruggere beni altrui materiali e non, per puro divertimento o incuria. Il sabotatore ha per obiettivo creare danni ad un sistema, dal rallentamento sino al denial of service, per i motivi più vari. È evidente che una netta distinzione tra i due attori non è possibili in quanto agiscono spesso con le medesime modalità e per gli stessi scopi;
- oltre ai criminali comuni, che si rifanno al modello noto come “cybercrime-as-a-service” di cui si è parlato prima, vi sono organizzazioni criminali che hanno preso coscienza delle potenzialità dei malware andando a creare strutture commerciali efficientemente organizzate, capaci di generare sensibili profitti dalla vendita dei servizi che le botnet[5] sono in grado di offrire;
- terroristi, è possibile ipotizzare che nel prossimo futuro gruppi terroristici o singoli individui possano impiegare strumenti cibernetici offensivi ed utilizzarli contro obiettivi militari e civili. Si può far rientrare in questa categoria, quella degli attivisti, dal 2013 sempre più spesso si assiste ad una commistione tra finalità cyber criminali e forme di hacktivism. I due ambiti, originariamente distinti per background, finalità e modalità di azione, sempre più spesso trovano conveniente allearsi per raggiungere i propri obiettivi: tipologie di attacco motivate ideologicamente, con intento sostanzialmente dimostrativo, che mirano principalmente a creare un danno d’immagine e/o alla funzionalità temporanea di sistemi e reti;
- personale interno, ovvero l’ “insider”, cioè il soggetto che all’interno di una organizzazione – pubblica o privata poco importa – può generare situazioni compromettenti la sicurezza o addirittura la sopravvivenza della realtà di appartenenza. L’attenzione è incentrata sia sui soggetti che ora lavorano nell’organizzazione, sia su quelli che hanno interrotto ogni rapporto. Va tenuto nella dovuta considerazione il fatto che l’attenzione agli attacchi informatici deve necessariamente essere rivolta non solo verso l’esterno, ma anche verso l’interno dell’azienda. Un dipendente particolarmente motivato potrebbe creare un danno molto maggiore rispetto a quello di un cyber attaccante, vista la sua conoscenza dell’infrastruttura e degli asset aziendali. A mio parere rappresenta una fra le minacce più gravi: partono in vantaggio rispetto ad un attaccante esterno per la conoscenza delle dinamiche interne, delle infrastrutture, ecc.., hanno già le credenziali di accesso e spesso non vengono revocate in tempo. Esempio italiano Hacking Team;
- fornitori di servizi, outsourcers, nel 2013 si è assistito all’emergere di una chiara tendenza, per cui gli attaccanti hanno individuato negli outsourcer l’anello più debole da colpire per raggiungere (tipicamente sfruttandone le utenze privilegiate e le connessioni VPN) i loro bersagli primari. Questo fenomeno, data la propensione degli attaccanti a minimizzare gli sforzi, è destinato a crescere in modo esponenziale, dal momento che spesso questi fornitori sono aziende medio-piccole, con una cultura della sicurezza sensibilmente inferiore a quella dei loro grandi clienti, pur avendo di frequente accessi poco o per nulla presidiati alle loro reti ed infrastrutture;
- dal crimine informatico allo state-sponsored hacking. Lo scenario attuale vede un crescente numero di attacchi informatici caratterizzati da livelli di complessità elevati, determinati dalla proliferazione di hacker al soldo di governi oppure di malware sviluppati dai governi stessi. Se il crimine informatico preoccupa gli esperti di sicurezza, il nation-state hacking non è da meno. La quasi totalità dei governi è intenta nell’ampliamento del proprio arsenale cibernetico.
Cap.3 Il Rischio Cyber per le Imprese
Vulnerabilità e potenziali attacchi
In questo capitolo vengono elencate le principali tipologie di attacchi e di vulnerabilità che possono essere riscontrate nella pratica, per lo sviluppo sicuro delle applicazioni, nell’ottica di identificare un modello adeguato da utilizzare nella identificazione delle contromisure da adottare per il profilo di sicurezza di una applicazione.
Per realizzare un profilo di sicurezza efficace, sarà infatti necessario conoscere innanzitutto quali sono i potenziali attacchi che più verosimilmente potranno essere riscontrati nell’ambito di una applicazione.
L’identificazione di queste possibili situazioni critiche potrà essere quindi utilizzata secondo un approccio probabilistico nella successiva fase di analisi dei rischi, per la individuazione delle contromisure che più convenientemente sia il caso di adottare.
Un potenziale attacco può essere definito come l’attuazione di una delle possibili minacce per un sistema, mentre la vulnerabilità è una debolezza all’interno del sistema stesso e che rende possibile il verificarsi di quel potenziale attacco.
La vulnerabilità può essere causata da un disegno di analisi non adeguato, da errori di configurazione o da tecniche di programmazione non sicure o inappropriate. Una insufficiente validazione dell’input è un esempio di vulnerabilità a livello di sicurezza delle applicazioni e che potrebbe causare il verificarsi di attacchi tramite input maliziosi.
La distribuzione dei potenziali attacchi suddivisi per categoria di vulnerabilità, come riportato di seguito, fornisce una rappresentazione delle aree dove più frequentemente si verificano problemi in termini di sicurezza delle applicazioni e può costituire uno strumento di supporto da seguire nelle fasi di sviluppo e di analisi.
Categoria di Vulnerabilità | Potenziale attacco |
---|---|
Validazione dell’input | Buffer overflow; Script XSS; SQL injection; Altre forme di iniezione di codice (O.S., LDAP) Canonicizzazione. |
Autenticazione | Network eavesdropping; Brute force attacks; Dictionary attacks; Cookie replay; Furto di credenziali. |
Autorizzazione | Elevazione di privilegi, Violazione di dati riservati, Accesso a funzionalità non autorizzate Data tampering; Luring attacks. |
Gestione della Configurazione | Accessi non autorizzati ad interfacce di amministrazione; Accessi non autorizzati a file di configurazione; Reperimento in chiaro di dati riguardanti la configurazione; Assegnazione di account non individuali; Processi e account del servizio con privilegi troppo elevati. |
Categoria di Vulnerabilità | Potenziale attacco |
Dati Sensibili | Accesso a dati sensibili in memoria o file system; Network eavesdropping; Data tampering. |
Gestione delle Sessioni | Session hijacking; Session replay; Man in the middle. |
Crittografia | Gestione o generazione non appropriata delle chiavi; Crittografia debole. |
Manipolazione di Parametri | Manipolazione di query string; Manipolazione di campi relativi a maschere di input, inclusi campi hidden; Manipolazione di Cookie; Manipolazione di header HTTP |
Gestione delle eccezioni/errori | Information disclosure; Denial of service. |
Audit e Log | Negazione di aver effettuato una operazione; Violazione di una applicazione senza lasciare tracce; Cancellazione delle proprie tracce. |
Per effettuare in maniera sistematica una identificazione delle possibili minacce per una applicazione, un approccio valido consiste nella verifica delle vulnerabilità che sono ad essa applicabili.
Una volta individuate le vulnerabilità a cui l’applicazione potrebbe essere soggetta, si potranno identificare le possibili minacce, o attacchi potenziali ad essa collegate e le corrispondenti contromisure da adottare.
Validazione dell’Input
In questa categoria ricadono le tecniche di filtraggio di una applicazione che debba accettare dei dati di input, e che portano alla accettazione o al rifiuto degli stessi, dopo averne verificato la validità. Si ha una vulnerabilità di questo tipo ad esempio quando:
- un programma non gestisce correttamente un errore di sintassi nell’input;
- un modulo accetta parametri di input esterni e arbitrari senza validarli;
- un modulo non gestisce correttamente dei campi di input non valorizzati;
- un campo non è stato definito correttamente per tipo, numero di caratteri, ecc.
Per gli attacchi che ricadono in questa categoria, dovrebbe essere generalmente applicata una strategia di difesa in profondità, sinteticamente definita in tre passi:
- il primo consiste nello stabilire delle limitazioni per accettare in input soltanto dati validi, definendo dei filtri riguardanti tipo, formato, lunghezza e range;
- il secondo, rifiutare i dati non validi, è meno robusto del primo dato che non sarà sempre possibile prevedere le eventuali varianti di un input illegittimo;
- per il terzo, l’obiettivo consiste nel rendere innocui altri dati potenzialmente dannosi, una tecnica potrà essere ad esempio la eliminazione degli spazi presenti alla fine della stringa di input.
Buffer overflow (Applicabilità: Applicazioni Web Oriented e Client Server). Un Buffer overflow è una situazione di errore che si può verificare durante l’esecuzione di un programma, quando la lunghezza effettiva dell’input supera il suo valore massimo previsto. Un programma avente una vulnerabilità di questo tipo potrebbe essere sfruttato illecitamente, introducendo input di tipo malizioso con lunghezza superiore alle capacità del buffer. Ciò avviene solitamente nell’ambito di una chiamata ad una funzione: in occasione di una CALL, la CPU si preoccupa infatti di salvare in memoria l’indirizzo di ritorno (EIP), per poter riprendere dopo il return l’istruzione immediatamente successiva alla CALL stessa. Se il corrispondente buffer dichiarato in memoria, tipicamente nello stack, viene sovrascritto da una quantità di dati tale da causarne lo “straripamento” in zone di memoria adiacenti, ciò provocherà anche la sovrascrittura dell’indirizzo di ritorno del chiamante, necessario per puntare all’istruzione successiva. In questo contesto, come descritto nell’esempio, sarà possibile sostituire l’indirizzo di ritorno della funzione con un altro indirizzo scelto dall’attaccante, modificando il flusso di esecuzione del programma allo scopo di eseguire codice arbitrario.
XSS – Cross-Site Scripting (Applicabilità: Applicazioni Web Oriented). Un attacco di tipo script XSS, o Cross-Site scripting, consiste nel provocare l’esecuzione di codice arbitrario di tipo HTML e script da esso eseguibili (quali Javascript) attraverso il browser, utilizzando l’applicazione come veicolo per l’attacco. Vulnerabilità XSS si verificano quando un’applicazione presenta all’utente (nel browser) delle informazioni ricevute precedentemente in input qualora queste non siano state opportunamente validate. Se l’input contiene caratteri che, quando sottoposti al browser, rappresentano codice (HTML, Javascript), si ottiene un attacco in cui si provoca l’esecuzione di codice arbitrario, che avverrà nel contesto di sicurezza del browser.
SQL Injection (Applicabilità: Applicazioni Web oriented, Client server). Un attacco di questo tipo consiste nello sfruttare vulnerabilità presenti nel meccanismo di validazione dell’input, al fine di eseguire comandi arbitrari nel database.
Autenticazione
È il processo in cui una entità prova la identità di un’altra entità, tipicamente attraverso credenziali come user name e password, relative ad una applicazione. Gli aspetti fondamentali collegati all’autenticazione riguardano:
- la identificazione dei punti in cui richiedere l’autenticazione all’interno dell’applicazione, tipicamente nelle zone che delimitano un’area di ‘Trust’;
- la validazione di credenziali, che nelle applicazioni Web vengono trasmesse tramite form HTML (o, meno comunemente per le implicazioni di sicurezza associate, utilizzando schemi quali http basic o digest authentication);
- l’assegnazione di un token all’utente per la sua identificazione.
I punti da considerare per una corretta strategia di protezione sono i seguenti:
- evitare il passaggio di credenziali ‘in chiaro’ attraverso la rete e utilizzare canali di comunicazione sicuri;
- memorizzare i dati relativi alle credenziali in maniera crittografata o utilizzare eventualmente algoritmi di hash;
- identificare univocamente l’utente che si è autenticato, proteggendo i suoi cookie di autenticazione.
Network eavesdropping (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questo tipo di attacco, ossia ‘spiare attraverso la rete’ potrebbe andare a buon fine se le credenziali relative all’autenticazione vengono passate in chiaro dal client al server. I dati HTTP che viaggiano in chiaro nella rete sono soggetti a questo tipo di attacco, che viene perpetrato attraverso software di monitoraggio della rete al fine di intercettare e/o modificare dati riservati. Da tenere in considerazione che il protocollo HTTP impiega solo una semplice codifica Base64 prima di trasmettere le password.
Brute force attack (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questo tipo di attacco è mirato verso la individuazione automatica delle password o altre informazioni sensibili. L’attacco consiste nella possibilità di ‘craccare’ (to crack = rompere) la password o altre informazioni riservate, codificate con meccanismi crittografici o di hashing, verificando tutte le combinazioni possibili per le informazioni in oggetto (ad es., tutte le combinazioni di username, password).
Dictionary attack (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questo tipo di attacco è mirato verso la individuazione automatica delle password. Se le password da conservare in memoria vengono codificate tramite un meccanismo di hashing, il meccanismo di autenticazione avviene ricodificando con lo stesso meccanismo la password digitata dall’utente ed effettuando il confronto del valore ottenuto con il corrispondente valore memorizzato nel database. Se un attaccante riesce ad ottenere la lista delle password codificate, potrà cercare di individuare il meccanismo di decodifica (Brute Force). In aggiunta a ciò, un attacco di questo tipo (Dictionary attack) viene perpetrato con l’ausilio di appositi programmi che effettuano delle iterazioni, utilizzando tutte le parole di un dizionario (o di più dizionari di lingua diversa), effettuando poi l’hashing per ognuna delle parole possibili. L’hashing risultante viene poi confrontato con il corrispondente valore del database. Per questo motivo viene sconsigliato l’uso di password troppo semplici.
Cookie replay (Applicabilità: Applicazioni Web Oriented). Con questo tipo di attacco, si cerca di impadronirsi dei cookie di autenticazione dell’utente utilizzando software di monitoraggio, replicandone poi il contenuto per accedere all’applicazione, impersonificando un utente legittimo. Un attacco di questo tipo può verificarsi quando il canale di comunicazione non è cifrato (ad es., si utilizza http) e l’attaccante ha la capacità di osservare traffico in transito dalla vittima.
Furto di credenziali (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Se una applicazione contempla l’uso di propri ‘contenitori’ relativi a credenziali dell’utente, il suo meccanismo di sicurezza potrebbe essere meno robusto di quello fornito dalla piattaforma di riferimento.
Autorizzazione/profilazione
Le autorizzazioni/profilazioni connesse con una applicazione riguardano sia le modalità con cui essa accede a risorse, database e/o operazioni sia se e con quali diritti gli utenti finali accedono a loro volta all’applicazione stessa.
Le principali implicazioni che derivano da vulnerabilità imputabili ad una inappropriata gestione delle autorizzazioni sono:
Elevazione di privilegi (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questo tipo di attacco, collegato con la fase di assegnazione delle autorizzazioni, consiste nella possibilità che qualcuno possa allargare il proprio campo di azione, utilizzando privilegi non consentiti per il proprio account, come ad esempio i diritti assegnati ad un gruppo di amministratori. L’attacco avviene solitamente in modo indiretto, dato che spesso deve sfruttare altre vulnerabilità (es. un buffer overflow) presenti nell’applicazione per poter essere messo in pratica.
Violazione di dati riservati (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questo tipo di minaccia riguarda i dati gestiti da una applicazione e consiste nella possibilità di visualizzazione di dati riservati da parte di un utente non autorizzato.
Data tampering (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questo tipo di minaccia riguarda i diritti assegnati agli utenti e consiste nella possibilità di modifica dei dati da parte di un utente non autorizzato.
Luring attacks (Applicabilità: Applicazioni Web Oriented). Questo tipo di problema, che rientra nella categoria di attacchi che comportano una elevazione di privilegi, consiste nella possibilità, da parte di una entità, di richiamarne un’altra avente privilegi superiori, ossia che consentano di effettuare una certa operazione altrimenti non autorizzata.
Gestione della configurazione
Questa categoria riguarda le applicazioni dotate di interfacce e funzionalità che permettono a sviluppatori, operatori e amministratori di gestire:
- parametri di configurazione di un sito web;
- contenuti delle pagine Web;
- account degli utenti;
- informazioni sugli user profile;
- stringhe di connessione al database;
- routine di manutenzione e amministrazione.
Questo tipo di vulnerabilità potrebbe permettere ad un attaccante di accedere al sito con privilegi di amministratore. Se, ad esempio, un application server è dotato di funzioni di amministrazione remota, un accesso non sicuro alla interfaccia di amministrazione potrebbe permettere l’ingresso e la modifica di qualsiasi informazione.
Accessi non autorizzati ad interfacce di amministrazione (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questo tipo di minaccia potrebbe riguardare quelle applicazioni dotate di interfacce, interne od esterne all’applicazione stessa, tramite le quali sia possibile effettuare operazioni di gestione e di configurazione.
Accessi non autorizzati a file di configurazione (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questa minaccia riguarda le informazioni contenute nei file di configurazione (o file .ini nelle applicazioni client server) che, a causa della loro natura, devono essere protette da accessi non autorizzati.
Reperimento in chiaro di dati riguardanti la configurazione (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questa minaccia è collegata con la precedente: oltre a riguardare la limitazione degli accessi sui file contenenti dati di configurazione, comporta l’adozione di un meccanismo di difesa in profondità attraverso la crittografia dei dati sensibili/critici o delle stringhe di connessione.
Assegnazione di account non individuali (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questa minaccia riguarda la possibilità da parte di un attaccante di modificare informazioni relative alla configurazione ed all’amministrazione di sistemi e siti e di accedere a dati riservati senza una adeguata tracciabilità delle operazioni e della persona che le ha effettuate attraverso le attività di auditing e logging.
Processi e account del servizio con privilegi troppo elevati (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Un importante aspetto per una corretta configurazione dell’applicazione è rappresentato dall’assegnazione di minimi privilegi agli account di processo usati per esempio per eseguire il processo Web server e gli account di servizio usati per accedere alle risorse e ai sistemi.
Dati sensibili
Questa categoria è soggetta ad una varietà considerevole di possibili tentativi di visualizzazione o modifica di dati riservati, e può riguardare sia dati memorizzati, sia dati che viaggiano sulla rete.
I meccanismi principali per gestire la privacy di queste informazioni sono:
- la crittografia;
- l’integrità attraverso codici di autenticazione del messaggio (MAC).
Accesso a dati sensibili in memoria (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Network eavesdropping (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Data tampering (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Queste minacce si riferiscono alla possibilità da parte di alcuni utenti malintenzionati di accedere in maniera non autorizzata a dati riservati, memorizzati su qualsiasi tipo supporto.
Gestione delle sessioni
Questo tipo di vulnerabilità costituisce un aspetto critico per una applicazione, e le applicazioni Web in particolare devono utilizzare sessioni per tenere traccia delle richieste di ogni utente: il protocollo HTTP non offre questa funzionalità e quindi ogni applicazione deve implementarla in qualche modo.
Session hijacking (Applicabilità: Applicazioni Web Oriented). La tecnica di questo attacco consiste nell’attendere che qualcuno porti a termine con successo il proprio processo di autenticazione, al fine di sfruttare in seguito la medesima connessione, anche quando il legittimo utente ne ha terminato l’utilizzo.
Session replay (Applicabilità: Applicazioni Web Oriented). Questa minaccia riguarda la possibilità di sfruttare informazioni riguardanti la sessione, intercettate come descritto nel punto precedente, al fine di bypassare il meccanismo di autenticazione. In altre parole è l’utilizzo delle autorizzazioni da parte dell’hacker senza che esse gli siano state date. Se ad esempio il token relativo alla sessione è presente in chiaro all’interno di un cookie o di una URL, potrebbe essere intercettato (Session hijacking) e poi riutilizzato.
Man in the middle (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questo tipo di attacco può riguardare un qualsiasi tipo di richiesta inviata attraverso la rete nel corso di una comunicazione client/server. Consiste nella alterazione dei messaggi nella fase di passaggio fra mittente e destinatario, prima dell’effettivo arrivo a destinazione. Il messaggio falsificato viene accettato come vero dal destinatario, che intraprende le azioni corrispondenti. Analogamente, quando in seguito viene inviata una risposta, anche questa viene falsificata. In tal modo nessuna delle due parti si renderà mai conto di essere stata attaccata.
Session Riding (Applicabilità: Applicazioni Web Oriented). Session Riding, altrimenti detta Cross-Site Request Forgery, rappresenta una classe di vulnerabilità che consente di inviare comandi ad applicazioni web tramite un (inconsapevole) utente, mediante l’invio a quest’ultimo di email o inducendolo a visitare apposite pagine web.
Crittografia
Di fronte all’esigenza di trattare informazioni sensibili dal punto di vista della sicurezza, cosa abbastanza comune per un gran numero di applicazioni, potrebbe essere necessario utilizzare un algoritmo di crittografia. In tal caso, il meccanismo prescelto non dovrà essere utilizzato in maniera impropria. Probabilmente, l’errore più comune è rappresentato da codice di crittografia realizzato autonomamente, solitamente debole e semplice da violare.
È importante assicurarsi che l’algoritmo scelto sia adatto al lavoro che deve svolgere e allo stesso tempo bisogna assicurarsi di usare una giusta dimensione della chiave che garantisca un sufficiente grado di sicurezza. Generalmente più grande è la chiave, maggiore sarà il livello di sicurezza, ma più onerosa la sua implementazione.
Di seguito vengono analizzate le minacce (solitamente sottovalutate) che possono essere sfruttate affinché gli attacchi possano avere successo e quindi compromettere la sicurezza delle applicazioni.
La seguente lista sintetizza gli algoritmi più diffusi e le chiavi che essi implementano:
- Data Encryption Standard (DES) chiave a 64 bit suddivisa in 8 blocchi da 8 bit (8 bytes) – Simmetrico (chiave privata);
- TripleDES (3DES) chiavi a 128 bit o 192 bit (16 o 24 bytes) – Simmetrico (chiave privata);
- Rijndael 128 –256 bit (16-32 bytes) – Simmetrico (chiave privata);
- RSA 1024 bit (128 bytes) Asimmetrico (chiave pubblica).
Gestione o generazione non appropriata delle chiavi (Applicabilità: Applicazioni Web Oriented, Client server). Gli utenti malintenzionati possono decriptare i dati se essi hanno accesso alla chiave di encriptyng o possono dedurla. Alcuni utenti malintenzionati potrebbero scoprire le chiavi se le stesse sono generate in maniera non casuale od utilizzando degli algoritmi fai da te. Questo tipo di minaccia, utilizzabile da un attacco, ha una probabilità di fallimento che è direttamente proporzionale alla robustezza del meccanismo di generazione e gestione delle chiavi crittografiche.
Crittografia debole (Applicabilità: Applicazioni Web, Applicazioni Client server). Un algoritmo di crittografia non offre nessuna sicurezza se può essere decodificato, ossia è vulnerabile ad un attacco di tipo “Brute Force”. Gli algoritmi “fai da te” sono particolarmente vulnerabili se non testati adeguatamente. È d’obbligo in questi casi l’utilizzo di algoritmi noti e accuratamente testati. Questo tipo di vulnerabilità ha una probabilità di insuccesso direttamente proporzionale alla robustezza dell’algoritmo di crittografia utilizzato.
Manipolazione di parametri
In questa categoria ricadono le applicazioni Web in cui avvenga un passaggio di parametri fra client e applicazione. Ciò potrebbe riguardare stringhe contenenti query, campi della maschera di input, cookie e header HTTP.
Manipolazione di stringhe contenenti query (Applicabilità: Applicazioni Web). Le stringhe di query sono porzioni di una URL dinamica che contengono parametri per la generazione di una pagina. La manipolazione di questi dati è solitamente una operazione abbastanza semplice e non esistono metodi robusti per prevenirla, soprattutto se i parametri vengono passati tramite una HTTP GET da client a server, che provoca la loro successiva visualizzazione all’interno della URL.
Manipolazione di campi relativi a maschere di input (Applicabilità: Applicazioni Web). Quando un utente inserisce dati in una pagina HTML, questi vengono solitamente memorizzati come valori di campi del form e inviati in chiaro all’applicazione come una richiesta HTTP (GET o POST). Questi campi potrebbero essere modificati per bypassare le routine di validazione del client e la manipolazione potrebbe riguardare tutti i campi presenti nel form, compresi quelli nascosti.
Manipolazione di Cookie (Applicabilità: Applicazioni Web). I cookie sono un conveniente meccanismo di memorizzazione delle preferenze utente e di altri dati, fra cui i session token. Esistono due diverse tipologie di cookie:
- Cookie persistenti;
- Cookie non-persistenti
I cookie di tipo persistente sono memorizzati in file di testo che si trovano sul client, e sono validi per un determinato periodo, stabilito in base alla corrispondente data di scadenza. I cookie di tipo non-persistente sono memorizzati sul client nella RAM, e vengono cancellati quando il browser viene chiuso oppure il cookie viene terminato da uno script di logoff. Entrambe le tipologie sono suscettibili a manomissioni da parte del client, che li invia successivamente al server effettuando richieste tramite header HTTP, ad esempio per ottenere l’accesso ad un sito Web, oppure utilizzando Javascript.
Manipolazione di header http (Applicabilità: Applicazioni Web). Gli header HTTP sono informazioni di controllo, che vengono scambiate fra client e Web server nelle richieste HTTP. Gli header relativi al client vengono solitamente indicati come request header, mentre i response header sono quelli relativi al server. Il cookie può essere considerato un esempio di response header. Queste informazioni sono solitamente contenute in una riga ASCII di testo, ed hanno un nome ed un valore. Normalmente, i web browser non consentono la modifica degli header, e un attaccante dovrà scrivere un apposito programma che effettua la richiesta HTTP, oppure utilizzare degli strumenti facilmente reperibili in rete, che consentono di modificare i dati inviati dal browser (proxies).
Gestione delle eccezioni/errori
Una corretta gestione degli errori non deve esporre informazioni sulla struttura interna dell’applicazione ad eventuali attacchi. Le applicazioni che non effettuano una corretta gestione delle eccezioni sono vulnerabili da questo punto di vista.
Information disclosure (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Con questo tipo di attacco si cerca di provocare un errore dell’applicazione, al fine di ottenere informazioni riguardanti l’applicazione stessa, come ad esempio: versione della piattaforma, nomi di server, stringhe contenenti comandi SQL, e stringhe di connessione al database.
Denial of Service (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Un attacco di questo tipo viene solitamente effettuato inviando intenzionalmente un input errato ad una applicazione. Questo per due scopi principali:
- causare un errore che riveli informazioni di dettaglio sull’applicazione;
- provocare il crash dell’applicazione o di una sua componente.
Se tutte le eccezioni non sono state opportunamente catturate e gestite, questa eventualità potrebbe verificarsi.
Audit e Log
L’audit è una tecnica che permette di determinare e scoprire a posteriori le violazioni sulla sicurezza e si basa sulla creazione di log (di solito file) in cui registrare gli eventi e/o statistiche che una entità effettua sul sistema in oggetto. Questo tipo di tecnica dovrebbe essere utilizzata per individuare, riparare e possibilmente prevenire il maggior numero possibile di attività illecite. I log forniscono un meccanismo per analizzare lo stato di sicurezza del sistema, anche per determinare se un’azione richiesta metterà il sistema in uno stato non sicuro o per determinare la sequenza degli eventi che conducono il sistema in uno stato di non sicurezza.
Si raccomanda di registrare almeno le azioni riguardanti le seguenti tipologie di eventi delle applicazioni:
- lettura dati sensibili;
- scrittura dati sensibili;
- cancellazione di ogni tipologia di dato;
- tutti gli eventi di autenticazione (login, logout, e log failure)
- tutti i tentativi di modifica autorizzazioni includendo data e ora, se è avvenuto con successo o è stato rifiutato, la risorsa o la funzione alla quale si autorizza, e l’utente che ha chiesto l’autorizzazione.
Si riportano i problemi che possono far sì che il meccanismo di log non possa fornire le informazioni necessarie per stabilire lo stato di sicurezza del sistema.
Negazione di aver effettuato una operazione (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). L’attacco consiste nella possibilità di ripudio di una azione o di una transazione che è realmente avvenuta facendola apparire come se non fosse mai stata eseguita.
Violazione di una applicazione senza lasciare tracce (Applicabilità: Applicazioni Web Oriented, Client server, MainFrame). Questa minaccia consiste nell’attacco a un’applicazione utilizzando uno dei metodi descritti in precedenza senza che ci sia conoscenza del cambiamento sullo stato del sistema.
Vediamo ora alcuni delle minacce più diffuse:
Defacement
Il web defacement è la modifica non autorizzata di come visivamente appare un sito web. Tale azione è ormai un elemento ricorrente in Internet e le motivazioni che spingono un attaccante ad agire in questo modo sono molteplici, incluse la dimostrazione di abilità, le ragioni ideologiche, la truffa ed il ricatto con implicazioni prevalentemente di danno economico. La gravità di questo problema è ormai diventata incontrovertibile, come dimostrato da numerosi dati di fatto. Attacchi di questo genere sono ormai effettuati in maniera automatizzata ed in larga scala, in modo analogo a quanto avviene con la propagazione dei virus e degli worm. I contenuti originari vengono sostituiti con testi e/o immagini irridenti e critici, a volte “nonsense” (o apparentemente tali).
Un defacement mina la credibilità del sito colpito, che dimostra di essere vulnerabile. Pur interferendo con la comunicazione del sito colpito, il danno non è permanente. La modifica del sito web viene effettuata ottenendo un accesso al server che lo ospita.
Attacchi di Denial of Service (DoS) e Distributed Denial of Service (DDoS)
La sigla DoS di Denial of Service si traduce letteralmente in negazione del servizio. Si tratta di un malfunzionamento dovuto ad un attacco informatico in cui si esauriscono deliberatamente le risorse di un sistema informatico che fornisce un servizio, ad esempio un sito web, fino a renderlo non più in grado di erogare il servizio. Alcuni mirano solo ad un servizio, ad esempio Web, SMTP, FTP, etc., altri invece mirano a mettere fuori uso completamente il server o, addirittura, un’intera rete.
Gli attacchi DDoS (Distributed Denial of Service) amplificano la portata di tali minacce.
Gli attacchi di tipo DDoS sono molto più insidiosi da bloccare perché:
- la potenza dell’attacco (volume dei dati trasmessi, banda occupata, etc.) è maggiore, di vari ordini di grandezza, rispetto a quella possibile attraverso un DoS;
- è praticamente impossibile bloccare l’attaccante nella considerazione che sono decine di migliaia di computer infetti che perpetrano l’attacco;
- è praticamente impossibile riconoscere il traffico autorizzato da quello non autorizzato, visto che i computer partecipanti alla botnet sono dislocati, praticamente in tutto il globo.
Attacchi man in the middle.
Consistono nell’intercettazione da parte dell’attaccante della comunicazione legittima in corso tra due attori. Tramite diverse tecniche, che si differenziano attraverso la tipologia di connessione in corso, l’attaccante osserva lo scambio di informazioni tra le due parti, e al momento più opportuno si sostituisce a una delle due per ottenere quanto desidera.
Un classico esempio di questa tipologia di attacco, che sta mietendo sempre più vittime anche in Italia, viene denominato man in the mail: a seguito della violazione dell’account di posta di uno dei due attori coinvolti, l’attaccante è in grado di assistere alle conversazioni email. In questo modo egli può carpire quante più informazioni sulle persone coinvolte e al momento opportuno sostituirsi ad una di esse in maniera esemplare. L’unico modo per evitare il verificarsi di tali truffe è chiedere una conferma certa da parte del ricevente e in caso di dubbi stoppare l’attività di bonifico.
Malware
Il termine malware indica genericamente un qualsiasi software creato con il solo scopo di causare danni più o meno gravi ad un computer, ai dati degli utenti del computer, o a un sistema informatico su cui viene installato. Si conoscono molte categorie di malware, anche se spesso questi programmi sono composti di più parti interdipendenti e rientrano pertanto in più di una classe. Tra questi i più frequenti sono:
- Virus: sono parti di codice che si diffondono copiandosi all’interno di altri programmi, o in una particolare sezione del disco fisso, in modo da essere eseguiti ogni volta che il file infetto viene aperto. Si trasmettono da un computer a un altro tramite lo spostamento di file infetti ad opera degli utenti;
- Worm: il loro scopo è rallentare il sistema con operazioni inutili o dannose;
- Trojan horse: software che contengono istruzioni dannose che vengono eseguite all’insaputa dell’utilizzatore, per diffondersi devono essere consapevolmente inviati alla vittima;
- Backdoor: consentono un accesso non autorizzato al sistema su cui sono in esecuzione;
- Spyware: software che vengono usati per raccogliere informazioni dal sistema su cui sono istallati e per trasmetterle ad un destinatario interessato, le informazioni carpite possono andare dalle abitudini di navigazione fino alle password e alle chiavi crittografiche di un utente;
- Dialer: questi programmi si occupano di gestire la connessione ad Internet tramite la normale linea telefonica, possono essere utilizzati in modo illecito, modificando il numero telefonico chiamato dalla connessione predefinita con uno a tariffazione speciale, allo scopo di trarne illecito profitto all’insaputa dell’utente;
- Hijacker: questi programmi si appropriano di applicazioni di navigazione in rete (soprattutto browser) e causano l’apertura automatica di pagine web indesiderate;
- Keylogger: sono dei programmi in grado di registrare tutto ciò che un utente digita su una tastiera o che copia e incolla rendendo così possibile il furto di password o di dati che potrebbero interessare qualcun altro.
Il loro numero e la varietà, unite alla loro rapida evoluzione ed obsolescenza non consentono di classificarli al fine di raggiungere una loro tipizzazione sanzionatoria. La Convenzione di Budapest ha quindi evitato deliberatamente di sanzionare specificamente le varie forme di malware, anche soltanto limitandosi alle tipologie più ricorrenti, al fine di evitare la rapida perdita di attualità delle norme ivi contenute. Tuttavia è possibile ricondurre anche i malware sotto specifiche disposizioni della Convenzione avendo riguardo alla funzionalità ed ai danni prodotti dai malware che sono, invece, suscettibili di catalogazione e di tipizzazione normativa. Vengono in considerazione le norme[6] che sanzionano l’accesso abusivo, l’interruzione e l’intercettazione di comunicazioni telematiche, le varie forme di danneggiamento aventi ad oggetto dati, programmi o sistemi, le norme che sanzionano la disponibilità e la cessione a terzi di programmi realizzati al fine di accedere illegalmente a computer e sistemi protetti ovvero al fine di danneggiarli, i programmi concepiti per l’alterazione e la falsificazione di informazioni presenti in banche dati pubbliche o private, i malware specificamente progettati per recare un danno economico e conseguire un profitto tramite l’interferenza sul funzionamento di computer o sistemi.
Advanced Persistent Threats
L’anno 2014 è stato caratterizzato da numerosi attacchi del tipo Advanced Persistent Threat (APT), basati su malware già noti in passato ma riutilizzati secondo una nuova connotazione. Gli APT sono schemi di attacco articolati, mirati a specifiche entità o organizzazioni, e che si contraddistinguono per un accurato studio del bersaglio preventivo e che spesso continua anche durante l’attacco, per l’impiego di tool e malware sofisticati e per la lunga durata o persistenza nel tempo cercando di rimanere inosservati per continuare a perpetrare quanto più possibile il proprio effetto.
Crimini di identità
Il nuovo contesto tecnologico, la diffusione capillare di Internet e fenomeni quali i social network hanno fatto sì, infatti, che l’attenzione dei criminali si rivolgesse verso nuove forme di cybercrime che hanno ragione di esistere in quanto sfruttano l’immaterialità del cyberspace.
Questa nuove forme di crimini informatici si sostanziano in abusi di profili identitari altrui nel cyberspace, ovvero il furto d’identità digitale, il phishing, l’abuso di identità “virtuale”, le frodi identitarie, fenomeni questi che possono essere ricondotti nella categoria generale degli “identity crime”.
Tale categoria comprende in pratica tutte quelle condotte delittuose che comportano una aggressione all’identità digitale altrui, dovendosi intendere con tale espressione quell’insieme di informazioni presenti online e relative ad una persona, un ente, un brand, ecc.
I crimini di identità si dividono in due categorie: i furti d’identità, cioè la sottrazione di dati personali di persone esistenti o decedute e le frodi d’identità, cioè la creazione di un’identità fittizia, basata su dati falsi o manomessi (mescolando dati reali di più persone).
La tecnica più diffusa per il furto di identità è il phishing: può essere definito come “una metodologia di comportamento sociale indirizzata a carpire informazioni personali o abitudini e stili di vita”. Attraverso tale tecnica si induce l’utente a fornire dati personali che consentono l’accesso ad informazioni riservate.
Social Engineering. La dissimulazione disonesta: l’ingegneria sociale
Non importa di quali tecnologie di sicurezza sia dotata un’azienda, l’investimento in soluzioni all’avanguardia potrebbe essere inficiato dal comportamento di un solo utente, manipolato con un attacco di ingegneria sociale. Non esiste alcuna tecnologia che permetta di prevenirlo o di difendersi. Per esserne immuni è necessario essere addestrati.
L’ingegneria sociale è in generale l’arte di indurre le persone a compiere determinate azioni dissimulando il reale obiettivo dell’attacco. L’ingegnere sociale è abile a mascherare la propria identità, fingendosi un’altra persona: in tal modo, attraverso la conversazione o altre interazioni, riesce a ricavare informazioni che altrimenti non otterrebbe.
In ambito security il social engineering viene utilizzato come metodo di intrusione e spesso l’attività di social engineering è strettamente collegata a quella di phishing. L’evoluzione del cybercrime negli ultimi anni evidenzia la tendenza all’utilizzo congiunto di tecniche avanzate di malware e social engineering per lanciare attacchi sempre più sofisticati e difficili da prevedere o rilevare, tali da provocare danni ingenti e a volte irreparabili ai sistemi di sicurezza aziendali, con conseguenti perdite economiche, perdita di dati sensibili e informazioni strategiche, danno alla reputazione.
Operazioni estorsive. Cifratura di file con ransomware
Questa tipologia di attacchi si sta evolvendo e raffinando sempre più. Il metodo di diffusione più comune è quello dell’email, che viene camuffata ad arte per assomigliare ad esempio ad una fattura o ad un ordine di un potenziale cliente. Il fine dell’attaccante è quello di indurre l’utente ad eseguire il download dell’allegato presente sulla mail ricevuta, in modo tale da poter eseguire l’installazione del virus sulla macchina target. Una volta installato, il ransomware esegue una cifratura di quanti più file riesce a infettare, includendo non solo la macchina locale su cui è stato scaricato, ma anche le eventuali cartelle condivise. Per ottenere la chiave di decifrazione la vittima deve pagare un riscatto, solitamente sotto forma di Bitcoin, la moneta digitale utilizzata sempre più dai cybercriminali per le transazioni di questo genere, in quanto difficilmente rintracciabili.
Ultimamente questo tipo di ransomware (locker-ransomware), è stato gradualmente soppiantato da un più insidioso crypto-ransomware, codici che criptano i soli documenti lasciando però accesso al sistema che invece risulterà vuoto e chiedendo un riscatto (generalmente nell’ordine delle centinaia di dollari) per riottenere i documenti in chiaro.
Questa particolare forma di malware è cresciuta di molto anche grazie alla diffusione di servizi di ransomware as a service gestiti da gruppi criminali che affittano servizi completi di ransomware a chi decide di gestire in proprio le campagne di estorsione informatica.
Attacchi alle infrastrutture Cloud
L’utilizzo del Cloud computing ha introdotto nuove sfide che aziende e organizzazioni di ogni tipo e dimensione hanno la necessità di affrontare. Le politiche e procedure disegnate attraverso esperienze decennali nella gestione delle minacce on-premise[7], continuano ad avere la loro validità anche negli ambienti public e hybrid cloud, ma non sono più sufficienti: c’è la forte necessità per i team di sicurezza di mantenersi aggiornati sulle nuove tipologie di minacce che il cloud computing deve affrontare, per definire la migliore strategia di protezione. Tali minacce possono essere introdotte da caratteristiche peculiari dei servizi cloud o per effetto dell’interconnessione tra l’ambiente on-premise con quello cloud.
Strategia di un attacco
Per individuare le vulnerabilità all’interno di una applicazione possono essere sfruttate diverse forme di interazione, i cui passi principali sono:
- controllo e identificazione: l’obiettivo dell’attacco viene studiato al fine di identificare congiuntamente le caratteristiche di una applicazione, ossia ad esempio i servizi ed i protocolli utilizzati, le corrispondenti vulnerabilità e punti di accesso. In primo luogo si potrà simulare il normale utilizzo da parte di un utente e a tale scopo sarà sufficiente un qualunque client http;
- infiltrazione: dopo aver studiato ed identificato l’obiettivo, il passo successivo sarà quello di cercare una strada che permetta di infiltrarsi nel sistema. Se la sicurezza della rete e la sicurezza dell’host saranno state ben salvaguardate, sarà presa di mira la sicurezza delle applicazioni;
- appropriazione di privilegi: dopo aver trovato una via di ingresso, il prossimo passo potrebbe consistere nel tentativo di ottenere diritti di accesso ancora più elevati, per allargare il proprio campo di azione. Se nella corrispondente gestione della configurazione sono stati previsti processi e account del servizio con privilegi troppo elevati, ciò faciliterà questa tipologia di intervento. Per questo motivo il principio del minimo privilegio resta sempre una contromisura molto importante da adottare;
- mantenimento di un accesso: dopo aver ottenuto l’accesso ad un sistema, si cercherà di mantenerlo, provvedendo anche a semplificarlo per il futuro ed a cancellarne le tracce. Un esempio potrebbe consistere nell’installazione di programmi di back-door, che lasciano aperta la strada o anche nella scelta di un account adatto. Per coprire le proprie tracce, sarà poi effettuata una pulizia dei log, che costituiscono un altro potenziale obiettivo di attacco ed è per questo motivo che i file di log dovrebbero essere salvaguardati ed analizzati sistematicamente;
- negazione del servizio (Denial of Service): alcuni attaccanti che non riescano ad ottenere l’accesso ad un sistema, spesso cambiano obiettivo, cercando di impedire agli utenti legittimi di utilizzare l’applicazione, per altri ancora, questo può essere invece l’obiettivo primario.
Cap.4 Le Investigazioni Digitali
Lo “stato” della digital forensics in Italia si è, negli ultimi anni, evoluto sensibilmente e, fortunatamente, in maniera abbastanza omogenea. Sin dagli anni duemila, la scienza che studia la corretta identificazione, acquisizione, produzione e, in senso lato, “resistenza” in giudizio della fonte di prova digitale ha vantato anche in Italia uno sviluppo lineare che ha riguardato tutti i settori coinvolti, nessuno escluso: il mondo dell’accademia, le Forze dell’Ordine, la magistratura e l’avvocatura e il mondo dei consulenti, dei tecnici, degli esperti, delle associazioni e delle aziende che producono software ed hardware per la digital forensics (soggetti, questi, giustamente più votati a un approccio alla materia tecnico e d’immediata utilità, compresa la formazione nell’utilizzo di tali strumenti, sovente complessi). Ciò ha portato a uno sviluppo equilibrato del settore, cosa molto utile e apprezzabile in un ambito che viene a toccare, come è noto, i diritti fondamentali dell’individuo.
Prova digitale: «È da considerarsi prova digitale il dato e la rispettiva informazione avente valore probatorio, ricavati da un accertamento tecnico-scientifico di tipo informatico, svolto nell’ambito di un procedimento penale o civile.»
L’aspetto più importante, e che è divenuto la questione centrale, è che la digital forensics ha intaccato alcuni concetti base ritenuti universalmente validi in ambito legale, i quali devono essere in qualche modo ricodificati o quantomeno riadattati all’inarrestabile evoluzione tecnologica del mondo digitale.
Ad esempio…
La dematerializzazione
In generale il processo di dematerializzazione è stato largamente introdotto quando, anche la PA, ha cercato di trasformare l’enorme massa di documentazione cartacea in suo possesso in file su una memoria di massa digitale.
A questo va aggiunto che si è cercato non solo di implementare l’archiviazione in tal senso, ma anche le procedure, spostando le attività umane su flussi descritti e contenuti in complessi database (archivi elettronici) e software basati su articolate reti di computer.
Il completo processo di dematerializzazione, però, e mi riferisco in Italia, impiegherà lunghi periodi, lasciando ancora alla carta un centralissimo ed indiscutibile compito in qualsiasi ambito documentale e procedurale.
Uno dei motivi fondamentali di tale difficoltà di avanzamento è la mancanza di fiducia verso il digitale, che ha sicuramente mostrato la sua pervasività ed indispensabilità, ma ha parimenti evidenziato un’assoluta incapacità di gestire sicurezza, affidabilità e disponibilità dei dati:
- sicurezza: stabilire chi (identità) è autorizzato a fare cosa (attività) e con quali dati (informazioni) ed evitare che non autorizzati svolgano procedure o accedano a dati loro vietati. Non esiste ad oggi un sistema tecnico completamente sicuro per i sistemi digitali, soprattutto quando sono in rete, è indispensabile una politica di gestione della sicurezza che coinvolga anche le persone;
- affidabilità: garanzia che i dati registrati restino integri nel tempo. La maggior parte delle memorie digitali si danneggia con frequenza molto più alta della carta, che resta il supporto di memoria al momento più longevo;
- disponibilità: garanzia che i dati restino disponibili agli autorizzati quando questi lo richiedono. Spesso tra guasti di sistema, difficoltà di connessione, ecc. i dati, pur essendo presenti in una rete complessa, non sono disponibili.
Succede poi che in Italia sicurezza, affidabilità e disponibilità vengono percepiti come costi sia dalle PA che dalle aziende e non come investimenti e quindi si cerca di “spenderci il meno possibile” conseguendo sistemi deboli e mediamente mal funzionanti che vengono rafforzati solo nelle aree in cui non se ne può fare a meno (es. aree riservate o critiche).
La dematerializzazione nella digital forensics
Nella digital forensics i problemi appena visti per la dematerializzazione in generale, non solo esistono, ma sono rafforzati dalla pesantezza e rilevanza dell’attività considerata che è quantomeno un’indagine civile/penale. Ogni volta infatti che si devono affrontare questioni critiche in cui si rischiano grosse ripercussioni per degli errori è naturale irrigidirsi. Si può passare immediatamente a considerare l’aspetto digital forensics centrale di tale faccenda mediante un esempio base di semplice e diretta comprensione. Qualora un PC contenga nella sua memoria di massa (hard disk) alcuni dati di estremo interesse, per un’indagine di PG nei confronti del suo possessore, se ne può disporre il sequestro (fisico) per poi consentire ad un CT di svolgere un’analisi forense approfondita consegnandogli l’oggetto. La domanda però è perché disporre un sequestro fisico dello strumento quando NON si è interessati a tutto quello che contiene ma solo ad alcuni dati in esso registrati.
In definitiva si è stabilito un nuovo concetto di sequestro virtuale in cui l’oggetto del sequestro non è la “cosa” ma il “dato”. Va dunque distinto il “contenitore” rispetto al “contenuto”.
Il punto massimo sul reperto virtuale e sulla dematerializzazione, lo si ha con i sistemi cloud. In breve un cloud system è un sistema che usa Internet come semplice rete di appoggio, combinando il lavoro di migliaia di server in tutto il mondo, ciò a determinare una serie di servizi.
Il computer virtuale su cloud o computer remoto è un intero sistema di elaborazione che NON esiste fisicamente ma solo virtualmente (è definito scientificamente macchina virtuale distribuita). Il suo sequestro può essere SOLO di natura virtuale ed il reperto che ne consegue è un insieme di dati che difficilmente potrà sussistere solo in un hard disk.
In altre parole NON è sempre possibile registrare questa fonte di prova su una nostra memoria locale, tale contenitore non è adeguato. L’unico modo di gestire la situazione è lasciare il computer virtuale nel cloud e chiedere al gestore del cloud di “congelarlo” lì dove si trova, ad esclusivo uso di PG ed AG e dei loro CT e periti.
Cyberspace vs. “domicilio informatico”
A differenza di circa venti anni fa, l’investigatore moderno volente o nolente si trova proiettato ad indagare in un mondo parallelo ed intangibile che costituisce di fatto una sorta di quinta dimensione, ossia il cyberspace. Ma cosa s’intende con tale termine di origine anglosassone? Una definizione formale ed esaustiva l’ha fornita la ISO 27032:2012, la quale ha sancito che è intendersi come “l’ambiente virtuale generato dall’interazione tra persone, software e servizi Internet ottenuti attraverso l’uso di sistemi informatici e telematici interconnessi tra loro.
Attualmente tale ambiente operativo non è formalmente definito in specifiche norme del nostro sistema giudiziario, ma oramai per consuetudine possiamo dire che esso è assimilato al concetto di “domicilio informatico” sancito dalla nostra Suprema Corte nel seguente modo: “… deve ritenersi “domicilio informatico” … quello spazio ideale (ma anche fisico in cui sono contenuti i dati informatici) di pertinenza della persona, cui si estende la tutela della riservatezza della sfera individuale, quale bene anche costituzionalmente protetto (art. 15 Cost.)…”[8].
Alla luce di tale asserto, possiamo senza dubbio dire che attualmente l’ordinamento penale conosce un duplice significato del termine “domicilio”:
- uno in senso reale, inteso come “spazio ideale di pertinenza della persona, al quale estendere la tutela della riservatezza della sfera individuale, quale bene anche costituzionalmente protetto (art. 14 Cost.)”[9];
- uno in senso virtuale, che si differenzia dal primo per la morfologia del perimetro, il quale è caratterizzato da una “geometria variabile” nella disponibilità diretta della parte. Dalla dinamicità di tale ambiente deriva che il suo contenuto informativo non necessariamente coincide con quello del dispositivo fisico assicurato, ma può essere distribuito anche in aree diverse dal territorio nazionale[10], come ad esempio il cloud[11], il cui paradigma ha di fatto stravolto il “modus investigandi” che si era consolidato nel tempo.
L’impatto del Cloud Computing nell’attività investigativa
Come noto il principale problema derivante dalle indagini in materia di criminalità informatica in Internet è l’ “aterritorialità”.
Si pongono dunque problemi che si collocano a diversi livelli:
- livello investigativo: ampio terreno da monitorare;
- livello procedurale: chi è competente a fare cosa;
- livello di diritto penale: a quale legge penale, di quale Stato, bisogna fare riferimento.
Tali difficoltà vengono ulteriormente amplificate quando l’attività antigiuridica viene realizzata per mezzo dei servizi c.d. “cloud based” (es. Social Network, Cloud Storage, ecc.) i quali sono fortemente caratterizzati da elementi come:
- ubiquità, specie da parte di client leggeri come quelli previsti per i dispositivi mobile (es. smartphone, tablet, ecc.). A riscontro basti pensare che, mentre la Polizia Giudiziaria sta attuando una perquisizione informatica in un account Google, ancorché in presenza della parte, un soggetto terzo potrebbe contemporaneamente accedere e modificare, se non cancellare del tutto, gli elementi di prova utili per le indagini vanificando/compromettendo l’esito della stessa;
- “depemetralizzazione” e condivisione delle risorse secondo un modello multitenant (letteralmente, “con più affittuari” – es. cartelle o file condivisi). In tale modello le risorse fisiche e virtuali sono assegnate e riassegnate dinamicamente ai consumatori, sulla base delle loro esigenze (es. un documento GDoc scritto e revisionato da più soggetti). C’è inoltre un’indipendenza dalla locazione, in cui si trovano di fatto i consumatori e chi gli fornisce il servizio (CSP – Cloud Service Provider) infatti questi, per quanto appreso, non hanno né il controllo né la conoscenza dell’ubicazione geografica delle risorse utilizzate. È tuttavia possibile che i CSP abbiano il controllo sulla locazione a un livello di astrazione più alto, ad esempio la nazione (spesso questo è necessario per motivi prevalentemente legislativi);
- ridondanza, come una risorsa complessa può essere distribuita in più datacenter, altrettanto la stessa può essere ripetuta più e più volte per bilanciare il carico di lavoro del CSP.
Accertamenti informatici in ambito aziendale
Le attività investigative che vedono coinvolti sistemi informatici e/o telematici possono essere svolti anche in ambito aziendale, il cui contesto operativo necessita di accorgimenti diversi dalla privata dimora.
Ricerca Informativa
Al fine di circoscrivere e dettagliare nella maniera più precisa possibile sia l’area fisica che virtuale della scena criminis, gli eventuali sospettati, nonché gli elementi di reato, si rende necessario dapprima assumere informazioni da chi ricopre il ruolo di “responsabile dei sistemi informativi”[12] circa “policy aziendali” in materia di:
- sicurezza fisica, relativamente, ad esempio:
- all’esistenza di apparati di videosorveglianza e rispettivo periodo di data retention[13];
- policy di accesso all’edificio (es. accesso tramite badge);
- eventuale gestione in outsourcing (società terze) per la manutenzione dei sistemi precedentemente elencati;
- sicurezza logica, relativamente, ad esempio:
- alla mappatura dell’infrastruttura di rete (subnet[14], assegnazione statica o dinamica degli IP[15], antivirus, firewall[16], IDS[17], DMZ[18] ecc.);
- regola di accesso al sistema telematico, ossia solo in locale (intranet) o anche da remoto (extranet);
- ai criteri di autenticazione (es. password, two step verification[19], strong authentication[20]) e rispettivi permessi (amministratore, operatore di sistema, ecc.) degli utenti accreditati al sistema informatico aziendale;
- presenza di sistemi di cifratura degli hard disk (es. BitLocket, File Vault, Volumi crittografici, ecc.) ed acquisizione delle rispettive passphrase;
- presenza di un CSIRT[21] ed eventuali ticket aperti nel periodo di interesse per le indagini;
- metodi di logging e rispettivo periodo di data retention[22] di ciascun sistema di sicurezza;
- eventuale gestione in outsourcing (società terze) per la manutenzione dei sistemi precedentemente elencati.
Tali dichiarazioni potranno trovare riscontro dalla consultazione del Documento di valutazione rischi, ovvero del Modello di organizzazione e gestione.
Le misure tecniche
Da un punto di vista meramente pratico, le misure tecniche da adottare sui dati, informazioni e programmi ritenuti di interesse per le indagini, potranno essere attuate seguendo le raccomandazioni fornite dall’ISO 27037:2012. Tale documento definisce sia chi sono i soggetti, che le tecniche di acquisizione che questi potranno adottare sulla scena del crimine aziendale nel pieno rispetto dei principi giuridici e requisiti investigativi riconosciuti su scala transnazionale.
In ambito internazionale vengono identificate le seguenti figure professionali, quali soggetti devoluti alla gestione delle fonti di prova digitali rinvenute sulla scena del crimine informatico:
- DEFR (Digital Evidence First Responder – ISO 27037:2012 Pt. 3.7), questi viene coinvolto nelle fasi di identificazione, repertamento e/o acquisizione e preservazione della fonte di prova digitale. Tale figura professionale non dovrebbe necessariamente svolgere un’attività di analisi.
- DES (Digital Evidence Specialist – ISO 27037:2012 Pt. 3.8), questi fornisce supporto tecnico al DEFR nelle fasi di identificazione, repertamento e/o acquisizione e preservazione delle fonti di prova digitale. Il DES deve essere caratterizzato da una formazione di tipo accademico e di comprovata esperienza nel settore tecnico-investigativo.
L’operato di tali soggetti deve avvenire nel rispetto dei seguenti principi e requisiti comuni alla maggior parte dei sistemi giurisdizionali internazionali:
- rilevanza/pertinenza (relevance): secondo cui bisogna dimostrare di aver acquisito e/o repertato solo elementi di pertinenza con il contesto d’indagine, avendo cura di motivarne le ragioni;
- affidabilità/attendibilità (reliability): secondo cui ogni processo che caratterizza la scena del crimine informatico dovrebbe essere verificabile e ripetibile. L’attuazione di tali processi dovrebbe garantire l’intera riproducibilità dell’attività tecnico-investigativa;
- sufficienza/proporzionalità (sufficiency): in cui il DEFR si assicura di avere a disposizione sufficiente materiale su cui svolgere le indagini;
- verificabilità (auditability): secondo cui dovrebbe essere possibile per una parte terza, autorizzata dall’A.G. (es. il Consulente Tecnico), poter accertare tutte le attività poste in essere sia dal DEFR che dal DES sulla scena del crimine informatico;
- ripetibilità (repeatability): secondo cui si producono gli stessi risultati con lo stesso test nello stesso ambiente;
- riproducibilità (riproducibility): secondo cui si producono gli stessi risultati con ambiente diverso, quindi anche tool diversi;
- giustificabilità (justifiability): secondo cui il DEFR dovrebbe essere in grado di poter giustificare la metodologia attuata per quel particolare contesto investigativo caratterizzato da vincoli giuridici, tecnologici e logistici, oltreché di competenze tecniche dello stesso operatore.
Ricostruzione degli eventi
La differenza sostanziale tra le indagini classiche e quelle in materia di criminalità informatica in Internet è l’ “aterritorialità”.
Tale vincolo solleva problemi a diversi livelli:
- territoriale: assenza di confini ben definiti;
- livello processuale: chi è competente a fare cosa;
- legislativo: Autorità Giudiziaria competente ad indagare o giudicare.
Tali elementi, uniti a vincoli di carattere tecnologico, ostacolano, se non rendendo impossibile, l’operazione di ricostruzione del percorso utilizzato dall’autore del reato, non consentendo così l’individuazione della postazione dalla quale è stato posto in essere il comportamento illecito.
A tale risultato potrà pervenirsi unicamente seguendo a ritroso il cammino dell’informazione illecita, dal destinatario ad un provider (sovente con sede all’estero), e da questi sino al client dell’autore del reato.
Nel caso in cui la postazione sia nella disponibilità di più soggetti, sarà necessario correlare l’attività tecnico-investigativa con gli elementi di prova[23] ricavati con modalità classica, al fine di dimostrare una disponibilità univoca del mezzo di un determinato lasso temporale.
Qualora bisognasse svolgere operazioni di analisi inerente un sistema di rete può essere conveniente, in prima approssimazione, suddividere le tematiche legate al Network Forensics in due classi, a seconda si tratti di live analysis o post mortem analysis, per una collocazione nell’ambito codicistico penale procedurale che separi, seppur in modo non esaustivo, lo stato pre – e post – discovery.
In ottica post mortem delle attività correlate all’utilizzo per fini criminali della rete, a contrario del contesto del mondo reale, si avranno a disposizione generalmente solo pochi ed incerti elementi:
- indirizzo IP[24] (dove IP sta per Internet Protocol) è l’elemento fondamentale che permette, all’interno di una rete di calcolatori, di individuare un nodo della rete stessa. Gli indirizzi IP sono utilizzati dal protocollo IP per gestire l’instradamento delle comunicazioni tra tutte le macchine connesse a Internet;
- i file di log, sul quale registrati gli eventi in ordine cronologico (consente di stabilire: un determinato utente in un particolare giorno ed ora si è collegato alla rete tramite un provider; data ed ora della sessione di navigazione; quale indirizzo IP temporaneo ha avuto in assegnazione per la durata della connessione; l’indirizzo IP utilizzato per la sessione di navigazione; quali informazioni ha inviato o ricevuto per mezzo dell’indirizzo IP assegnato; anagrafica dell’intestatario di un contratto di utenza Intenet);
- l’URL, l’Uniform Resource Locator, è una sequenza di caratteri che identifica univocamente l’indirizzo di una risorsa in Internet, come ad esempio un documento o un’immagine.
Risposta alle intrusioni
Nel caso in cui si è vittima di un accesso abusivo nella propria infrastruttura, di seguito vengono proposte le procedure di risposta alle intrusioni:
- analisi di tutte le informazioni disponibili che caratterizzano una intrusione:
- registrazione di tutte le informazioni che possono essere perse o non registrate durante una procedura di backup (connessioni di rete correnti, processi attivi o ibernati, utenti connessi, file aperti, informazioni volatili);
- backup dei sistemi compromessi: realizzare almeno due backup completi dei sistemi e dei dati utente identificati come compromessi, utilizzare supporti proteggibili via hardware o non riscrivibili;
- isolare i sistemi compromessi (trasferimento dei file di backup su un sistema di test isolato dai sistemi di produzione, restore dei sistemi compromessi sul sistema di test, analisi diretta da effettuarsi sul sistema di test);
- ricerca di tracce di intrusione su altri sistemi. Gli intrusori abitualmente creano più di un punto di accesso in una rete dove abbiano conquistato un accesso. Nel caso sia stata rilevata una intrusione sarà necessario controllare tutti gli altri sistemi simili al sistema violato;
- esame dei log file generati dai firewall, router, e network monitor. Gli attacchi spesso lasciano tracce che possono condurre all’individuazione dei sistemi;
- identificazione dell’attacco ad un sistema. Dopo aver conquistato l’accesso ad un sistema, l’intrusore può cercare di cancellare tutti i log file o alcuni specifici log entry, e quindi è possibile non trovare alcuna di queste utili informazioni. A volte la cancellazione dei log entry è rilevabile, in questo caso è la prova di una attività sospetta ed è necessario procedere ad analisi più approfondite;
- identificazione delle attività eseguite durante un attacco ad un sistema (analizzare in vari log file, come quegli specifici sistemi di Intrusion Detection);
- raccolta e conservazione delle informazioni associate ad un’intrusione:
- raccolta di tutte le informazioni relative ad un’intrusione. Raccogliere le informazioni ricavate dai log dei sistemi e delle reti degli ambienti compromessi, dai sistemi di intrusion detection, firewall, router ed altri strumenti. Raccogliere i backup completi e parziali, documentare le schermate dei sistemi con screen-shots, videoregistrazioni e fotografie;
- raccolta delle prove. Designare un responsabile per la raccolta delle prove e per il mantenimento dei contatti con l’Autorità Giudiziaria e con eventuali agenzie investigative private. Al fine di assicurare che le raccolte abbiano valore legale, le procedure di raccolta e conservazione delle stesse dovranno essere effettuate in accordo con la legislazione vigente;
- conservazione delle prove. Tutte le informazioni registrate elettronicamente saranno archiviate fuori linea e conservate in luogo fisicamente sicuro;
- eliminazione di tutti gli strumenti utilizzati per l’intrusione:
- modifica di tutte le password su tutti i sistemi ove sia stata riscontrata un’intrusione;
- reinstallazione completa dei sistemi compromessi. Nel caso in cui sia difficoltoso o troppo oneroso verificare i checksum crittografici del sistema compromesso si dovrà procedere alla reinstallazione integrale del sistema utilizzando i supporti di distribuzione originali o delle copie sicuramente conformi;
- rimozione di tutti i programmi utilizzati per realizzare l’intrusione e di tutte le modifiche determinate dall’intrusione;reinstallazione dei programmi eseguibili e dei file binari dai supporti di distribuzione originali;
- revisione delle configurazioni del sistema. Dovranno essere verificati i file di configurazione del sistema;
- determinare se sussistono vulnerabilità nel sistema e nella rete e correggerle;
- migliorare gli strumenti di protezione per limitare l’esposizione dei sistemi e della rete;
- ripristino dei sistemi alle condizioni di normale operatività:
- verifica dei requisiti e della tempistica per il ritorno alla normale operatività;
- ripristino dei dati utente da un backup affidabile;
- abilitazione dei sistemi e dei servizi;
- connessione dei sistemi ripristinati alla rete;
- azioni conclusive. A seguito di una intrusione e del successivo ripristino della normale operatività sarà utile effettuare una analisi complessiva delle implicazioni determinate dall’evento:
- valutazione dell’adeguatezza degli strumenti di protezione e individuazione delle violazioni dei sistemi;
- revisione dei piani di sicurezza, delle politiche e delle procedure;
- revisione delle direttive ad utenti ed amministratori dei sistemi volte a prevenire ulteriori violazioni;
- valutazione della necessità di una nuova analisi del rischio in base alla gravità degli effetti dell’intrusione;
- aggiornamento dell’inventario dei sistemi e dei loro assetti;
- partecipazione ad azioni investigative e legali.
Cap.5 La Verifica dello Stato dell’Arte in Azienda
Ricognizione della situazione
Sono 5 i fattori critici che devono essere tenuti in debita considerazione al fine di realizzare una strategia di cyber risk efficace.
Il 1° elemento: riuscire ad acquisire una visione globale del rischio:
- effettuare screening sistematici in ambito information security al fine di prefigurare i possibili scenari di minacce, identificare quali siano i target potenziali e verificare i livelli di protezione in tutte le funzioni ed aree aziendali;
- ripartizione completa delle informazioni protette, poiché ritenute critiche e potenziali bersagli;
- valutazione del rischio, a cui sono soggette le informazioni protette, dal punto di vista economico, che includa anche le misure di protezione.
Il 2° elemento: l’identificazione dei target potenziali ed il relativo impatto strategico per l’organizzazione, ciò significa ottenere:
- una chiara visione del possibile pericolo causato anche da elementi “periferici” dei target potenziali, (es. nuovi processi o servizi connessi … );
- un abbinamentoefficiente tra il probabile bersaglio e quelli imminenti ed attesi, nonché la loro valorizzazione economica e prioritizzazione per criterio di rischio e di potenziale impatto.
Il 3° elemento prevede lo sviluppo di un percorso di criticità relativamente agli scenari di rischio, ciò significa:
- utilizzare in modo mirato l’esperienza ed i dati storici aziendali per calcolare sulla base delle probabilità l’insorgenza del potenziale rischio;
- dare priorità alle minacce più significative, attraverso la rappresentazione di modelli e schemi di attacco creati su tipologie di minaccia analoghe.
Il 4° elemento definisce una strategia di “risk appetite” la quale prevede:
- la stesura di un’adeguata strategia di “risk appetite”, la quale deve risultare condivisa non solo con i vertici delle aree funzionali ma anche con la Corporate Strategy;
- la definizione di un’appropriata estensione di misure per la protezione delle informazioni incentratasui potenziali effetti, catalogati secondo criterio di probabilità ed impatto.
Il 5° evidenzia l’esigenza di aggregare le misure di sicurezza adottate per la protezione dei dati, prevedendo:
- creazione di un processo integrato di misure per la sicurezza delle informazioni che va ad abbracciare le differenti funzioni aziendali;
- aggregazione di un insieme di strategie di mitigazione del rischio a livello organizzativo, procedurale e di sistemi;
- attuazione di interventi mirati e processi di controllo relativi al governo delle terze parti (es. fornitori, personale esterno…).
Il Framework Nazionale
Il Framework Nazionale definito in questo capitolo si fonda sul “Framework for Improving Critical Infrastructure Cybersecurity”, sviluppato dal National Institute for Standards and Technology (NIST) statunitense.
Il cuore del Framework NIST è costituito da un insieme di 21 Category e 98 Subcategory, organizzate in 5 Function. Ogni Subcategory rappresenta un’area di raccomandazioni che l’organizzazione può decidere di implementare, se necessario riferendosi a standard o norme specifiche di settore. Il Framework NIST fornisce, per ogni Subcategory, i riferimenti agli standard e Framework esistenti: si tratta di una mappatura parziale, ma che comunque copre la quasi totalità dei riferimenti già adottati dalle organizzazioni internazionali, quali Standard NIST, Standard ISO/IEC e COBIT.
Il Framework Nazionale amplia questa struttura inserendo due nuovi concetti: i livelli di priorità e i livelli di maturità. Questi due concetti permettono di tenere conto della struttura economica del nostro Paese fatta di alcune decine di grandi aziende e infrastrutture critiche e di una galassia di piccole imprese, rendendo dunque, di fatto, il Framework adatto alle PMI, ma conservando tuttavia la sua iniziale vocazione per Grandi Imprese e infrastrutture critiche.
Framework Core, Profile e Implementation Tier
Il Framework Nazionale eredita le tre nozioni fondamentali del Framework NIST: Framework Core, Profile e Implementation Tier[25]:
- Framework Core. Il core rappresenta la struttura del ciclo di vita del processo di gestione della cyber security, sia dal punto di vista tecnico sia organizzativo. Il core è strutturato gerarchicamente in Function, Category e Subcategory. Le Function, concorrenti e continue, sono: Identify, Protect, Detect, Respond, Recover e costituiscono le principali tematiche da affrontare per operare una adeguata gestione del rischio cyber in modo strategico. Il Framework quindi definisce, per ogni Function, Category e Subcategory, le quali forniscono indicazioni in termini di specifiche risorse, processi e tecnologie da mettere in campo per gestire la singola Function.
- Identify, è legata alla comprensione del contesto aziendale, degli asset che supportano i processi critici di business e dei relativi rischi associati;
- Protect, è associata all’implementazione di quelle misure volte alla protezione dei processi di business e degli asset aziendali;
- Detect, è associata alla definizione e attuazione di attività appropriate per identificare tempestivamente incidenti di sicurezza informatica;
- Respond, è legata alla definizione e attuazione delle opportune attività per intervenire quando un incidente di sicurezza informatica sia stato rilevato;
- Recover, è associata alla definizione e attuazione delle attività per la gestione dei piani e delle attività per il ripristino dei processi e dei servizi impattati da un incidente.
- Profile rappresentano il risultato della selezione, da parte di un’organizzazione, di specifiche Subcategory del Framework;
- Implementation Tier forniscono contesto su come l’azienda, nel suo complesso, veda il rischio cyber e i processi posti in essere per gestirlo. Sono previsti quattro livelli di valutazione, dal più debole al più forte: (1) Parziale, (2) Informato, (3) Ripetibile, (4) Adattivo.
I livelli di priorità
I livelli di priorità permettono di supportare le organizzazioni e le aziende nell’identificazione preliminare delle Subcategory da implementare per ridurre maggiormente i livelli di rischio a cui sono sottoposte, bilanciandone l’impegno da profondere per la loro attuazione. Il Framework suggerisce l’utilizzo di una scala di priorità a tre livelli tra le Subcategory.
I livelli di maturità
I livelli di maturità permettono di fornire una misura della maturità di un processo di sicurezza, della maturità di attuazione di una tecnologia specifica o una misura della quantità di risorse adeguate impiegate per l’implementazione di una data Subcategory. I livelli di maturità forniscono un punto di riferimento in base al quale ogni organizzazione può valutare la propria implementazione delle Subcategory e fissare obiettivi e priorità per il loro miglioramento. I livelli devono essere in progressione, dal minore al maggiore. Ogni livello deve prevedere pratiche e controlli incrementali rispetto al livello di maturità inferiore
Pentration Testing
Nella “sicurezza informatica” è compreso anche il processo di prevenzione, ovvero quell’insieme di misure atte alla protezione di informazioni dall’accesso, dalla modica o dal furto da parte di “attività” non previste.
“Un penetration test, occasionalmente pen test, è un metodo per la valutazione della sicurezza di un sistema informatico o di una rete simulando un attacco da parte di attaccanti esterni (che non hanno di norma accesso ai sistemi informatici) e/o di attaccanti interni (che hanno un qualche livello di accesso autorizzato ai sistemi)”[26]
Auditor è colui che svolge tutte le attività di verifica operando con logiche medesime a quelle di un hacker. L’analisi intrapresa da un auditor comprende più fasi ed ha l’obiettivo di evidenziare in un report le debolezze rilevate nella piattaforma, fornendo il maggior numero di informazioni sulle vulnerabilità sfruttate per ottenere l’accesso non autorizzato.
L’auditor non si fermerà ad analizzare i soli sistemi informatici ma potrà sfruttare tecniche di ingegneria sociale per verificare eventuali carenze formative del personale aziendale di fronte a tentativi di intrusione; questa modalità definita Hidden Mode prevede l’accordo esclusivamente con il consiglio amministrativo dell’azienda che commissiona le verifiche lasciando all’oscuro tutto il personale, compreso il settore IT dell’azienda.
A livello metodologico il NIST descrive inoltre un concetto a cui spesso viene data poca importanza: il penetration test – per sua natura – è un processo iterativo e non ha un andamento lineare. Ogni volta che si hanno maggiori informazioni sul bersaglio queste vengono riutilizzate e si reitera su quanto già fatto. Non a caso Offensive Security[27] definisce il penetration test come “un ciclo continuo di ricerca e di attacco”.
E’ estremamente importante notare come la definizione si focalizzi sul metodo e non sullo strumento. Il penetration test non è un attività in cui lo strumento fa da padrone e non è un caso.
L’attacco ad un sistema si può suddividere in cinque fasi principali:
- Information Gathering; raccolta d’informazioni. Ha l’obbiettivo di raccogliere informazioni utili sul bersaglio come una lista di nomi di dominio, l’architettura della piattaforma, delimitazione di indirizzi IP, sistemi e porte attive, servizi offerti ed infine un elenco di nominativi ed e-mail utili in caso di attacco social engineering. I dati raccolti in questa fase permetteranno di scegliere la linea di attacco da seguire nel passo successivo;
- Vulnerability Assessment; ricerca di vulnerabilità. Un Vulnerability Assessment (VA) è un processo grazie al quale si identificano e quantificano le vulnerabilità di un sistema. Questa attività permette di avere una panoramica dello stato di sicurezza della infrastruttura tecnologica consentendo ad evidenziarne le potenziali vulnerabilità e ad implementare conseguentemente migliori politiche di sicurezza. Le informazioni elaborate in un vulnerability assessment, riportate in appositi report, consentono di delineare piani di analisi più mirati. Dato l’alto numero di nuove vulnerabilità che vengono scoperte ogni giorno è fondamentale svolgere un vulnerability assessment con la giusta frequenza al fine di assicurarsi che le configurazioni dei sistemi siano corrette e le opportune patch di sicurezza applicate
- Exploitation; Exploit delle vulnerabilità. La fase successiva di exploitation permette di ricercare all’interno di un software una vulnerabilità in grado di provocare un imprevisto nel sistema bersaglio dell’attacco. Con il termine exploit (la cui traduzione significa “sfruttare”) si identifica un pezzo di software o una sequenza di comandi che sfrutta un bug o una vulnerabilità per causare inaspettati comportamenti su un computer, sia per quanto riguarda lato software che hardware;
- Privilege Escalation; Scalata dei privilegi. Durante questa fase viene sfruttato l’accesso ricavato attraverso l’exploit per innalzare i propri privilegi; questo può avvenire sfruttando ulteriori vulnerabilità di sistema, sniffando pacchetti che transitano nella rete o semplicemente cercando di ottenere in chiaro le password di un utente amministratore. Possiamo distinguere due tipi di scalata:
- scalata verticale: quando si ottengono autorizzazioni o privilegi superiori a quelli normalmente avuti;
- scalata orizzontale: quando si ottiene l’accesso a risorse con gli stessi privilegi che normalmente concessi ma in un’area di competenza diversa;
- Reporting; infine l’attività di Pen Testing si conclude con la stesura di un Report dettagliato includendo tutte le vulnerabilità riscontrate, l’analisi dell’impatto di rischio ed eventualmente una possibile soluzione tecnica al problema.
Cap.6 Dinamiche di Reazione
Il reato informatico nella prassi giudiziaria: le linee guida internazionali per il contrasto ai nuovi fenomeni criminali
La Convenzione di Budapest per il contrasto al Cybercrime[28] ha adottato una tecnica di tipizzazione delle fattispecie incriminatrici che non riproduce pedissequamente i fenomeni criminali, riscontrati nella prassi giudiziaria ed investigativa delle attività di contrasto ma individua, secondo una tecnica di tipizzazione radicata nell’esperienza della codicistica italiana, una serie di fattispecie penalmente illecite caratterizzate dalle modalità della condotta, finalità perseguite ed evento realizzato. Di modo che, nella Convenzione e nelle norme che le hanno dato recepimento nell’ambito degli ordinamenti nazionali, non troveremo riscontro esplicito e diretto alle modalità specifiche attraverso le quali la criminalità concretamente opera: non troveremo cioè riferimenti a prassi criminali molto frequenti nell’esperienza quotidiana quali il phishing, il bombing, i botnet, lo spamming, in quanto si è ritenuto preferibile focalizzare l’attenzione sulle condotte criminali piuttosto che sulla tecnologia da questi utilizzata.
La scelta assunta dai compilatori della Convenzione ha l’innegabile pregio di fornire strumenti sanzionatori che, non essendo finalizzati a fotografare e qualificare giuridicamente le mutevoli fenomenologie dell’illecito cibernetico, non sono condannati a cadere in desuetudine e divenire inutilizzabili quando le tecniche di commissione degli illeciti dovessero mutare ed evolversi.
Offrono, quindi, strumenti di qualificazione giuridica sempre attuali. Al contempo, la tecnica di normazione prescelta, presenta il difetto di non consentire l’immediata riconduzione ad una unica fattispecie incriminatrice delle condotte illecite rilevate nella prassi.
Se da un lato l’operazione interpretativa finalizzata a qualificare giuridicamente le condotte criminali appare complessa e produttiva di risultati non sempre omogenei, l’esigenza sottesa alla Convenzione di Budapest è certamente quella di rendere omogenei i sistemi sanzionatori nazionali, al fine di facilitare la cooperazione giudiziaria, volta al contrasto di fenomeni criminali che presentano una eminente connotazione trans-nazionale. In questo ambito uno dei principi cardine della collaborazione internazionale è quello della reciprocità, ovvero il presupposto della comune qualificazione penale della condotta criminale da perseguire. Diventa quindi di centrale importanza che, non solo tutti i Paesi aderenti si dotino di un omogeneo sistema sanzionatorio ma che siano anche omogenei i canoni interpretativi che consentono di qualificare illecitamente le diverse condotte complesse nelle quali si estrinsecano le prassi criminali più ricorrenti. Propri alla standardizzazione dei canoni interpretativi tendono le linee guida adottate periodicamente dal Cybercrime Convention Committee (T-CY) istituito presso il Consiglio d’Europa in virtù dell’art. 46 della Convenzione e finalizzato a darle attuazione, ad arricchirne e potenziarne i contenuti, a favorire lo scambio di informazioni e di esperienze attuative tra gli Stati aderenti. In particolare le linee guida costituiscono l’espressione del comune intendimenti delle parti del trattato circa le modalità concrete di darvi attuazione, superando, attraverso una condivisa interpretazione delle sue norme (e delle norme di recepimento dei singoli stati) le ricadute negative che potrebbero verificarsi, sul piano della cooperazione giudiziaria, per effetto della differente interpretazione di ciò che sia o meno qualificabile come reato in base alla convenzione.
Sul piano del diritto nazionale le linee guida, pur non assumendo alcun valore normativo e tanto meno vincolante per l’interprete, offrono un valido strumento di ausilio nell’attività di interpretazione delle norme e di qualificazione giuridica dei fatti di reato, che presenta il pregio dell’uniformità ed il prestigio culturale proveniente, oltre che dall’elevata qualificazione tecnico giuridica della sua fonte, anche dall’attenzione e dalla completezza con le quali sono redatte.
Delitti informatici e trattamento illecito dei dati
Il Legislatore Italiano, spesso in adempimento di obblighi di cooperazione europea od internazionale, ha, nell’ultimo ventennio, introdotto nell’ordinamento diverse disposizioni aventi come oggetto la tutela dei “Sistemi Informatici o Telematici”.
Prima della legge n. 547 del 1993, nel nostro ordinamento non esisteva alcuna disposizione normativa specifica sui reati informatici. La legge 547/93 è intervenuta in quattro diverse direzioni, punendo le seguenti forme di aggressione:
- le aggressioni alla riservatezza dei dati e delle comunicazioni informatiche;
- le aggressioni all’integrità dei dati e dei sistemi informatici;
- le condotte in tema di falso, estese ai documenti informatici;
- le frodi informatiche.
In data 5 aprile 2008 è entrata in vigore la Legge n. 48, recante la ratifica ed esecuzione della Convenzione del Consiglio d’Europa sulla criminalità informatica.
Con tale norma il Legislatore ha apportato modifiche al codice penale in materia di reati informatici ed ha introdotto diverse disposizioni in relazione ai delitti informatici e al trattamento illecito dei dati.
Cap.7 Responsabilità dell’Azienda
La sicurezza delle informazioni nella legislazione italiana
Il legislatore italiano già da tempo si è preoccupato di dettare delle norme volte ad individuare alcune misure minime di sicurezza per tutti quei casi in cui la qualità delle informazioni contenute nei sistemi informatici di un’azienda renda opportuna e giuridicamente necessaria la loro protezione.
In particolare, la normativa italiana vigente – contenuta per poco tempo ancora nel D.Lgs. 196/2003 e comunemente denominata “Codice della privacy” – si applica esclusivamente al trattamento di dati personali. Essi sono definiti come “qualunque informazione relativa a persona fisica, identificata o identificabile, anche indirettamente, mediante riferimento a qualsiasi altra informazione, ivi compreso un numero di identificazione personale”.
Accanto alla definizione di dato personale e di dato identificativo, però, il legislatore ha espressamente previsto anche i concetti di dato sensibile e di dato giudiziario, protetti dalla normativa vigente in maniera ancora più stringente, dato l’alto valore delle informazioni in essi contenuto.
I dati sensibili, infatti, riguardano i dati personali idonei a rivelare l’origine razziale ed etnica, le convinzioni religiose, filosofiche o di altro genere, le opinioni politiche, l’adesione a partiti, sindacati, associazioni od organizzazioni a carattere religioso, filosofico, politico o sindacale, nonché i dati personali idonei a rivelare lo stato di salute e la vita sessuale di un soggetto.
I dati giudiziari, invece, sono i dati personali idonei a rivelare provvedimenti in materia di casellario giudiziale, di anagrafe delle sanzioni amministrative dipendenti da reato e dei relativi carichi pendenti, o la qualità di imputato o di indagato.
In merito alla loro protezione, l’art. 31 del Codice della privacy pone come regola generale quella secondo cui i dati personali oggetto di trattamento debbano essere “custoditi e controllati, anche in relazione alle conoscenze acquisite in base al progresso tecnico, alla natura dei dati e alle specifiche caratteristiche del trattamento, in modo da ridurre al minimo, mediante l’adozione di idonee e preventive misure di sicurezza, i rischi di distruzione o perdita, anche accidentale, dei dati stessi, di accesso non autorizzato o di trattamento non consentito o non conforme alle finalità della raccolta”.
Occorre evidenziare come il legislatore italiano preveda esplicitamente ed analiticamente solo le misure minime di sicurezza da applicare al trattamento dei dati, ovvero quelle dell’art. 34 e dell’Allegato B al Codice della privacy, lasciando invece indefinite le misure di sicurezza idonee previste dall’art. 31.
La non applicazione delle misure minime ha come conseguenza sanzioni di tipo penale, laddove la mancata predisposizione di misure di sicurezza idonee per lo specifico trattamento dei dati comporta l’applicazione delle sole sanzioni amministrative.
Le norme da prendere in considerazione, però, non si esauriscono con quanto finora accennato.
Il 25 maggio 2016, infatti, è entrato in vigore il “Regolamento europeo generale sulla protezione dei dati personali” n. 2016/679[29], che stabilisce norme relative alla protezione delle persone fisiche con riguardo al trattamento dei dati personali, nonché norme relative alla libera circolazione di tali dati.
Questo Regolamento diventerà definitivamente applicabile in ogni Stato membro dell’Unione Europea a partire dal 25 maggio 2018, abrogando la Direttiva 95/46/CE sinora vigente e andando a sostituire anche quanto attualmente previsto in Italia dal Codice della privacy.
In linea generale, tutto il Regolamento si poggia su due principi fondamentali, che ispirano l’intero costrutto normativo: il principio di privacy by design, che mira a proteggere ogni dato personale sin dal momento di determinare i mezzi o i processi utili al trattamento, oltre che ovviamente all’atto del trattamento stesso (attraverso, ad esempio, i “sotto-principi” di pseudonimizzazione[30] e minimizzazione dei dati trattati); e il principio di privacy by default, che mira a garantire che siano trattati, per impostazione predefinita, solo i dati personali necessari per ogni specifica finalità del trattamento e che va ad incidere, pertanto, sulla quantità dei dati personali raccolti, sulla portata del trattamento, nonché sul periodo di conservazione e sulla loro accessibilità.
Il Decreto Legislativo n. 231/2001
Il Decreto Legislativo n. 231 dal titolo “Disciplina della responsabilità amministrativa delle persone giuridiche, delle società e delle associazioni anche prive di personalità giuridica” [31], ha introdotto nell’ordinamento italiano un regime di responsabilità amministrativa (riferibile sostanzialmente alla responsabilità penale) a carico degli enti (da intendersi come Società, associazioni, consorzi, ecc., di seguito denominati “enti” e, singolarmente, “Ente”) per alcuni reati commessi, nell’interesse o a vantaggio degli stessi:
- da persone fisiche che rivestano funzioni di rappresentanza, di amministrazione o di direzione degli enti stessi o di una loro unità organizzativa dotata di autonomia finanziaria e funzionale, nonché da persone fisiche che esercitino, anche di fatto, la gestione e il controllo degli enti medesimi;
- da persone fisiche sottoposte alla direzione o alla vigilanza di uno dei soggetti sopra indicati.
Tale responsabilità si aggiunge a quella della persona fisica che ha realizzato materialmente il fatto.
Il D.Lgs. 231/01 prevede, all’art. 6, una forma specifica di esonero dalla responsabilità amministrativa (c.d. esimente) qualora l’Ente sia in grado di dimostrare:
- di aver adottato ed efficacemente attuato, prima della commissione di eventuali fatti illeciti, modelli di organizzazione e di gestione idonei a prevenire la commissione di reati della specie di quelli verificatisi;
- che il compito di vigilare sul funzionamento e l’osservanza dei Modelli nonché di curare il loro aggiornamento sia stato affidato a un organismo dell’Ente dotato di autonomi poteri di iniziativa e controllo (di seguito, “l’Organismo di Vigilanza” o “OdV”);
- che le persone che hanno commesso il reato abbiano agito eludendo fraudolentemente i suddetti modelli di organizzazione e gestione;
- che non vi sia stata omessa o insufficiente vigilanza da parte dell’Organismo di cui alla precedente lett. b).
Le circostanze appena elencate devono concorrere congiuntamente affinché la responsabilità dell’Ente possa essere esclusa.
Tipologie di reato previste dal D.Lgs. 231/01
Il Legislatore ha individuato diverse tipologie di reati che possono essere commessi da persone fisiche nell’interesse o a vantaggio della società, fino ad includere fattispecie anche non necessariamente tipiche dell’attività di impresa.
La responsabilità amministrativa dell’Ente, inoltre, sussiste anche se non sia stato identificato l’autore del reato, o se il reato si sia estinto per una causa che sia diversa dall’amnistia.
L’Autorità competente a contestare l’illecito all’Ente è il Pubblico Ministero, mentre è il giudice penale che ha la responsabilità e l’autorità per irrogare la sanzione.
L’Ente può essere chiamato a rispondere per un numero chiuso di reati, ovvero soltanto per i cd. “Reati Presupposto”[32] indicati negli artt. 24 e seguenti del Decreto, che appartengono alle categorie indicate di seguito:
- reati commessi nei rapporti con la P.A. (artt. 24 e 25);
- delitti informatici e trattamento illecito dei dati (art. 24-bis);
- delitti di criminalità organizzata (art. 24-ter);
- reati di falsità in monete, in carte di pubblico credito, in valori di bollo e in strumenti o segni di riconoscimento (art. 25-bis);
- delitti contro l’industria e il commercio (art. 25-bis.1);
- reati societari (art. 25-ter);
- delitti con finalità di terrorismo o di eversione dell’ordine democratico (art. 25-quater);
- pratiche di mutilazione degli organi genitali femminili (art.25-quater.1);
- delitti contro la personalità individuale (art. 25-quinquies);
- abusi di mercato (art. 25-sexies);
- omicidio colposo e lesioni colpose gravi o gravissime, commessi con violazione delle norme sulla tutela della salute e sicurezza sul lavoro (art. 25-septies);
- ricettazione, riciclaggio e impiego di denaro, beni o utilità di provenienza illecita (art. 25-octies);
- delitti in materia di violazione del diritto d’autore (art. 25-novies);
- induzione a non rendere dichiarazioni o a rendere dichiarazioni mendaci all’Autorità Giudiziaria (art. 25-novies);
- reati transnazionali (art. 10, L. 146/2006).
Criteri di imputazione della responsabilità all’Ente
l’Ente è punibile solamente nel caso in cui si verifichino determinate condizioni, definite come criteri di imputazione del reato all’Ente.
La prima condizione è che il reato sia stato commesso da un soggetto legato all’Ente da un rapporto qualificato: soggetti apicali, soggetti subordinati, collaboratori.
La seconda condizione è che il reato sia stato commesso nell’interesse o a vantaggio dell’Ente:
- “l’interesse” sussiste quando l’autore del reato ha agito con l’intento di favorire la società, indipendentemente dalla circostanza che poi tale obiettivo sia stato realmente conseguito;
- il “vantaggio” sussiste quando la società ha tratto, o avrebbe potuto trarre, dal reato un risultato positivo, economico o di altra natura.
Delitti informatici e trattamento illecito dei dati
La legge 18 marzo 2008, n. 48, “Ratifica ed esecuzione della Convenzione del Consiglio d’Europa sulla criminalità informatica, fatta a Budapest il 23 novembre 2001, e norme di adeguamento dell’ordinamento interno” ha ampliato le fattispecie di reato che possono generare la responsabilità della società. L’art. 7 del provvedimento, infatti, ha introdotto nel D.Lgs. 231/01 l’art. 24-bis per i reati di:
- accesso abusivo ad un sistema informatico o telematico (art. 615-ter c.p.);
- detenzione e diffusione abusiva di codici di accesso a sistemi informatici o telematici (art. 615-quater c.p.);
- diffusione di apparecchiature, dispositivi o programmi informatici diretti a danneggiare o interrompere un sistema informatico o telematico (art. 615-quinquies c.p.)
- intercettazione, impedimento o interruzione illecita di comunicazioni informatiche o telematiche (art. 617-quater c.p.);
- installazione di apparecchiature atte ad intercettare, impedire o interrompere comunicazioni informatiche o telematiche (art. 617-quinquies c.p.);
- danneggiamento di informazioni, dati e programmi informatici (art. 635-bis c.p.);
- danneggiamento di informazioni, dati e programmi informatici utilizzati dallo Stato o da altro ente pubblico o comunque di pubblica utilità (art. 635-ter c.p.);
- danneggiamento di sistemi informatici o telematici (art. 635-quater c.p.);
- danneggiamento di sistemi informatici o telematici di pubblica utilità (art. 635-quinquies c.p.).
- falsità in un documento informatico pubblico o avente efficacia probatoria (art. 491-bis c.p.);
- frode informatica del certificatore di firma elettronica (art. 640-quinquies c.p.).
Le sanzioni
Le sanzioni che il legislatore ha voluto collegare alla responsabilità penale e amministrativa delle persone giuridiche sono di varia natura a seconda della forma di commisurazione e dell’incidenza che le stesse hanno sullo svolgimento dell’attività di impresa. Esse possono essere suddivise come segue:
- sanzioni pecuniarie, è incentrata sul concetto di “quota” e viene applicata in un numero non inferiore a cento né superiore a mille;
- sanzioni interdittive, possono comportare conseguenze dirette sull’attività di impresa (nella sospensione o nella revoca delle autorizzazioni, licenze o concessioni funzionali alla commissione dell’illecito, nel divieto di contrattare con la Pubblica Amministrazione, esclusione da agevolazioni, finanziamenti);
- confisca del profitto del reato, con la sentenza di condanna, il Giudice dispone sempre la confisca del prezzo o del profitto del reato, ovvero di somme di denaro, beni o altre utilità di valore equivalente, salvo la parte che possa essere restituita al danneggiato;
- pubblicazione della sentenza, a seguito dell’applicazione di una sanzione interdittiva, il Giudice può disporre la pubblicazione della sentenza di condanna in uno o più giornali ovvero mediante affissione nel comune ove la società ha la sede principale, misura capace di recare un grave impatto sull’immagine dell’Ente.
Linee guida per la costruzione dei modelli di organizzazione, gestione e controllo
Il Decreto 231 prevede sanzioni per l’Ente che non si sia organizzato per evitare fenomeni criminosi in seno all’impresa, quando soggetti funzionalmente riferibili all’Ente abbiano commesso taluno dei reati indicati dallo stesso decreto.
Individuazione dei rischi e protocolli
L’art. 6, comma 2, del Decreto 231 indica le caratteristiche essenziali per la costruzione di un modello di organizzazione, gestione e controllo. In particolare, le lettere a) e b) della disposizione si riferiscono espressamente ad alcune attività correlate ad un processo di sana e prudente gestione dei rischi.
La procedura di identificazione e valutazione dei rischi deve essere applicata durante le seguenti fasi:
- fase iniziale d’implementazione del Modello Organizzativo 231 in conformità con il D.Lgs. 231/2001, in quanto costituisce la base per potere poi intervenire con la definizione di specifici protocolli/procedure atte a prevenire la commissione del reato ritenuto a rischio di realizzazione e comunque prima di ogni riesame del sistema al fine di garantire un aggiornamento sistematico della valutazione dei rischi;
- ogni qualvolta si verifichi una variazione di processo, di prodotto o del sito o contesto in cui l’Ente opera, quali ad esempio modifiche nel quadro legislativo di riferimento ovvero vi siano mutamenti nell’organizzazione o nell’oggetto sociale dell’Ente tali da richiedere una valutazione dei rischi connessi;
- ogni qualvolta, a fronte di valutazioni o attività di controllo (ad esempio da parte dell’ODV) si presenti la necessità/volontà di verificare l’efficacia del Modello.
Rischio = probabilità che sia raggiunta la soglia di commissione di un reato/illecito presupposto della responsabilità amministrativa ai sensi del D. lgs. 231/01.
L’organismo di vigilanza è la figura prevista dal Legislatore con il preciso compito di valutare l’adeguatezza ed efficacia del Modello, la sua applicazione da parte dell’Ente, nonché curarne l’aggiornamento.
I contenuti minimi di un Codice Etico
L’adozione di principi etici rilevanti ai fini della prevenzione dei reati ex D. Lgs. 231/2001 costituisce un elemento essenziale del sistema di controllo preventivo.
In termini generali, i codici etici (o codice di comportamento), sono documenti ufficiali dell’Ente che contengono l’insieme dei principi, dei diritti, dei doveri e delle responsabilità dell’Ente nei confronti dei “portatori d’interesse” (dipendenti, fornitori, clienti, Pubblica Amministrazione, azionisti, mercato finanziario, ecc.).
Mentre i protocolli di condotta implementati all’interno del modello organizzativo di gestione e controllo perseguono la finalità di prevenire la commissione di reati presupposto nell’interesse e a vantaggio di un ente da parte dei rispettivi destinatari, i codici etici mirano a raccomandare, promuovere o vietare determinati comportamenti, al di là ed indipendentemente da quanto previsto a livello normativo e quindi dalla rilevanza penale delle condotte.
Iter procedurale per l’elaborazione di un modello organizzativo di gestione e controllo ex d.Lgs 231/01
Non esiste una soluzione standard di elaborazione di un modello organizzativo di gestione e controllo ex D. Lgs. n. 231/01.
Il “decalogo 231”
Un riferimento per capire quali debbano essere le caratteristiche di un modello organizzativo 231 è l’ordinanza cautelare del Giudice per le indagini preliminari del Tribunale di Milano (dott.ssa Secchi) depositata il 9 novembre 2004, conosciuta anche come “decalogo 231”, in cui vengono delineate le dieci caratteristiche che un modello organizzativo deve avere per essere effettivamente considerato valido ai fini 231.
Modello Organizzativo per i reati informatici
L’art. 7 della legge 18 marzo 2008 n. 48, mediante l’inserimento nell’ambito del D. Lgs. 231/01 dell’art 24 bis sui delitti informatici e trattamento illecito dei dati, ha introdotto nuove fattispecie di reato che possono generare una responsabilità in capo alle aziende.
L’adozione di un “Modello di Organizzazione, Gestione e Controllo” ai sensi del D.Lgs 231/01 in grado di prevenire adeguatamente le differenti ipotesi di illecito introdotte con tale normativa, trova il proprio presupposto fondamentale nella volontà di gestire la propria rete informatica attraverso l’adozione di regole e procedure alla cui osservanza tutti i propri dipendenti sono chiamati.
A tale proposito, le aziende potrebbero adottare specifiche procedure e misure operative finalizzate a garantire una gestione ed un utilizzo lecito e sicuro del proprio sistema informatico.
A tale scopo le aziende dovrebbero appositamente designare un soggetto qualificato, al quale attribuire la funzione di Responsabile IT, con lo specifico incarico di gestire i sistemi informatici della rete, anche attraverso un costante monitoraggio avente ad oggetto un corretto e sicuro utilizzo dei medesimi.
Per ciò che specificamente attiene i controlli aziendali, l’Ente dovrebbe istituire la funzione Security Operations Center (SOC).
Cap.8 Le Conseguenze di un Attacco Cyber
I danni provocati da un attacco cyber all’interno di un computer privato o una rete aziendale possono risultare di natura ed entità completamente diverse: si va da un lieve aumento del traffico in uscita (nel caso in cui il computer sia stato infettato da un trojan preposto all’invio di messaggi di spam) al crollo completo del network aziendale, o alla perdita di dati sensibili di vitale importanza. In alcuni casi i risultati di un’infezione da malware possono essere impercettibili all’utente, altre volte possono avere conseguenze ben evidenti e di particolare gravità.
Le conseguenze potenziali di un evento cibernetico (accidentale o deliberato) posso essere ad esempio:
- interruzione dell’attività, computer e reti di sistemi inutilizzabili, guasti hardware;
- danno reputazionale/di immagine;
- diffusione di informazioni sensibili (clienti, pazienti, impiegati, fornitori);
- violazione informazioni finanziarie;
- violazione conti bancari;
- violazione proprietà intellettuale;
- perdita quote di mercato;
- appropriazione identità;
- azioni legali da terzi;
- frodi e social engineering.
Difronte alla moltitudine di danni causati da un attacco cyber è possibile tutelarsi con un’assicurazione
Cap.9 La Possibilità di Copertura Assicurativa del Rischio
Nel Report Clusit 2016, con un approfondimento dedicato allo strumento assicurativo a supporto della gestione del cosiddetto Cyber Risk, si sono date le indicazioni basilari su terminologia, aspetti chiave ed utilità delle polizze cyber.
È emerso che si può affidare la gestione del Cyber Risk e in particolare l’aspetto del trasferimento del rischio, alle Assicurazioni attraverso un tavolo collaborativo che ha nel CIO[33] e nel CFO[34], gli attori principali.
I cyber-danni
Avvalendoci della terminologia e delle definizioni tratte dalle polizze tradizionali, per calarci nel mondo dei danni cyber, si possono distinguere tre grandi famiglie di danni:
- danni materiali diretti, riguardano i danni (distruzione parziale o totale, furto) subiti da beni materiali (un server, la fibra ottica, i PC, un cellulare o altro device elettronico) e direttamente causati dall’evento che sarà normalmente di natura “analogica” o tradizionale (incendio, terremoto, fulmine, furto, atto maldestro o doloso, ecc.); per la loro natura essi rientrano già nella polizza Incendio, nella polizza Trasporti, nella polizza All Risks (che proprio “tutti i rischi” non copre …), e naturalmente nella Polizza storicamente definita “Elettronica”. I danni materiali e diretti possono anche non essere previsti nella Polizza Cyber, se si è provveduto alla corretta strutturazione delle coperture assicurative tradizionali;
- danni materiali indiretti (o consequenziali), si tratta ugualmente di danni a beni materiali, ma conseguenza di danni diretti: per esempio, un fenomeno elettrico che abbia danneggiato una scheda, il cui malfunzionamento danneggi a sua volta la macchina di produzione da essa controllata. I danni materiali indiretti possono rientrare sia nelle polizze tradizionali che nella Cyber, ma vanno esplicitamente inclusi;
- danni immateriali diretti e indiretti, sono tutti quelli che non riguardano la materialità delle cose assicurate e che sono conseguenzadi un evento garantito in polizza, anche di tipo Cyber. L’evento dannoso distrugge, compromette l’integrità di un software e/o l’insieme logico di informazioni – ovvero rende indisponibili i dati aziendali.
Il mercato degli assicuratori e metodologie di indennizzo
Il mercato assicurativo delle polizze cyber risks oggi è in rapida evoluzione e offre la possibilità di creare tutele ad hoc per il cliente. Tale personalizzazione offre un ottimo livello di aderenza al rischio cyber reale cui è esposta l’azienda, ma presuppone ovviamente un precedente processo di analisi e valutazione, così come descritto precedentemente. Tuttavia va tenuto presente che, ancorché in rapida evoluzione, il mercato assicurativo italiano si trova ancora in una fase embrionale. Ciò perché, come sempre in questo tipo di mercato, la risposta a un rischio si attua nel momento in cui tale rischio diviene conosciuto e valutabile. La situazione di novità riguarda però il solo mercato italiano in quanto, nei paesi dell’America settentrionale e anglosassoni, le problematiche afferenti i rischi cibernetici vengono affrontate da circa una decina d’anni. Delle circa 50 compagnie di assicurazioni operanti in Europa che specificamente si dichiarano pronte a sottoscrivere rischi cibernetici, soltanto un terzo opera direttamente in Italia, la restante parte opera fondamentalmente dal Regno Unito (a copertura di rischi italiani).
Guida all’implementazione di una copertura assicurativa cyber risk
Ai fini dell’implementazione di una copertura assicurativa cyber risk, sarebbe opportuno che l’azienda seguisse i seguenti 4 passaggi:
- coinvolgimento di un consulente assicurativo: il settore dei rischi cyber non è ancora maturo né ha standard di riferimento in ambito assicurativo, il coinvolgimento di uno o più consulenti specializzati nel trasferimento dei rischi al mercato assicurativo diventa fondamentale per il trasferimento delle specifiche necessarie agli assicuratori. Interpellare direttamente le compagnie assicurative potrebbe portare le stesse a fornire prodotti non rispondenti alle esigenze dell’assicurando;
- risk assessment: ai fini di isolare correttamente il massimo danno probabile e di stimare correttamente l’esposizione al rischio, sarebbe opportuno, prima di stipulare la polizza, effettuare un’analisi e quantificazione del rischio stesso;
- compilazione del questionario assicurativo: il questionario in ambito assicurativo ha lo scopo di raccogliere le informazioni base necessarie per una prima valutazione del rischio da parte degli assicuratori. La compilazione del questionario ha come risultato il fatto che possano essere apprezzate le varie ipotesi di limite di indennizzo che stanno alla base del contratto assicurativo e, parallelamente, fa prendere coscienza all’assicurando di quelli che sono i suoi punti di forza e di debolezza;
- implementazione della copertura assicurativa: una volta esaurito il processo di valutazione tramite questionario e/o tramite risk assessment strutturato, sarà possibile richiedere una quotazione formale al mercato assicurativo. Anche in questo caso l’apporto negoziale di un consulente specializzato è perlomeno consigliabile, in quanto la conoscenza del settore e la capacità negoziale di chi opera continuativamente nel settore permettono risultati più performanti rispetto a quelli ottenibili dal singolo cliente direttamente con gli assicuratori, oppure da un consulente non specializzato con gli assicuratori.
Cap.10 Protezione Cibernetica e Sicurezza Informativa
I trend di difesa: il contrasto a questo tipo di minacce dovrebbe basarsi su tre elementi chiave:
- il contrasto a più livelli della minaccia attraverso la comprensione delle sue modalità operative;
- la prevenzione attiva, grazie all’acquisizione di informazioni sui trend di attacco più probabili;
- l’adozione di una mentalità – e conseguentemente di un’organizzazione – che consideri sempre presente l’eventualità della violazione.
Di conseguenza, data l’enormità del suo ambito di applicazione, la Cyber Security in primo luogo non può che basarsi su logiche di prevenzione, riduzione e trasferimento del rischio e su processi di Risk Governance, applicati però ad un dominio caotico, dai confini e dalle dinamiche sempre cangianti, il quale pertanto va presidiato costantemente, 24×7, da personale qualificato dotato di metodologie di Risk Management e strumenti adeguati (p.es. tool di analisi comportamentale, big data analytics, intelligenza artificiale, ecc), capaci di operare in tempo reale.
In secondo luogo, per definire puntualmente la componente esogena del rischio, ovvero la probabilità che una minaccia esterna si realizzi, è necessario impiegare metodologie e strumenti di Cyber Intelligence capaci di osservare, tramite un monitoraggio continuo, l’esterno e l’interno con altrettanta attenzione, e di correlare i due domini. Anche in questo caso si tratta di sviluppare competenze sofisticate e di implementare processi nuovi, diversi rispetto alle prassi consolidate, considerando che oggi, nel migliore dei casi, le organizzazioni sono strutturate solo per osservare ciò che avviene nell’ambito di propri confini prestabiliti (i quali peraltro stanno ormai diventando sempre più porosi, a causa delle nuove tecnologie).
In terzo luogo è necessario definire e costantemente aggiornare il proprio modello di minaccia, ovvero individuare quale tra le diverse tipologie di attaccanti vorrà aggredire quale asset, perché, sfruttando quale vulnerabilità, con quali strumenti, atteggiamento, risorse ecc. Anche questa attività di Threat Modeling[35] non può che essere continuativa ed integrarsi opportunamente con i processi di Risk Management e Cyber Intelligence, per fornire al primo delle metriche precise ed aggiornate su cui ragionare, ed alla seconda indicazione in merito a quale ago cercare nel pagliaio del cyberspazio.
[1] Quadro Strategico Nazionale Per La Sicurezza Dello Spazio Cibernetico, Presidenza del Consiglio dei Ministri. Dicembre 2013.
[2] Il problema della Cyber Security e il Framework Nazionale. CIS-Sapienza http://www.cis.uniroma1.it
[3] International Organization for Standardization.
[4] Valutazione della minaccia di criminalità organizzata in Internet. https://www.europol.europa.eu/activities-services/main-reports/internet-organised-crime-threat-assessment-iocta-2016
[5] Una botnet è una rete controllata da un botmaster e composta da dispositivi infettati da malware specializzato, detti bot o zombie.[
[6] Ci si riferisce principalmente agli artt. 2, 3, 4, 5, 6, 7, 8 della convenzione ed alle corrispondenti norme incriminatici del codice penale nazionale.
[7] Il concetto di software on-premises, in contrapposizione al software come servizio (o Saas), si traduce in pratica nell’installazione ed esecuzione del software direttamente su macchina locale, sia essa aziendale che privata, intesa sia come singola postazione di lavoro che come server raggiungibile esclusivamente dall’interno della rete aziendale
[8] Più specificatamente, secondo la Corte di Cassazione (Sez. VI, n. 3067/1999; Sez. V, n. 31135/2007):
- “… deve ritenersi “sistema informatico”, … , un complesso di apparecchiature destinate a compiere una qualsiasi funzione utile all’uomo, attraverso l’utilizzazione (anche parziale) di tecnologie informatiche, che sono caratterizzate – per mezzo di un’attività di “codificazione” e “decodificazione”– dalla “registrazione” o “memorizzazione”, per mezzo di impulsi elettronici, su supporti adeguati, di “dati”, cioè di rappresentazioni elementari di un fatto, effettuata attraverso simboli (bit), in combinazione diverse, e dalla elaborazione automatica di tali dati, in modo da generare “informazioni”, costituite da un insieme più o meno vasto di dati organizzati secondo una logica che consenta loro di esprimere un particolare significato per l’utente …”;
- “… è “sistema telematico” l’insieme di più sistemi informatici collegati tra loro per lo scambio di informazioni, purché siano connessi in modo permanente, e purché lo scambio di informazioni sia il mezzo necessario per conseguire i fini operativi del sistema. …”.
[9] Cass, sez. VI, 14 ottobre 1999, in Foro it., 2000, II, 133.
[10] Il lettore attento avrà notato che non è stato utilizzato il termine “estero”.
[11] Secondo il NIST (http://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf) con il termine cloud è da intendersi “a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction”, che, tradotto in italiano, potrebbe essere inteso come “un modello di elaborazione, che abilita un accesso in rete, su richiesta, ubiquo e conveniente ad un insieme di risorse di calcolo (CPU, memorie di massa, reti, sistemi operativi, servizi e/o applicazioni) condivise e configurabili, le quali possono essere acquisite e rilasciate rapidamente ed in modo dinamico con uno sforzo di gestione minimo, o comunque con un’interazione minima con il fornitore del servizio”.
[12] È responsabile della gestione, manutenzione ed esercizio dei sistemi informativi dell’organizzazione all’interno della quale opera. Identifica esigenze organizzative e di gestione delle informazioni, pianifica e controlla progetti di miglioramento dei sistemi ICT, garantisce una buona operatività del sistema informativo nel rispetto dei requisiti di legge e di qualità validi nel contesto in oggetto.
[13] Con il provvedimento n. 1712680 del Garante per la Privacy in materia di videosorveglianza datato 8 aprile 2010, le immagini registrate possono essere conservate per periodo limitato e fino a un massimo di 24 ore, fatte salve speciali esigenze di ulteriore conservazione in relazione a indagini di Polizia e giudiziarie. Per attività particolarmente rischiose (ad esempio, banche, videosorveglianza esercitata dai Comuni per esigenze di sicurezza urbana ecc.) è ammesso un tempo più ampio, che non può superare comunque la settimana.
[14] In informatica e telecomunicazioni una sottorete, o subnet, è una parte della suddivisione di una singola rete IP (Internet Protocol). Tale suddivisione è realmente visibile solo dalla parte logica della rete, ciò vuol dire che la differenza tra una rete e una sottorete sta nel tipo di configurazione di rete che si dà al proprio computer. Il processo di subnetting è la divisione di una singola rete in gruppi di computer che hanno in comune nell’indirizzo IP un determinato prefisso di instradamento (routing).
[15] Un’associazione statica può essere utile al supermercato dei limiti di data retention.
[16] Un firewall è un componente di difesa perimetrale di una rete informatica, originariamente passivo, che può anche svolgere funzioni di collegamento tra due o più tronconi di rete, garantendo dunque una protezione in termini di sicurezza informatica della rete stessa.
[17] Un Intrusion Detection System è un dispositivo software e/o hardware utilizzato per identificare accessi non autorizzati ai computer o alle reti locali.
[18] Una DMZ (demilitarized zone) è un segmento isolato di LAN (una “subnet”) raggiungibile sia da reti interne sia esterne, ma caratterizzata dal fatto che gli host (o nodi) attestati sulla DMZ hanno possibilità limitate di connessione verso host specifici della rete interna.
[19] L’autenticazione a due fattori richiede, oltre alla conoscenza della username e password, anche un terzo codice, che potrebbe essere generato tramite un sistema OTP (one time password) tramite SMS o apposita APP.
[20] Il paradigma è basato su qualcosa che sappiamo (es. PIN), qualcosa che abbiamo (es. smart card), qualcosa che siamo (es. elemento biometrico).
[21] Un computer security incident response team (ISO 27035 pt.3.2) è un’unità organizzativa incaricata di raccogliere le segnalazioni di incidenti informatici e potenziali vulnerabilità nei software che provengono dalla comunità degli utenti.
[22] Con la locuzione inglese “data retention” ci si riferisce al periodo di conservazione di dati o documenti elettronici (generalmente dei file di log). A meno che oggetto di indagine non sia un fornitore di connettività (es. un Internet Service Provider), sia i soggetti fisici che giuridici hanno alcun vincolo di memorizzazione.
[23] Elemento di prova: l’informazione che si ricava dal mezzo di prova come dato grezzo, non ancora valutato dal giudice: v. art. 65 comma 1 c.p.p.
[24] Pubblico (statico e dinamico) e privato. NAT Network Address Translation, tecnica che consiste nel modificare gli indirizzi IP dei pacchetti in transito su un sistema che agisce da router.
[25] Livello di implementazione
[26] Così il CREST, http://www.crest-approved.org/, un organizzazione no-profit di base inglese per il supporto al mercato della sicurezza informatica definisce i penetration test.
[27] https://www.offensive-security.com
[28] La Convenzione sul Cyber Crime, firmata a Budapest il 23 novembre 2001 ed entrata in vigore l’1 luglio 2004, è stata ratificata dall’Italia con la legge 18 marzo 2008 n. 48 (GU n.80 del 4-4-2008 – Suppl. Ordinario n. 79 ) entrata in vigore il 5-4-2008.
[29] “Regolamento (UE) 2016/679 del Parlamento europeo e del Consiglio, del 27 aprile 2016, relativo alla protezione delle persone fisiche con riguardo al trattamento dei dati personali, nonché alla libera circolazione di tali dati e che abroga la direttiva 95/46/CE (regolamento generale sulla protezione dei dati)”, 2016, in http://eur-lex.europa.eu/legal-content/IT/TXT/?uri=CELEX%3A32016R0679.
[30] La pseudonimizzazione, ovvero il principio per cui le informazioni di profilazione debbano essere conservate in una forma che impedisce l’identificazione dell’utente. Le informazioni personali contengono elementi identificativi come nome, data di nascita, sesso e indirizzo. Quando le informazioni personali vengono pseudonimizzate, gli elementi identificativi sono sostituiti da uno pseudonimo, che si ottiene, per esempio, crittografando gli elementi identificativi contenuti nei dati personali. Il dato pseudonimo è diverso dal dato anonimo: i dati sono anonimizzati quando non contengono più alcun mezzo identificativo, mentre sono pseudonimizzati se i mezzi identificativi sono criptati.
[31] Il decreto 231 indica come destinatari “gli enti forniti di personalità giuridica, le società fornite di personalità giuridica e le società e le associazioni anche prive di personalità giuridica” (art. 1, comma 2). La disciplina, invece, non si applica “allo Stato, agli enti pubblici-territoriali, agli altri enti pubblici non economici nonché agli enti che svolgono funzioni di rilievo costituzionale” (art. 1, comma 3).
[32] Il reato presupposto è il delitto non colposo da cui provengono danaro, beni o altre utilità.
[33] Direttore informatico (Chief Information Officer, in sigla CIO) è il manager responsabile della funzione aziendale tecnologie dell’informazione e della comunicazione.
[34] Direttore finanziario (in sigla CFO – Chief Financial Officer) è il manager responsabile della gestione generale delle attività finanziarie di un’azienda. È una delle cariche più importanti all’interno dell’azienda.
[35] https://en.wikipedia.org/wiki/Threat_model