Disclaimer: nessun complotto né speculazione sui ruoli dei vari personaggi saranno presenti in questo post. Al contrario, fatti, analisi e considerazioni facilmente verificabili saranno protagonisti.
Un ringraziamento a Fabrizio Carimati per aver ricostruito brillantemente la cronologia degli eventi. Di hacking a piattaforme web se ne vedono continuamente e non conta l’importanza del proprietario: dal Partito Democratico americano fino agli account personali di Elisabetta Canalis, quasi tutti sono a tiro degli hacker e hanno avuto questo tipo di inconvenienti.
Quello che rende diverso da tutti gli altri l’hacking subito dalla piattaforma digitale Rousseau – il “sistema operativo” del Movimento 5 Stelle – è la peculiare concomitanza di incapacità tecnologica, sperimentazioni di democrazia diretta e – permettetemi – cialtroneria. Infatti nessuno rimarrebbe, purtroppo, scandalizzato dalla scarsa sicurezza messa in campo da un sito internet di un partito politico, non lo facciamo neanche per servizi online molto più importanti. Ma dal partito “digitale per eccellenza” che vuole promuovere il più possibile la democrazia diretta (almeno tra i suoi elettori) spingendo i sostenitori iscritti a votazioni su testi di legge e candidature per ogni tipo di elezioni, ci si aspetta sicuramente uno standard elevato. Cosa pensereste se il sito web su cui si è nominato chi sarebbe poi arrivato a essere Vice-Presidente della Camera fosse vulnerabile al più semplice degli attacchi? Si va ben oltre la pubblicazione indiscriminata di tutti i dati personali degli iscritti – che comporta già di per sé enormi responsabilità. Si tratta di un fallimento totale ed evidente anche per i più assidui sostenitori della democrazia diretta via web. Vediamo di far luce il più possibile su questa storia, cominciando da prima dell’inizio.
Responsible disclosure: come fare l’hacker buono
Nell’intricata vicenda che avuto luogo fondamentalmente il 2 e il 3 agosto scorsi, ci sono due attori principali, oltre al movimento di Grillo: Evariste Gal0is, il buono, e r0gue_0, il cattivo. Questi ultimi sono i due hacker che erano a conoscenza delle vulnerabilità della piattaforma grillina. O meglio: sono gli unici due che al 3 agosto hanno confermato l’esistenza di enormi falle nel sistema. Infatti è tecnicamente impossibile sapere se negli anni ci siano stati altri soggetti abusivi, quanti siano stati e cosa abbiano fatto.
Da aprile 2016 ad oggi, qualsiasi persona con una conoscenza base delle tecniche più semplici e vecchie di hacking può aver interferito con il funzionamento di Rousseau. Ma perché ad agosto abbiamo scoperto tutto questo? Per spiegarlo, riprendiamo la categorizzazione degli hacker che abbiamo già menzionato più e più volte di white hats e black hats: i primi, i bianchi, sono i buoni. Sono esperti e non hackerano per soldi o per gloria, sono spinti dalla curiosità e dalle sfide tecnologiche, non fanno danni e, soprattutto, contribuiscono a rendere il web un posto più sicuro. Come? Scovando le falle, di progettazione e implementazione, di siti internet, piattaforme, linguaggi e altri prodotti, informando i rispettivi proprietari/autori e, una volta che la soluzione è presente sul mercato, pubblicando la loro scoperta. Questo modo di agire è definito responsible disclosure (letteralmente, rivelazione responsabile) ed è un punto cardinale dell’hacking etico. L’iter è sempre lo stesso, anche se di volta in volta possono cambiare i tempi: una volta che una vulnerabilità viene scoperta, l’hacker si mette in contatto con l’autore del software e li informa di quanto trovato. Allo stesso tempo, gli dà un termine entro il quale dovrà provvedere alla correzione del problema e, se necessario, al rilascio di un aggiornamento che lo risolva. Solo dopo questo rilascio – o a seguito dello scadere del termine senza alcuna attività dell’autore – la vulnerabilità viene pubblicata in uno dei tanti portali specificatamente predisposti. In questo modo il software viene reso più sicuro, all’hacker viene riconosciuto il credito per la scoperta e nessun danno viene causato, soprattutto agli utenti finali. Scenario differente invece per il “lato oscuro”: nel momento in cui un black hat scova una vulnerabilità, prende possesso del sistema e cerca di trarne profitto nel migliore dei modi: può ricattare il proprietario, chiedendo un riscatto per la disclosure della vulnerabilità; può mettere in vendita tutti i dati estratti, sia direttamente a privati come concorrenti del proprietario del sito web, sia al mercato nero al miglior offerente (questo il caso di r0gue_0); oppure, può silenziosamente rimanere nascosto come amministratore abusivo della piattaforma, plausibilmente per anni, senza che nessuno se ne accorga e dirottandone il funzionamento come più gli conviene. Quest’ultimo è il rischio più grande che solleva più dubbi nella vicenda di Rousseau.
Cosa è successo con Rousseau (in brevissimo)
Per una descrizione approfondita e una timeline esaustiva vi rimando al post di Fabrizio Carimati. Qui cerco di riassumere gli eventi principali e dare qualche delucidazione tecnica per i meno appassionati di web.
Il 2 agosto, Evariste Gal0is pubblica un tweet in cui annuncia di aver riscontrato una vulnerabilità sulla piattaforma Rousseau e fornisce maggiori spiegazioni su un piccolo blog creato ad hoc: L’esperto di sicurezza spiega di aver trovato varie vulnerabilità di tipo SQL Injection (lo spiegone arriva in un paio di righe) e di aver già comunicato agli amministratori del sito questa situazione preoccupante, tramite tweet e un messaggio in un forum apposito. Secondo quanto raccontato a La Stampa dallo stesso hacker in un’intervista, gli sviluppatori della Casaleggio avevano messo una toppa alla vulnerabilità segnalata e chiesto conferma del buon lavoro. Evariste ovviamente non ha potuto che confermare l’alta inaffidabilità di Rousseau. Per capire perché, è necessario l’atteso spiegone. Ogni piattaforma web è fondamentalmente composta da due componenti essenziali: il codice delle pagine web (il motore) che viene eseguito o interpretato dal server e un database che conserva tutti i dati che le pagine elaborano, inseriscono, leggono o eliminano. Questi database (che sono nient’altro che un insieme di tabelle correlate tra loro – es: la tabella degli utenti, delle votazioni, delle donazioni…) hanno un linguaggio di programmazione specifico per interagire. In questo caso, come in molti altri, si tratta di SQL: sia gli umani, attraverso un terminale, che le pagine web e il server, comunicano scrivendo query (interrogazioni) del tipo “inserisci questi dati”, “cerca questi dati”, “elimina questi dati”, etc. Il tipo di vulnerabilità riscontrata in Rousseau – SQL Injection – è molto antica (fine anni ’90) quanto semplice: grazie esclusivamente a errori di programmazione, l’attaccante riesce a far eseguire al database, senza necessità di autenticazione e da remoto, qualsiasi comando, senza alcun controllo. Due sono i punti fondamentali di questo tipo di vulnerabilità: Anche se non si ha diretto accesso al codice, tramite il database di un’applicazione si può arrivare dappertutto. Per esempio, si possono ottenere nome utente e password dell’amministratore per entrare nella piattaforma e operare da lì, così come mille altre possibilità. Se si scopre una vulnerabilità di questo tipo su una piattaforma, al 99% ci saranno altri punti di ingresso. Su un sito web interattivo infatti ci sono tantissimi punti in cui vengono effettuate chiamate al database e altrettante occasioni per iniettare codice malevolo. Per questo quando gli amministratori di Rousseau hanno chiesto a Evariste se il sito fosse stato sicuro, la risposta non poteva essere che negativa: mettere una pezza in un punto è inutile e, al contrario, dimostra che gli sviluppatori non hanno le competenze per rendersi conto della gravità del problema.
Prima di parlare della reazione del Movimento 5 Stelle – che è altrettanto grave – bisogna menzionare il secondo attore, il cattivo r0gue_0. La sera del 3 agosto, afferma su Twitter di essere già amministratore abusivo della piattaforma Rousseau da tempo e pubblica due screenshot di tabelle a dimostrazione del lasso temporale. Era lì dentro da mesi e particolarmente infastidito (per non dire tremendamente incazzato) dal fatto che Evariste Gal0is, denunciando la vulnerabilità, lo avesse di fatto smascherato. r0gue__0 probabilmente avrebbe preferito rimanere nell’ombra e continuare ad avere accesso indiscriminato alla piattaforma. Per questo i suoi tweet sono pieni di insulti per il white hat (così tanti che qualcuno sospetta che si tratti di una strategia della stessa persona per attuare una vendetta contro Grillo & co. – ipotesi smentita dallo stesso in un’intervista concessa a David Puente). Allo stesso momento, il “cattivo” mette in vendita tutti i dati estratti dal database di Casaleggio per una cifra che si aggira intorno ai $1000 in Bitcoin.
Cosa ci si doveva aspettare dal Movimento 5 Stelle
Premessa: in questo post userò i nomi M5S, Grillo, Associazione Rousseau e Casaleggio Associati per indicare il proprietario e gestore della piattaforma, dal momento che, come spiegato in questo post, si tratta pressoché della stessa figura. Detto questo, ricordiamo che stiamo parlando della forza politica che da sempre si dice più vicina al mondo digitale, promuove la partecipazione diretta degli iscritti alle decisioni più importanti attraverso la piattaforma web e i cui vertici si fanno foto con Assange. Prima di tutto, ci si aspetterebbe sicurezza: una delle tante obiezioni che viene mossa a chi propone (qualsiasi misura di) democrazia diretta è che garantire la sicurezza e trasparenza del voto su Internet è impresa a dir poco eccezionale. Considerando che anche le reti più sicure vengono compromesse, creare una piattaforma di voto online è l’incubo di ogni sviluppatore. E invece, la sicurezza della piattaforma era notevolmente inferiore persino a un qualsiasi blog aperto con WordPress (che per la cronaca, nella sua versione attuale, non presenta vulnerabilità di tipo SQL Injection). Non è facile spiegare ai non esperti quanto sia banale e grave la falla scovata in Rousseau: probabilmente la metafora di un portone spalancato e telecamere di sicurezza spente renderebbe abbastanza l’idea. Fatto sta che, quello che possiamo dedurre, a livello teorico è: non sappiamo se r0gue_0 sia stato il solo ad accedere illegalmente a Rousseau in questi anni; non sappiamo se r0gue_0 (o chiunque altro) abbia modificato e alterato i contenuti e i risultati della piattaforma; teoricamente, visto che neanche alla Casaleggio sanno spiegarsi quando tutto ciò sia successo (“Purtroppo non sono stati colti in flagrante”, vale a dire: non abbiamo idea da quanto fossero lì dentro, fonte). Il fallimento è ampio e clamoroso. Ma non finisce qui. La reazione dei grillini è quasi peggiore della falla: Sono già state messe in atto tutte le azioni necessarie per impedire il ripetersi di intrusioni informatiche come questa.
L’attacco non è avvenuto durante votazioni. Valuteremo l’azione legale da intraprendere nei confronti dell’hacker, il cui attacco è assolutamente da condannare, anziché osannare come fanno i giornali. In ogni caso il suo sito è già scomparso così come i suoi account social, segno che le contromisure contro questi reati funzionano e siamo lieti che siano state così tempestive (fonte) Insomma, gli stesso sostenitori di Assange e WikiLeaks annunciano azioni legali contro il white hat che ha fatto una responsible disclosure e li ha aiutati a scoprire gli enormi problemi di sicurezza legati alla loro piattaforma. Oltre al fatto che, nella stessa dichiarazione, prendono altre due cantonate: – “L’attacco non è avvenuto durante votazioni”: non ne hanno idea in realtà, e comunque non c’entra nulla; – “In ogni caso il suo sito è già scomparso così come i suoi account social, segno che le contromisure contro questi reati funzionano e siamo lieti che siano state così tempestive”: falso anche questo. Evariste ha solo deciso di uscire per un momento dalla tormenta di m**** che lo ha colpito per aver fatto una cosa giusta. Se solo avessero agito coerentemente a quelli che dichiarano di essere i propri valori, sarebbe andata così: avuta la prima segnalazione privata di Evariste Gal0is, avrebbero corretto i problemi, sospeso per breve termine i servizi online se necessario e, dopo l’aggiornamento, pubblicato un report sulla possibile violazione di sicurezza. Come è andata lo sappiamo, invece.
Responsabilità per la Beppe Grillo
Della sicurezza e trasparenza delle operazioni di voto, Grillo risponderà direttamente ai suoi iscritti, che a questo punto dovrebbero avere almeno qualche dubbio sulla (enorme) incapacità tecnica della loro struttura. Al contrario, Giuseppe Grillo e la Casaleggio Associati s.r.l. dovranno rispondere per l’enorme violazione delle norme a tutela dei dati personali. Come spiegato anche da David Puente, la società milanese e il comico genovese sono rispettivamente responsabili e titolari del trattamento dei dati personali e sottoposti agli obblighi del nostro codice per la tutela della privacy (D.lgs. 196/2003) che fortunatamente prevede sanzioni, anche penali, per la violazione delle misure minime di sicurezza nella gestione delle informazioni. Aspetteremo ora il dovuto intervento del Garante per la Privacy che dovrà stabilire se una violazione c’è stata e quale sia la sanzione più adeguata. Alla fine di questa triste storia, abbiamo assistito al naufragio tecnologico e ideologico di chi si è da sempre (auto) definito il partito della Rete.