Il sito web 18app.italia.it, utilizzabile dai neo-maggiorenni per generare buoni da spendere in cultura, era vulnerabile e presentava lacune di sicurezza talmente gravi da consentire la generazione di un numero virtualmente illimitato di “buoni sconto”.
Non solo. Un qualunque utente di 18app.italia.it avrebbe potuto eliminare i buoni altrui richiesti precedentemente e leggere i dati personali degli altri utenti.
Autore della scoperta è un diciottenne, anche lui fruitore del servizio (questa la pagina in cui è stato documentato, per sommi capi, il problema di sicurezza) che, una volta accertate le falle, ha deciso di contattare CERT Nazionale e Sogei, società controllata dal Ministero dell’economia e delle finanze che ha realizzato l’applicazione web 18app.italia.it.
Le “leggerezze” individuate sono davvero colossali. Sì, perché generando un buono sconto di qualunque entità, l’applicazione 18app.italia.it produceva una richiesta in formato JSON contenente dati quali l’identificativo del beneficiario, l’anno di riferimento, la categoria dello “sconto” richiesto, la sottocategoria del servizio e l’importo del buono.
La richiesta JSON era esposta in chiaro al richiedente e poteva essere agilmente recuperata intercettando le comunicazioni tra client (browser) e server (e viceversa).
L’aspetto più grave è che modificando arbitrariamente il contenuto della richiesta JSON era possibile generare buoni utilizzando account altrui, semplicemente modificando l’ID del beneficiario. Tale identificativo è un semplice codice numerico generato in maniera sequenziale: alterandolo era possibile produrre buoni sconto “addebitando” l’operazione sugli account di altri utenti registrati su 18app.italia.it.
Non solo. Analizzando la risposta fornita dal server, era possibile accedere ai dati personali del beneficiario (codice fiscale, data di nascita, indirizzo di residenza, email, numero di cellulare e molte altre informazioni personali).
Come se non bastasse, inviando una semplice richiesta GET, era possibile annullare liberamente qualunque buono prodotto da altri utenti. Dal momento che anche i buoni vengono generati usando un identificativo progressivo, con un unico comando – ripetuto iterativamente – sarebbe stato possibile eliminare l’intero database dei buoni di 18app.italia.it.
Vi era poi la possibilità, mediante codice fiscale, di risalire ad altri dati personali degli utenti registrati al servizio.
Le vulnerabilità, scoperte il 14 novembre scorso, sono state da poco risolte e l’autore della ricerca – che ha responsabilmente segnalato il problema in forma privata – è stato autorizzato a divulgare i dettagli dell’incidente.