Perché la sicurezza informatica non è una questione di bianco e nero

La “responsible disclosure” – tra hacker etici e non

di Giovanni Bajo e Gianluca Varisco

This post is available also in English

Illustrazione a cura di Alessandro Canu

Partiamo con questo post da un tema non facile da trattare, ma che è anche quello che ci sta più a cuore di tutti e che si è guadagnato il primo posto nel nostro manifesto (e se non l’avete ancora letto, potete ripescarlo nel primo post di Diego Piacentini sul Team per la Trasformazione Digitale):

Sicurezza e privacy sono i principi più importanti; mai, per nessuna ragione, scenderemo a compromessi

Ma tanto per iniziare, che cosa si intende per sicurezza nel mondo dei siti o dei software?

Sicurezza nel mondo del software

Negli ultimi anni, sentiamo spesso parlare di account rubati, password rivelate, carte di credito a rischio. Non esiste software che si possa considerare “sicuro”.

La sicurezza non riguarda dicotomie, non si misura in bianco e nero, ma si rivaluta sempre in ogni istante: un software che si considera sicuro oggi, potrebbe rivelarsi improvvisamente inadeguato, nel caso in cui qualcuno vi trovasse una vulnerabilità. Per questo esistono solo livelli di sicurezza, e quello di un software dipende da molteplici fattori come la tipologia dell’attaccante o il budget a sua disposizione.

Proviamo a pensare al software come una casa da proteggere. Un sistema di sicurezza potrebbe essere quello di utilizzare una porta blindata per difenderla e, certo, magari risulterebbe sicura contro un ladro armato di grimaldello. Ma che cosa potrebbe succedere contro un ladro munito di strumenti sofisticati o che possa addirittura entrare in casa vostra dalla finestra?

Identificare e risolvere problemi di sicurezza in qualunque software è dunque una pratica ordinaria e comune. In maniera più o meno consapevole, quando installate gli aggiornamenti del vostro browser o del vostro smartphone state risolvendo uno o più problemi di sicurezza. Questi aggiornamenti sono essenziali per rendere i nostri software resilienti ad attacchi informatici, senza i quali un attaccante potrebbe accedere ad importanti dati personali come password, email, SMS.

È per questo che le aziende stesse, sempre più spesso, rendono pubblici i dettagli relativi ai bug di sicurezza che vengono risolti in ogni successivo rilascio dei propri prodotti. Queste aziende non solo non nascondono tali bug, ma ne incentivano una “disclosure” responsabile da parte delle comunità dei cosiddetti “ethical hacker” (hacker “buoni”, white hat hacker, hacker etici). Quando questi programmi sono a pagamento, sono noti come “bug bounty”, e incentivano gli ethical hacker a inviare in modo privato le loro segnalazioni sui bug di sicurezza identificati in un software.

È come se la vostra banca offrisse un premio a chiunque riesca a intrufolarsi nel caveau, ma senza rubare nulla e raccontando poi come ci è riuscito.

È molto meglio, e sicuramente conveniente, premiare un ethical hacker per il suo lavoro, migliorando la sicurezza del proprio software, piuttosto che infilare la testa sotto la sabbia e aspettare che “black hat hacker” (gli hacker “cattivi”) scoprano gli stessi problemi e li usino indebitamente per arrecare danno.

18app e un buon esempio di responsible disclosure

Qualche settimana fa un ethical hacker diciottenne, Luca Milano, ha segnalato alcuni importanti problemi di sicurezza presenti in 18app, il software che gestisce il bonus cultura di 500 euro assegnato ai nati nel 1998. Luca è stato rigoroso, corretto e professionale; seguendo tutte le buone pratiche di cui parlavamo, prima di pubblicare la notizia ha segnalato le vulnerabilità tramite responsible disclosure, inviandone cioè comunicazione al CERT competente, l’organizzazione incaricata di raccogliere le segnalazioni di incidenti informatici e potenziali vulnerabilità nei software provenienti dalla comunità degli utenti.

Sogei, la società del Ministero dell’Economia che ha sviluppato 18app, ha risolto in poche ore il problema e messo online una versione corretta. Non possiamo che fare i complimenti al CERT Nazionale, al CERT-PA, e a Sogei per avere agito così tempestivamente e con tanta efficienza, nonché ringraziare Luca per il lavoro svolto. Per avere maggiori dettagli, potete leggere l’articolo sul suo blog tecnico, pubblicato dopo la risoluzione dei problemi.

Un esempio virtuoso oltreoceano: Hack the Pentagon

La scorsa primavera, il Dipartimento della Difesa americano ha lanciato un esperimento chiamato “Hack the Pentagon”: un vero bug bounty su alcuni siti governativi, della durata di circa 30 giorni, durante i quali 1.400 hacker hanno inviato numerose segnalazioni, aiutando a risolvere ben 138 diversi problemi di sicurezza, per un totale di 75.000 dollari pagati in ricompense. Si pensi a quanto più sicuri oggi sono questi siti e di conseguenza i cittadini americani che li utilizzano, con un budget tutto sommato modesto per la pubblica amministrazione in questione.

Oltre al beneficio concreto ottenuto, il programma è servito anche a confermare la tesi che esistesse una comunità di hacker etici disposti a collaborare con il governo per migliorare la sicurezza della nazione. Citiamo qui di seguito due dichiarazioni di esponenti governativi americani, rilasciate al termine del programma.

Sapevamo già che personaggi incaricati da governi stranieri e hacker “cattivi” volessero attaccare e violare le nostre reti. Quello che non avevamo realizzato appieno prima di questo esperimento era quanto fossero numerosi gli hacker “buoni” che vogliono fare la differenza, aiutando a rendere i nostri cittadini e la nostra nazione più sicuri. Ashton B. Carter – Segretario alla Difesa, USA Ciò che l’iniziativa “Hack the Pentagon” ha confermato è che esiste un gran numero di tecnici e innovatori che vogliono contribuire alla sicurezza della nazione, ma il quadro giuridico odierno impedisce loro di farlo. Eric Fanning – Segretario dell’Esercito, USA

Apprendiamo, inoltre, con piacere che il Parlamento Europeo ha appena varato e finanziato (il 1° Dicembre scorso) un programma per migliorare la cybersecurity.

Un programma nazionale di responsible disclosure

Come Team Digitale, crediamo fermamente nella responsible disclosure come strumento principe per comunicare con la comunità di ethical hacker italiana e internazionale, perché la posta in palio è la privacy e la sicurezza di tutti noi e dei nostri dati personali. Riteniamo anche che sia giusto ricompensare chi, identificando un problema, lo comunica in modo tempestivo e privato, rimandandone la diffusione solo a quando il problema è stato risolto.

Un programma di responsible disclosure ha anche l’obiettivo di agevolare la rapida risoluzione dei problemi di sicurezza e minimizzare i rischi per la cittadinanza. La tempestività nel risolvere le falle risulta cruciale per ridurre la finestra temporale in cui i nostri software sono esposti agli attaccanti.

È per questo motivo che abbiamo intrapreso un percorso con il CERT Nazionale e il CERT-PA per definire e pubblicare una policy di responsible disclosure nazionale; stiamo contemporaneamente indagando lo scenario tecnico e normativo (inclusa la protezione legale di chi fa la disclosure) per verificare i presupposti per il lancio del programma. Valuteremo anche l’opportunità di sperimentare una forma di bug bounty.

Non tocca a noi riscrivere le leggi in materia, ma ci confronteremo con le istituzioni competenti per individuare il miglior assetto normativo possibile nell’interesse di tutti e con il Garante per la Privacy per essere certi che la privacy dei cittadini sia sempre protetta.

E non vogliamo farlo da soli: condivideremo le bozze di policy per poterne discutere con i soggetti interessati.

Ringraziamo tutti gli esperti di sicurezza, blogger e giornalisti tecnici che hanno, in modo costruttivo, suggerito soluzioni dai loro blog e dalle loro testate.

Continueremo ad aggiornarvi su questo canale.