venerdì 29 ottobre 2021

Lo strano caso del GreenPass di Spongebob

Un paio di giorni fa, mentre stavo facendo colazione, mi arriva un messaggio sullo smartphone che dice “Buongiorno. Parrebbe che abbiano leakato le chiavi per creare i green pass…

Se confermato, significa che in teoria chiunque può produrre GreenPass validi”

La notizia ha attirato immediatamente la mia attenzione, facendomi istantaneamente affiorare un pensiero allarmante: se la notizia fosse vera, avremmo nullificato uno degli strumenti di controllo più importanti su cui si poggiano i piani post-pandemici di ripartenza economica, sociale, umana!

Un istante dopo, un secondo pensiero ancora più terrificante, sebbene composto da sole tre parole: in tutta Europa!

In mezzo al turbinio di processi ed interazioni che caratterizza le mie giornate, ho cercato di dedicare uno slot di attenzione all’evoluzione della notizia, che entro mezzogiorno da un paio di testate online su cui era apparsa si era trasferita al telegiornale nazionale.

La prova offerta era abbastanza tangibile: un QR Code che - se validato con la app ufficiale VerificaC19 - restituiva un green pass valido per… Adolf Hitler, con tanto di data di nascita 1900; data peraltro sbagliata, dal momento che il personaggio nacque in Austria nel 1889.

La problematica, al di là della goliardìa, restava molto grave: come era possibile che avessero trafugato delle chiavi crittografiche valide per la generazione dei GreenPass, che avrebbero dovuto essere gestite in modo assolutamente accurato da entità ministeriali o governative con processi dominati da una sicurezza ai massimi livelli?

Le notizie fittizie, le ipotesi, persino alcune promesse chiaramente improbabili finalizzate forse ad abbassare il livello di allarme si sono rincorse per tutta la giornata, iniziando a combinarsi con un’eco dall’estero dove la problematica appariva su siti noti come ad esempio bleepingcomputer.com.

Anche questi siti parlavano di probabile furto o comunque esfiltrazione di chiavi private, rendendo la cosa ulteriormente preoccupante a causa di alcuni rumors che ipotizzavano che le chiavi trafugate riguardassero diversi Stati Membri dell’Unione Europea.

Il tam tam della notizia si è ulteriormente diffuso, insieme (fortunatamente) alla reazione dei gestori che hanno provveduto a invalidare sia il Green Pass valido a nome di Hitler che alcuni improbabili altri generati nel frattempo, come ad esempio quello di Spongebob Squarepants che riporto di seguito, con relativa prova dell’invalidazione:


Il 28 sera la rubrica “Ciao Internet” di Matteo Flora sul canale YouTube ha offerto una spiegazione più plausibile e - francamente - più tranquillizzante da un certo punto di vista: qualcuno ha trovato il modo di abusare delle chiavi.

Più nello specifico, l’abuso sembra essere avvenuto tramite il codice dgca-issuance-web - facilmente reperibile perché condiviso sul sito GitHub dall’Unione Europea - unito a una chiave di firma valida in possesso di un utente.

Il codice in questione rappresenta il programma utile a generare i GreenPass, che sono in tutto e per tutto paragonati a certificati cartacei di avvenuta vaccinazione, di avvenuto tampone oppure di avvenuta guarigione, trasposti in forma digitale.

Analogamente a quanto avviene per i certificati cartacei, i certificati digitali per assumere valore devono essere firmati. Il processo di firma, non potendo utilizzare una penna, utilizza una chiave digitale privata che viene combinata con una chiave digitale pubblica inserita nel certificato. Questa chiave digitale pubblica è l’oggetto di verifica che permette di confermare l’originalità del certificato.

La cosa alquanto improbabile, quindi, è l’utilizzo di una chiave privata valida - dal momento che le chiavi di firma sono date in ragione di una per nazione.

A peggiorare le cose il fatto che alcune nazioni, tra cui l’Italia, non possono invalidare soltanto alcuni certificati firmati con la chiave nazionale… ma dovrebbero invalidare la chiave; operazione che richiederebbe la riemissione dei milioni di GreenPass veri, ufficiali e validi emessi finora; costringendo i titolari a richiederne una copia tramite i noti canali tradizionali: sito online, farmacie, ecc.

La faccenda è evoluta verso una ulteriore spiegazione valida verso le 13:40 del 28 ottobre. Secondo il sito Il Disinformatico infatti, sono stati individuati almeno sei punti di accesso validi a portali in grado di generare GreenPass validi in modalità Anteprima utilizzando dati fittizi che non vengono poi salvati.

Salvando quell’immagine, che rappresenta un certificato valido, è possibile generare i certificati che sono apparsi sul web con proprietari improbabili. Dopo il salvataggio dell’immagine, l’operazione può essere tranquillamente cancellata senza lasciare traccia alcuna dell’avvenuta generazione; di un certificato che resta - comunque - valido.

Quanto sta avvenendo quindi sembra il frutto di una importante, enorme per portata e dimensione, vulnerabilità di processo.

Che combinata con un fattore umano di dubbia liceità ha creato le condizioni per annullare potenzialmente uno dei processi più riusciti per risollevarci dagli effetti devastanti della pandemia.

Nessun furto di chiavi quindi, almeno allo stato in cui le cose sono evolute finora.

Soltanto una pessima igiene digitale nell’implementazione di un processo informatico.

Fatto, questo, che dovrebbe farci riflettere su un aspetto che spesso accomuna molti incidenti informatici, tra cui quello di cui stiamo parlando.

La tecnologia utilizzata per generare i GreenPass è sicuramente solida: combina infatti certificati digitali, visualizzazione di informazioni tramite QR Code che rende il tutto fruibile in modo semplice, uniformità di accettazione ed interoperabilità di implementazione tra più Stati.

La falla, la parte vulnerabile in modo importante, riguarda più il processo di implementazione e la messa in opera. Qui di tecnologico c’è ben poco, perché il tema riguarda la gestione e la messa in sicurezza di un processo.

Da quanto rilevato finora, è evidente che sono stati commessi errori gravi proprio in questa fase.

Un esempio è permettere la generazione di un anteprima del certificato valida a tutti gli effetti, senza fare in modo - ad esempio - che l’anteprima fosse controllabile solo da un’applicazione diversa da quella che avrebbe controllato la versione finale.

Un altro esempio riguarda la gestione della riservatezza.

Se l’emissione di un GreenPass è pertinenza di un organo governativo ufficiale ed afferma una verità incontrovertibile - al pari di un Notaio che certifica un atto di compravendita immobiliare tra due soggetti - avrebbe dovuto essere ristretta ad operatori tracciati, autorizzati, i cui privilegi dovrebbero essere concessi proprio a fronte di un’abilitazione specifica.

Senza contare che qualsiasi applicazione, prima di essere messa in produzione, dovrebbe essere provata a validata proprio da esperti di sicurezza chiamati Penetration Tester. Questi hanno l’obiettivo di studiare le potenziali falle dell’applicazione, ma anche del modo di utilizzarla… e del potenziale modo di abusarne.

Se tutti questi passaggi fossero stati eseguiti preventivamente e rimediati a regola d’arte in caso di falle, oggi non ci troveremmo a fronteggiare un incidente.

Cosa più importante, non dovremmo neppure sostenere i costi della risposta a questo incidente, che rischiano di essere davvero devastanti in termini sicuramente economici ma anche di credibilità di uno strumento di supporto alla ripresa economica e sociale davvero fondamentale.


Marco Rottigni

Nessun commento:

Posta un commento