Come abbiamo raccontato alcune settimane fa, Google sta modificando il funzionamento del browser Chrome cosicché possa inviare ai siti Web informazioni attestanti l’utilizzo di un dispositivo client “certificato”, non modificato in alcun modo dall’utente stesso. Si tratta di un meccanismo conosciuto con il nome di attestazione remota e prevede che un soggetto specifico si faccia da garante per l’utente che visita un sito o richiede di aprire un’applicazione Web.
La soluzione proposta da Google si chiama Web Environment Integrity (WEI) e le relative API, denominate Web Integrity API, hanno già raggiunto uno stato avanzato di sviluppo.
Inutile dire che la novità ha immediatamente provocato una girandola di polemiche. Torna sull’argomento EFF (Electronic Frontier Foundation), organizzazione internazionale senza scopo di lucro che si prefigge come obiettivo principale quello di tutelare i diritti digitali e la libertà di parola nel contesto dell’odierna era digitale. Senza mezzi termini, EFF bolla WEI come qualcosa che “non s’ha da fare” perché riduce il controllo che gli utenti hanno sui propri dispositivi personali e mette soggetti terzi nelle condizioni di impedire l’accesso alle risorse pubblicate online per tutti coloro che non usano sistemi operativi e browser Web “approvati”.
Un meccanismo come WEI, inoltre, avrebbe come “effetto collaterale” quello di bloccare l’innovazione impedendo nuovi ingressi nel mercato dei browser Web.
Attestazione remota: cos’è, come funziona e perché può diventare pericolosa
Quando il browser Web si connette a un server remoto, invia automaticamente una descrizione del dispositivo in uso. Ciò avviene utilizzando diversi strumenti: la stringa user agent è forse quello più conosciuto. Provate ad esempio ad aprire la home page del motore di ricerca Google e a digitare my user agent
. Immediatamente, vedrete comparire nel riquadro “Il tuo user agent” tutte le informazioni sul sistema operativo usato, sul browser e sul motore di rendering delle pagine Web da esso adoperato.
In aggiunta, alcune informazioni possono essere trasferite servendosi di apposite intestazioni nelle richieste HTTP/HTTPS trasferite ai server Web remoti.
Ancora, utilizzando la sempre più diffusa tecnica del fingerprinting, le applicazioni Web possono servirsi di codice JavaScript “ad hoc” per identificare in modo univoco uno stesso utente che torna sullo stesso sito o su più siti diversi. Senza utilizzare alcun cookie tracciante, quindi, è oggi comunque possibile rilevare uno stesso utente: talvolta anche se passa da un browser all’altro oppure se si serve della modalità di navigazione in incognito.
Il Secure Computing: antenato dell’attestazione remota
Con il termine Secure Computing ci si riferisce all’approccio, alle tecnologie e alle pratiche utilizzate per garantire la sicurezza delle risorse, dei dati e delle operazioni all’interno di un sistema o di un ambiente informatico. L’obiettivo consiste nel proteggere le risorse digitali da minacce, attacchi, violazioni della privacy e altre forme di danni potenziali.
In ambito locale, ad esempio, strumenti per implementare l’idea di Secure Computing sono il chip TPM e la funzionalità Secure Boot. La principale funzione del chip TPM (Trusted Platform Module) è quella di fornire una piattaforma sicura per memorizzare e gestire chiavi crittografiche, autenticazione e altre informazioni riservate. Secure Boot, invece, garantisce che solo il software autorizzato e firmato digitalmente possa essere eseguito durante il processo di avvio del sistema.
Al giorno d’oggi, molti dispositivi utilizzano un “enclave sicuro“, un sottosistema progettato per garantire che il contenuto possa essere modificato solo con il permesso del produttore.
Si tratta di meccanismi perfetti per gli utenti che vogliono eseguire software certificato dal produttore ma che poco si adattano a coloro che invece desiderano installare soluzioni open source oppure sistemi operativi modificati in modo tale da non includere componenti superflui inseriti dai vari produttori. Basti pensare che la nota utilità Rufus, che permette di creare unità USB avviabili, è diventata compatibile con Secure Boot soltanto nel 2021.
Microsoft non tollera che alcun progetto rilasciato sotto licenza GNU GPLv3 possa usare una firma approvata da parte di Secure Boot. Purtuttavia, l’azienda di Redmond firma gli shim Linux ovvero i bootloader di primo grado utilizzati per l’avvio di molte distribuzioni.
L’attestazione remota porta online le verifiche fino ad oggi svolte in ambito locale
Se un’applicazione Web potesse richiedere al dispositivo locale, usato dall’utente, informazioni precise sulla sua configurazione per poi prendere decisioni sulla base delle indicazioni fornite, allora il controllo si sposterebbe dall’ambito locale a un “regno” molto più esteso.
WEI è una proposta tecnica per consentire ai server di richiedere attestazioni remote ai dispositivi client. Tali richieste, provenienti da server Web remoti, sono inoltrate all’enclave sicura del dispositivo o al chip TPM, che risponderanno con una descrizione altamente affidabile e firmata digitalmente.
Beninteso, la soluzione che Google sta portando avanti non è un unicum nel settore. La tecnologia Private Access Tokens di Apple, già in uso da tempo, funziona esattamente allo stesso modo e praticamente nessuno, almeno fino ad oggi, si è di fatto accorto della sua esistenza.
Gli ingegneri Google sottolineano i tanti vantaggi di un approccio come WEI ma il rischio è che gli utenti perdano progressivamente il controllo anche dei dispositivo che posseggono. “Mettere le manette a ogni acquirente che entra in un negozio ridurrebbe senza dubbio i furti, e i negozi con meno furti potrebbero abbassare i prezzi, a vantaggio di tutti i loro clienti. Ma alla fine, il taccheggio è il vero problema del negozio, non gli acquirenti che entrano. Non è giusto che il negozio faccia sostenere a tutti gli altri un costo inaffrontabile per risolvere le sue difficoltà“, osserva EFF.
Come funziona Web Environment Integrity
In termini molto semplici, riassumendo quanto evidenziato in precedenza, WEI è uno strumento che permette al browser di dimostrare che sta funzionando come si aspetta l’operatore di un sito Web e che non è stato in alcun modo modificato. Si pensi a una piattaforma di gaming online: interrogando le API sulle quali si basa WEI, essa può assicurarsi che nessun giocatore stia imbrogliando. WEI attesta che ciascun client è legittimo e non esegue alcun codice modificato, utilizzato ad esempio per alterare l’andamento delle partite.
Stessa cosa può essere fatta dai gestori di servizi finanziari: l’idea è quella di accertarsi che l’utente collegato a distanza si stia servendo di un dispositivo sicuro. Oppure, ancora, le piattaforme di streaming online possono accertarsi che gli utenti non abbiano allestito una configurazione che permetta a loro di scaricare contenuti coperti dal copyright senza averne diritto, superando le limitazioni imposte dal sistema DRM (Digital Rights Management).
Per non parlare del fatto che WEI sarebbe una soluzione efficace per riconoscere e trattare in modo diverso i bot che interagiscono con le pagine Web svolgendo operazioni di norma non consentite.
Come si legge nella bozza di WEI, le API permettono di richiedere a un soggetto attestatore di richiedere una certificazione relativa all’“integrità” del client in uso. Il responso fornito dall’attestatore è inoltrato a una terza parte (che può essere il gestore di un sito Web) che ne verifica l’autenticità e sblocca eventualmente l’accesso alle sue proprietà. Esattamente come fa Private Access Tokens sui dispositivi Apple.
EFF: non va combattuta l’attestazione remota, va stabilito come può essere utilizzata
Una nota realtà come EFF sostiene che non va vietato l’utilizzo di soluzioni come WEI. I fornitori di macchine per il voto elettronico potrebbero utilizzare l’attestazione remota per verificare la configurazione dei propri dispositivi e scongiurare eventuali manomissioni. Chi si occupa di diritti umani in Paesi a rischio potrebbe usare WEI per accertarsi che i dispositivi in uso non siano compromessi, ad esempio tramite l’installazione di spyware e malware.
Gli attestati remoti, tuttavia, non possono e non devono trovare posto sulle piattaforme aperte. Il proprietario di un dispositivo dovrebbe avere sempre l’ultima parola (e assumersi tutte le responsabilità) su ciò che viene eseguito sullo stesso device e sulle informazioni trasferite a terzi.
Il Web è l’ultima grande piattaforma aperta che rimane a disposizione di cittadini e imprese. È un luogo in cui chiunque può creare un browser o un sito Web e partecipare, senza dover chiedere il permesso o soddisfare le specifiche di qualcun altro. Con la diffusione dei meccanismi di attestazione remota questo potrebbe ben presto cambiare.
“Siamo solidali con le aziende i cui ricavi potrebbero essere influenzati dalle frodi pubblicitarie, con le società che lottano contro gli imbroglioni e con i servizi online che ogni giorno devono contrastare i bot“, scrive EFF. “Ma affrontare questi problemi non può venire prima del diritto degli utenti di scegliere come funzionano i loro computer, o cosa quei computer dicono agli altri su di loro: il diritto di controllare i propri dispositivi è un elemento costitutivo di tutti i diritti civili nel mondo digitale“.
Credit immagine in apertura: iStock.com/Just_Super