Le applicazioni Web possono accedere ai dispositivi USB: cosa cambia Chrome

Chrome permette alle applicazioni Web di scambiare dati con tutte le periferiche USB locali. La possibilità è limitata soltanto ad app caricate da pacchetti Web Bundle firmati digitalmente. Ecco che cosa significa.
Le applicazioni Web possono accedere ai dispositivi USB: cosa cambia Chrome

WebUSB API è una specifica del World Wide Web Consortium (W3C) che consente alle applicazioni Web di interagire con i dispositivi USB. Questa specifica API (Application Programming Interface) permette ai siti di richiedere l’accesso ai dispositivi USB connessi con il dispositivo e di comunicare direttamente con loro. Si tratta, evidentemente, di un’interfaccia potente che apre a una vasta gamma di possibilità per le applicazioni, permettendo il controllo dei dispositivi hardware da browser, senza la necessità di usare software aggiuntivo. Allo stesso tempo, però, sul tavolo ci sono anche le innegabili problematiche di sicurezza che questo approccio ci restituisce.

Quali dispositivi USB sono protetti dall’accesso tramite WebUSB API

Come parte integrante delle specifiche WebUSB, alcune interfacce sono espressamente bloccate per evitare l’estrazione di informazioni riservate e dati personali. Dispositivi USB di tipo audio e video, HID (Human Interface Device, ad esempio tastiere e mouse), unità per la memorizzazione dati, smart card e controller wireless, sono le periferiche espressamente limitate.

Le prescrizioni del W3C impongono che dispositivi USB come le chiavette YubiKey, Google Titan e Feitian, utilizzate nell’ambito dell’autenticazione a due fattori o più, non possano mai essere rese accessibili da browser tramite le API WebUSB.

Google Chrome presenta uno strumento per bypassare le restrizioni e accedere ai dispositivi USB dalle applicazioni Web

L’azienda di Mountain View ha annunciato di aver avviato i test di una funzionalità chiamata Unrestricted WebUSB. Le applicazioni Web impostate come isolate rispetto al resto del browser e del sistema nel suo complesso, potranno a breve accedere comunque ai dispositivi USB “limitati” e scambiare dati senza alcuna restrizione.

Perché, almeno all’apparenza, Google avrebbe arbitrariamente deciso di indebolire le specifiche del W3C? Le cose stanno davvero in questi termini?

Iniziamo col dire che le applicazioni Web isolate non sono ospitate su server online bensì pacchettizzate sotto forma di archivi Web Bundle, firmati dai rispettivi sviluppatori e distribuiti agli utenti finali. Si tratta di componenti software congegnati prevalentemente per l’utilizzo interno in azienda.

Google promette una serie di salvaguardie, utili ad accertarsi che i pacchetti Web Bundle siano legittimi e non contengano codice potenzialmente pericoloso. La novità Unrestricted WebUSB, stando a quanto dichiarato, dovrebbe essere integrata a partire da Chrome 128.

Qual è l’utilità di una misura come Unrestricted WebUSB

La novità introdotta da Google con Unrestricted WebUSB può essere utile in diverse situazioni pratiche, specialmente in contesti aziendali e professionali nei quali l’accesso ai dispositivi USB specifici è necessario per svolgere attività critiche. Ecco alcune situazioni in cui la funzionalità può essere particolarmente vantaggiosa perché, lo ricordiamo, sgombra il campo dalla necessità di ricorrere a specifici software intermediari:

  • Applicazioni mediche e sanitarie: Le app Web utilizzate in ambito medico potrebbero necessitare di accedere a dispositivi medici USB specifici per la raccolta e l’analisi di dati paziente in tempo reale. Ad esempio, dispositivi di diagnostica medica, monitor di segni vitali o apparecchiature di imaging potrebbero beneficiare di un accesso diretto e sicuro tramite app Web.
  • Ambienti industriali: In un contesto industriale, le applicazioni Web potrebbero aver bisogno di interfacciarsi con macchinari, sensori o dispositivi di controllo industriale che utilizzano USB per la comunicazione. L’accesso non limitato permetterebbe una gestione e un monitoraggio più efficienti e integrati.
  • Formazione e istruzione: Le app Web utilizzate in ambito educativo potrebbero richiedere accesso a dispositivi USB per esperimenti scientifici, strumenti di laboratorio virtuali e dispositivi di apprendimento interattivo.
  • Applicazioni di sicurezza: Le aziende che sviluppano applicazioni di sicurezza potrebbero necessitare di accesso a dispositivi USB per l’autenticazione o attività crittografiche. Si pensi alle chiavetta di sicurezza hardware e ai dispositivi di riconoscimento biometrico.
  • Gestione di smart card e token di sicurezza: Le applicazioni Web aziendali che gestiscono l’autenticazione e l’accesso sicuro tramite smart card o token di sicurezza, spesso richiedono l’accesso diretto a tali dispositivi.
  • Sistemi di archiviazione e backup: Alcune applicazioni usate in ambito business per l’archiviazione dei dati e il backup, possono necessitare dell’accesso ai dispositivi di storage per il trasferimento di file e cartelle via USB.

Credit immagine in apertura: Copilot Designer.

Ti consigliamo anche

Link copiato negli appunti