L’app di verifica dell’età lanciata dall’Unione Europea per proteggere i minori online è finita nel mirino di esperti di sicurezza informatica e hacker etici, che ne hanno segnalato una serie di vulnerabilità potenzialmente gravi. A sollevare per primo le critiche è stato il consulente americano Paul Moore, aprendo un dibattito che ha rapidamente coinvolto ricercatori, parlamentari europei e la stessa Commissione UE.
Indice degli argomenti
L’app UE per la verifica dell’età sotto attacco: le critiche di Paul Moore
Non accenda a placarsi il dibattito intorno all’app di verifica dell’età (age verification) adottata dall’Unione Europea. A dare la stura alle critiche è stato Paul Moore, consulente per la sicurezza americano, che a poche ore dal lancio ha cominciato a pubblicare su X una serie di post, tra i quali un video, coi quali ha messo in evidenza diverse criticità.
“Un panopticon mascherato da protezione dei bambini”: l’accusa al cuore dell’app
La sua posizione ferocemente sfavorevole è efficacemente riassumibile nella risposta che ha dato ad un altro utente di X che lo aveva contestato affermando che “si tratta solo di bug, ed è un’ottima iniziativa che sia open-source. Perché criticare un’iniziativa che alla fine si è rivelata valida?”. Moore ha risposto di non essere d’accordo sul giudizio positivo: “È un panopticon (addirittura la postazione simbolo della sorveglianza ideata da Jeremy Bentham, n.d.r.) mascherato da protezione dei bambini”.
L’esperto riprende poi la dichiarazione entusiasta della presidente della Commissione UE, Ursula von der Leyen, secondo la quale l’app “è tecnicamente pronta e rispetta i più elevati standard di privacy al mondo. È open-source, quindi chiunque può controllare il codice”. Moore asserisce proprio di aver controllato il codice, e che non c’è voluto molto per trovare un grave problema di privacy. Ciò in quanto l’app fa di tutto per proteggere i dati di verifica dell’età dopo la raccolta, crittografando “is_over_18: true” con AES-GCM (Advanced Encryption Standard in Galois/Counter Mode) crittografia simmetrica che garantisce riservatezza, integrità e autenticità dei dati.
La crittografia AES-GCM: cosa funziona (e cosa no)
L’AEAD (Authenticated Encryption with Associated Data), ha le seguenti proprietà:
- Segretezza: non si conosce nulla del testo non crittografato, tranne la sua lunghezza.
- Autenticità: è impossibile modificare il testo non crittografato, sottostante a quello crittografato, senza che ciò venga rilevato.
- Simmetria: la crittografia del testo non crittografato e la decrittografia di quello crittografato vengono eseguite con la stessa chiave.
- Randomizzazione: due messaggi con lo stesso testo non crittografato producono testi crittografati diversi, quindi eventuali aggressori non possono sapere quale testo cifrato corrisponde a un determinato testo non crittografato.
La combinazione tra la crittografia a blocchi AES, la modalità counter e l’autenticazione GMAC, rende il procedimento estremamente veloce e sicuro. Da questo punto di vista, quindi, tutto bene.
Il problema dei dati biometrici non cancellati
Il problema è che tuttavia, secondo Moore, l’immagine sorgente, utilizzata per raccogliere dati, viene scritta su disco senza crittografia e non viene eliminata correttamente. Per i dati biometrici, NFC (near-field communication, comunicazione di prossimità, tecnologia di ricetrasmissione contactless bidirezionale a distanza fino a un massimo di 10 cm), preleva DG2 (dati biometrici- immagine facciale) e scrive un PNG (Portable Network Graphics, formato di file utilizzato per memorizzare immagini) senza perdita di dati sul file system.
Ma esso viene eliminato solo nel caso in cui la procedura abbia successo. In caso contrario (se l’utente torna indietro, la scansione fallisce e riprova, l’app si blocca), l’immagine biometrica completa rimane sul dispositivo nella cache. Questa è protetta con chiavi CE a livello Android, ma l’app non fa alcun tentativo per crittografarla/proteggerla. Per le foto selfie lo scenario è diverso. Queste immagini vengono scritte nella memoria esterna in formato PNG senza perdita di dati, ma non vengono mai eliminate.
Non si tratta di una cache, bensì di una memoria a lungo termine. Questi dati sono protetti con chiavi DE a livello Android, ma, abbiamo visto, l’app non tenta di crittografarli/proteggerli. È come scattare una foto del documento di riconoscimento con la fotocamera e conservarla per ogni evenienza. Si possono crittografare i dati estratti fino allo sfinimento, ma lasciare l’immagine originale sul disco è assurdo e inutile.
GDPR e dati biometrici: chi ha ragione?
Dal punto di vista del GDPR i dati biometrici raccolti sono dati sensibili. Se non esiste una base giuridica per conservarli dopo l’elaborazione, si tratta potenzialmente di una violazione sostanziale. Obiezione: secondo il GDPR, nessun dato viene “raccolto” se non lascia mai il dispositivo; se si scatta una foto e la si invia su WhatsApp, essa rimane nel rullino fotografico e non c’è alcuna violazione.
Ma, secondo Paul Moore, il GDPR non si limita a regolamentare i dati raccolti, ma in generale il trattamento dei dati personali, indipendentemente da dove siano archiviati. Altra obiezione: i dati vengono elaborati localmente, e quindi non vengono conservati dall’organizzazione, in questo caso senza base giuridica, ma dall’utente sul proprio dispositivo, ed è quindi sua responsabilità proteggerli. In sostanza, le immagini non lasciano mai il dispositivo, non venendo trasmesse, archiviate o conservate. Non vi è perciò alcuna violazione del GDPR, perché le immagini, acquisite dalla app, vengono memorizzate sul dispositivo dell’utente. Ma per Paul Moore “è una violazione conservare i dati dopo l’elaborazione senza una base giuridica e senza consenso/conoscenza dell’utente. Il regolamento è molto chiaro su questo punto”.
PIN, vault e rate limiting: le altre falle di sicurezza
Paul Moore ha sperimentato il funzionamento dell’app. Durante la configurazione, essa chiede di creare un PIN. Dopo l’inserimento, l’app lo crittografa e lo salva nella directory shared_prefs (in Android, una cartella specifica dello storage interno di un’applicazione, utilizzata per memorizzare i file XML salvati tra una sessione e l’altra, privati e accessibili solo dall’applicazione stessa, non leggibili e/o modificabili da altre app). Secondo Moore:
1. Il PIN non dovrebbe essere crittografato affatto: il design è quindi scadente.
2. Non è crittograficamente collegato al vault (area protetta in OneDrive in cui è possibile archiviare i file e le foto più importanti o sensibili mantenendo un accesso ovunque) che contiene i dati di identità. Quindi, un hacker può rimuovere i valori PinEnc/PinIV dal file shared_prefs e riavviare l’app. Dopo aver scelto un PIN diverso, l’app presenta le credenziali create con il vecchio profilo e permette a chi vuole accedere di presentarle come valide.
Altri problemi
- Il rate limiting (limitazione della velocità, per controllare la quantità di traffico inviato o ricevuto, che garantisce che le risorse non siano sovraccaricate da richieste eccessive e previene potenziali attacchi come il Denial of Service) è un numero incrementale nello stesso file di configurazione. Basta reimpostarlo a 0 e continuare a provare.
- “UseBiometricAuth” (autenticazione biometrica, verifica l’identità di un utente utilizzando le sue caratteristiche biologiche uniche, come impronte digitali, voce, retina e tratti del viso. I sistemi di autenticazione biometrica memorizzano queste informazioni per verificare l’identità di un utente quando quest’ultimo accede al proprio account) è un valore booleano (tipo di dato i cui unici due valori tipicamente sono indicati con “true” e “false”, oppure come 1 e 0) anch’esso nello stesso file. Impostandolo su “false”, salta semplicemente questo passaggio.
Verifica digitale vs. controllo in negozio: un confronto impossibile
I funzionari UE hanno assimilato il sistema di verifica dell’età lanciato a quello in uso nella realtà quando si devono acquistare alcolici o tabacco. Moore smonta il parallelo: “Quando un negoziante chiede un documento d’identità, accadono quattro cose contemporaneamente: il negoziante vede il volto della persona, lo confronta con la foto sul documento, conferma la data di nascita e consegna il prodotto alla stessa persona. È anche altamente improbabile che ne conservi una copia o la diffonda.
La verifica e il consumo sono legati dalla presenza fisica. Con l’app AV: non c’è un negoziante in carne e ossa. Non c’è contatto visivo con il consumatore. Non c’è un documento d’identità personale da verificare. La “prova” dell’età può provenire da qualsiasi fonte e non c’è assolutamente modo per il “negoziante” di accorgersi che non è vera”. E qui si affaccia una criticità ulteriore. Le Big Tech, secondo la presidente della Commissione UE, “non hanno più scuse” dopo il lancio dell’app per l’age verification. Ciò potrebbe indurle a considerare il problema risolto e a non investire in una protezione realmente utile, dato che hanno a disposizione una solida argomentazione legale a sostegno di questa posizione. Si limiteranno a citare la prova crittografica, supportata da enti governativi e attestata dall’hardware, basata sul principio della “zero-knowledge proof” (prova a conoscenza zero).
Torniamo al mondo reale e all’accostamento tra le due situazioni, reale e digitale, viste in precedenza. Un bambino di 10 anni entra in un negozio di alcolici. Il negoziante può vedere chiaramente che si tratta di un minore, ma per esserne assolutamente certo mostra un codice QR che il bambino scansiona con il suo smartphone. Invece di usare l’app antivirus, il bambino installa un relay gratuito che invia semplicemente la richiesta di verifica a un telefono valido. Lo smartphone riceve la richiesta, non ha idea da dove provenga o chi l’abbia avviata, la firma e invia la “prova” al negoziante. Il negoziante ha la prova crittografica che il bambino ha più di 18 anni e consegna l’alcol. “Il quadro normativo UE sulla verifica dell’età ha creato l’equivalente digitale di ‘scusi, può comprarci dell’alcol?’ rivolto da un minorenne a un adulto”, scrive Moore.
L’app non solo non protegge e non può proteggere i bambini nel modo descritto; crea pure uno scudo legale per le aziende che cercano la conformità alle regole e non la sicurezza dei bambini. Altra critica: “anche se l’app funziona esattamente come previsto, il sito web e il processo di verifica sono completamente disaccoppiati e ‘anonimi’. L’architettura presuppone che la richiesta venga inviata al dispositivo dell’utente, che contiene i suoi dati biometrici. Ma la richiesta può arrivare a qualsiasi dispositivo, ovunque nel mondo… e poiché il telefono non ha modo di sapere chi ha avviato il processo, il minore supera comunque la verifica dell’età. L’asserzione è che l’utente ha più di 18 anni. In realtà, l’app risponde affermando che il proprietario di quel dispositivo Android ha più di 18 anni. E se non sa chi sia l’utente, come potrebbe conoscerne l’età? Questo è il design attuale”. Fin qui Paul Moore.
Hacker etici e ricercatori confermano: l’app è aggirabile
Baptiste Robert, noto hacker etico francese, ha confermato molti dei problemi e ha dichiarato che è possibile aggirare le funzionalità di autenticazione biometrica dell’app, il che significa che qualcuno potrebbe evitare di inserire un codice PIN o di utilizzare il Touch ID (sistema di riconoscimento biometrico sviluppato basato su un lettore di impronte digitali) per accedere all’app. Olivier Blazy, ricercatore di crittografia: “Supponiamo che io abbia scaricato l’app e dimostrato di avere più di 18 anni; a quel punto mio nipote potrebbe prendere il mio telefono, sbloccare l’app e usarla per dimostrare di avere più di 18 anni”.
Dopo le molte critiche, la Commissione, per bocca di una sua portavoce, ha ribadito che l’app è tecnicamente pronta, ma ha aggiunto che può sempre essere migliorata. Un altro funzionario ha fatto presente che è ancora una versione demo e che il prodotto finale non è ancora disponibile per i cittadini. Il codice verrà costantemente aggiornato e migliorato e non si può escludere o prevedere se saranno necessari ulteriori aggiornamenti. In un comunicato, la stessa Commissione ha reso noto che gli hacker stavano testando una precedente versione demo dell’app, rilasciata a “scopi di test e sviluppo”.
Open source sì, ma non basta: la fretta della Commissione UE
I critici ritengono, per tutto quanto abbiamo scritto, che sia un bene che l’app sia open source, così che gli esperti possano provarla e testarla. È anche vero, tuttavia, che il codice sorgente rilasciato non soddisfa gli standard di sicurezza informatica che gli esperti si sarebbero aspettati da una app così importante. La Commissione ha avuto fretta, trascurando i problemi di sicurezza e lanciando qualcosa di non tecnicamente pronto.
Inti De Ceukelaire, ethical hacker belga, ha affermato: “Per progetti open source come questo, sarebbe opportuno pubblicare anche le valutazioni di sicurezza prima del lancio, in modo che tutti possano valutare i benefici rispetto ai rischi”. La polemica rivela una profonda spaccatura su come gestire l’accesso degli utenti di Internet a qualsiasi contenuto, dai siti pornografici alle piattaforme di social media.
La pressione politica e il rischio di una norma inapplicabile
L’UE e molti dei suoi Stati membri stanno implementando sistemi per verificare l’età degli utenti online, sollecitati da una spinta politica volta a proteggere i minori su internet. Il presidente francese Macron ha riunito, per una videoconferenza sul tema, von der Leyen, Giorgia Meloni, Pedro Sánchez, Friedrich Merz e altri. I critici dei blocchi basati sull’età affermano anche che una tecnologia con adeguate garanzie di privacy e protezione dei dati non è ancora pronta e, anche se lo fosse, gli utenti di Internet la aggirerebbero facilmente con strumenti come le reti private virtuali (VPN, virtual private network) che mascherano la loro posizione.
A marzo, un gruppo di oltre 400 esperti di privacy e sicurezza ha inviato una lettera aperta alla Commissione chiedendo una moratoria sui piani di implementazione fino a quando non si sarà raggiunto un consenso scientifico sui benefici e i rischi che le tecnologie di verifica dell’età possono comportare, e sulla fattibilità tecnica di tale implementazione.
Secondo una deputata ceca del Parlamento europeo, promotrice di una legge sulla sicurezza informatica, il processo viene accelerato sotto pressione politica e si dovrebbe prestare molta attenzione per valutare se siano state adottate tutte le misure necessarie in materia di sicurezza informatica e privacy. Una parlamentare tedesca ha definito l’app una soluzione incompleta, non all’altezza degli standard UE, mentre secondo un altro parlamentare, polacco, l’app per la verifica dell’età, annunciata in tutta fretta, rappresenta un rischio enorme per la privacy dei cittadini.
Sembra di poter concludere che la brama di ottenere un risultato politico immediato si sia rivelato un approccio controproducente. Il lato positivo della vicenda è rappresentato dalla decisione di rendere l’app open source, cosicché le criticità sono venute alla luce prima del suo utilizzo effettivo. Ma, sul piano della comunicazione, non si può nascondere che l’affare sia stato gestito malissimo. Una maggiore prudenza avrebbe evitato quella che può essere definita, senza infingimenti, una magra figura. Su un tema e in un periodo molto delicati per l’Unione Europea.











