Sta facendo molto discutere la proposta di Google che sembra gettare le basi per verificare la configurazione software utilizzata da ciascun utente e offrire riscontri affidabili agli sviluppatori software. Web Integrity API mira a “conoscere meglio” l’individuo che sta utilizzando il browser Web, consente di accertarsi che non sia un “bot” e che il browser non risulti manomesso o modificato con modalità non approvate.
I tecnici di Google spiegano che le nuove API fornirebbero anche dati utili per gli inserzionisti che desiderano contare meglio le visualizzazioni degli annunci pubblicitari, per bloccare l’attività dei bot sui social network, per far rispettare i diritti di proprietà intellettuale, per rendere più sicure le transazioni finanziarie ed evitare il fenomeno del cheating nei videogiochi online.
Il riferimento ai sistemi DRM è chiaro. Le tecnologie DRM (Digital Rights Management) gestiscono e proteggono i diritti digitali su contenuti come musica, film, ebook, software e altro ancora. Tra le più famose e utilizzate c’è Widevine, acquistata da Google nel 2010. Con Web Integrity API, la società fondata da Larry Page e Sergey Brin potrebbe imporre ulteriori “paletti” sull’utilizzo delle applicazioni Web, sue e di terze parti.
Quattro sviluppatori Google hanno lavorato alla descrizione delle Web Integrity API: tra loro c’è anche un responsabile del team Privacy Sandbox di Chrome che sta rispondendo alla morte dei cookie di tracciamento (accelerata dai Garanti Privacy europei) costruendo una piattaforma utile a monitorare il comportamento degli utenti direttamente a livello di browser Web, in ambito locale quindi senza appoggiarsi a servizi cloud. Parte del meccanismo, sono le Topics API, recentemente abilitate da Google con il rilascio di Chrome 115.
Web Integrity API utilizza anche i segnali di sistema per “certificare” una piattaforma client
L’aspetto più eloquente della spiegazione sulle “mire” delle Web Integrity API è forse la parte in cui Google chiarisce che il sistema si appoggia a “segnali” già offerti nativamente dal dispositivo client, ove disponibili. L’azienda di Mountain View fa presente che le API possono sfruttare indicatori come quelli restituiti da Play Integrity API su Android e Apple App Attest.
Play Integrity API è un servizio fornito da Google per aiutare gli sviluppatori di app Android a verificare l’integrità del loro codice quando in esecuzione sul dispositivo dell’utente. Il servizio aiuta agli sviluppatori di rilevare se la loro app risultasse compromessa o manipolata da software malevoli. Si pensi ad esempio alle soluzioni che cercano di bypassare misure di sicurezza.
Precedentemente conosciuta come SafetyNet (ne abbiamo parlato anche nell’articolo su AOSP), Play Integrity API consente di stabilire se un dispositivo Android è stato sottoposto a rooting. Dopo aver effettuato il root del dispositivo, diverse tipologie di applicazioni si rifiutano di funzionare proprio per via del riscontro fornito da Play Integrity API. Qualche esempio di software che non funziona più sono le applicazioni bancarie, Google Wallet, i giochi online, Snapchat e alcune piattaforme di streaming come Netflix.
App Attest è una tecnologia introdotta da Apple per consentire agli sviluppatori di app iOS di verificare il corretto funzionamento del loro codice. Il servizio offre una chiave di sicurezza specifica per l’applicazione e consente agli sviluppatori di accertarsi che la loro app non risulti alterata o manomessa.
Un token autorizzativo per accedere alle applicazioni Web dai dispositivi approvati
Le Web Integrity API consegnano alle applicazioni Web la possibilità di accedere ai “controlli di autenticità” normalmente disponibili per le app installate localmente sui dispositivi mobili.
Il piano di Google è che, durante l’utilizzo di un’applicazione Web, questa potrebbe richiedere di superare un test sulle garanzie offerte dal client in uso. La verifica viene svolta appoggiandosi a un server di terze parti che porta alla creazione di un IntegrityToken firmato digitalmente. Esibendo il token all’applicazione Web, si può accedere ai contenuti richiesti e ottenere una risposta con tutte le informazioni necessarie.
La scelta di Google è già oggetto di critica: ecco perché
Google descrive le sue nuove API usando un approccio generico. In realtà, l’attore principale chiamato a gestire “dietro le quinte” il funzionamento delle Web Integrity API sarebbe ancora una volta Google. Il browser Web che svolge i controlli client-side sarebbe Chrome (già ha iniziato a implementare le nuove API…) e il server di attestazione quasi certamente apparterrebbe all’infrastruttura dell’azienda di Mountain View.
Nella documentazione delle Web Integrity API, Google assicura che lo strumento ormai sulla rampa di lancio non sarà utilizzato per scopi poco trasparenti. Una sorta di refrain dello storico motto aziendale “Don’t be evil“. Le API non dovranno essere utilizzate come ulteriore segnale per svolgere attività di fingerprinting sugli utenti e non dovranno interferire con le funzionalità del browser, inclusi plugin ed estensioni.
Con Mozilla che si è già posta di traverso, sono molti i commenti che invitano Google ad accantonare l’idea delle API proposte. Alcuni sostengono che un progetto come quello delle Web Integrity API possa rappresentare una seria minaccia per il Web aperto così come lo abbiamo concepito fino ad oggi andando a interferire con le libertà fondamentali dell’utente.
L’utente dovrebbe poter valutare se e quando effettuare il root del suo dispositivo Android, cosa generalmente non necessaria – fatta eccezione per lo sblocco del bootloader – al fine della sostituzione del sistema operativo preinstallato sullo smartphone o sul tablet con una ROM di terze parti, aggiornata con tutte le patch di sicurezza più recenti.
In questa pagina gli utenti di Google Chrome possono eventualmente monitorare lo stato di avanzamento dell’implementazione delle Web Integrity API all’interno del browser Web.