Perché la Posta ha bisogno di un programma bug bounty

Questa settimana la Posta ha lanciato il suo programma bug bounty pubblico. Il responsabile, Sandro Nafzger, spiega perché sono bastate poche ore per capire che non è possibile fare a meno della collaborazione con hacker etici, ma ciononostante lo sviluppo del programma ha richiesto ben due anni.

Sandro Nafzger
Blog
Head of Bug Bounty Sandro Nafzger

Sezione Rich Content

Quando abbiamo avuto il coraggio di provare semplicemente a collaborare con hacker etici, è stato subito chiaro: non si può rinunciare a un programma bug bounty! Il budget del progetto non è bastato per sei settimane, come previsto, bensì per sole quattro ore. Anche questo è stato un segnale positivo. Ma andiamo con ordine...

Nella primavera del 2019, per la prima volta la Posta ha eseguito un test pubblico di intrusione e pubblicato il codice sorgente per il sistema di voto elettronico allora in uso, suscitando un acceso dibattito, soprattutto sui media. Tutto ciò potrebbe far pensare che, con questo approccio basato sullo scrutinio pubblico, la Posta si sia tirata la zappa sui piedi e in futuro si terrà alla larga da simili procedure. E invece no. Questo esempio, infatti, lo dimostra: il metodo ha funzionato ed è stato possibile individuare e colmare lacune critiche. Così il sistema interessato e l’organizzazione che gli ruota attorno possono essere ulteriormente migliorati.

Ci siamo dunque chiesti se non valesse la pena avviare una collaborazione con una community globale di esperti di sicurezza informatica nell’ambito di un programma bug bounty anche per la Posta nel suo insieme. Il nostro istinto ci diceva che si trattava di una buona idea, ma avevamo fatto un’unica esperienza con il voto elettronico e disponevamo di un know-how relativamente limitato. Dopo aver consultato il CISO Posta, abbiamo quindi avviato uno studio di tre mesi in un team interdisciplinare composto da tre esperti di sicurezza, un responsabile di progetto, un avvocato e un esperto di comunicazione. Abbiamo esaminato il tema bug bounty da ogni punto di vista e siamo giunti alla conclusione che sarebbe potuto essere importante per la Posta, che i vantaggi erano considerevoli e i costi sostenibili e che avevamo trovato una soluzione pragmatica in termini di fattibilità. Per verificare la validità di questa ipotesi teorica, Information Security Posta ha quindi deciso di eseguire un proof of concept di sei settimane.

Lunedì 21 ottobre alle 11.00 siamo partiti dando il via al nostro primo programma bug bounty privato. Inizialmente abbiamo consentito soltanto a cinque hacker etici di «violare» una decina di sistemi informatici selezionati al fine di individuarne le falle di sicurezza. Ebbene, in meno di un’ora ci è stata comunicata la presenza della prima lacuna di sicurezza altamente critica. E non era la sola, anzi. Ma com’era possibile? Avevamo testato solo servizi online ben consolidati e regolarmente sottoposti a verifiche di sicurezza con metodi tradizionali.

Per l’intero proof of concept della durata di sei settimane avevamo previsto un importo complessivo pari a 25’000 franchi per il versamento delle ricompense. Alle 15.00, ovvero appena quattro ore dopo l’avvio del test che sarebbe dovuto durare sei settimane, avevamo già esaurito il budget. Un problema? Niente affatto: ci siamo subito resi conto che questo nuovo metodo di test è ancora più potente e importante di quanto avessimo immaginato e rappresentava quindi una grande opportunità per la Posta. Poiché le informazioni ottenute già dopo poche ore erano così preziose, il CISO ha aumentato il nostro budget e il test è proseguito per un totale di cinque settimane. In particolare abbiamo potuto testare anche l’interazione tra hacker e sviluppatori e sviluppatrici riscontrando che, grazie a questa nuova collaborazione, è possibile rimuovere in tempi brevi le falle individuate e che, soprattutto, c’è stato da subito feeling tra i due diversi gruppi. Nell’ambito del test sono state individuate e risolte 130 criticità da banali a critiche con una ricompensa versata di circa CHF 150’000.–.

Sono quindi bastate poche ore per capire che un programma di questo tipo serviva davvero. In un programma bug bounty si individuano infatti lacune critiche nella sicurezza precedentemente sfuggite a tutti gli altri metodi di test. In più, tutto avviene con grande efficienza.

Ora si trattava di trovare il modo di introdurre gradualmente e consolidare a livello di gruppo questo nuovo metodo dirompente senza metterci da soli di fronte a sfide più grandi di noi. Una cosa infatti era chiara: con un programma bug bounty senza limitazioni, nel giro di pochi giorni avremmo individuato centinaia di nuove falle e sovraccaricato totalmente la nostra organizzazione, una situazione che volevamo evitare. È così è nato il nostro modello di scalabilità bug bounty.

Il primo passo per ogni servizio online: l’incubatore

Il nostro modello di scalabilità consiste in tre livelli di maturità che possono essere raggiunti da un servizio online. Quando un’applicazione viene aggiunta al nostro programma bug bounty, parte sempre da un «Custom Incubator», ossia un programma bug bounty di durata limitata in cui sono attivi da cinque a 50 hacker etici con ricompense relativamente basse. Già nel giro di un paio d’ore e giorni vengono così scoperti e notificati i problemi di sicurezza più importanti. In questo modo emerge non solo il grado di maturità in termini di sicurezza del prodotto o del servizio testato, ma anche l’agilità e la prontezza dell’organizzazione e del team responsabili del suo sviluppo. 

In seguito a un «Custom Incubator» si presentano due scenari. Idealmente, il sistema testato può essere trasferito direttamente nel programma permanente «Private Main», anch’esso privato. Qui ciò che conta non è tanto il numero di falle individuate, quanto il modo in cui il team responsabile le gestisce. Per certi team è normale ricevere quotidianamente nuovi input, definire le relative priorità sulla base di regole chiare ed eliminare le falle in sprint regolari. Per altri invece questo metodo di lavoro agile risulta ancora impegnativo. In genere, dopo un «Custom Incubator» questi team necessitano di una pausa per organizzarsi meglio internamente ed eliminare eventuali lacune individuate.

Con il «Private Main», da maggio 2020 la Posta gestisce un programma bug bounty permanente e privato, nel quale ulteriori servizi online vengono aggiunti costantemente e testati in modo intensivo da diverse centinaia di hacker etici, per poi essere trasferiti nel programma bug bounty «Public Main». Quest’ultimo è stato appena lanciato ed è disponibile per tutti i 23’000 hacker iscritti.

Questo modello di procedura a tre livelli ci ha consentito si sviluppare e consolidare passo dopo passo la maturità necessaria per la gestione dei programmi bug bounty al fine di portare avanti un programma a livello di gruppo, con grande soddisfazione di tutti i partecipanti.

È questo il presupposto per migliorare costantemente la maggior parte dei prodotti digitali della Posta – un paio di centinaia di sistemi IT – con il programma bug bounty. 

Riassumendo possiamo dire che la collaborazione con hacker etici richiede coraggio, ma lo sforzo è abbondantemente ripagato poiché si ottengono quasi ogni giorno nuove informazioni e possibilità di miglioramento. Ciò genera una cultura dell’apprendimento positiva e agile di cui beneficia l’intera organizzazione. Il programma bug bounty perfetto non esiste, ma avendo iniziato in piccolo e sostenendone costantemente lo sviluppo, siamo sulla buona strada.

scritto da

Sandro Nafzger

Responsabile del programma bug bounty

Con il bug bounty della Posta verso la «digital trust»

Innovazione e tecnologia, Blog
Maggiori informazioni
Un informatico al lavoro.

«Finché non raggiungiamo un equilibrio nella diversità, dobbiamo agire in modo proattivo»

Gente, Blog
Maggiori informazioni
A sinistra Laetitia Henriot Arsever, responsabile Technology Management, Informatica e a destra Linda de Winter, responsabile Development, Informatica.