Google travaille sur une nouvelle fonctionnalité WebUSB sans restriction, qui permet aux applications Web isolées de confiance de contourner les restrictions de sécurité dans l'API WebUSB.
WebUSB est une API JavaScript qui permet aux applications Web d'accéder aux périphériques USB locaux sur un ordinateur. Dans le cadre de Spécification WebUSBcertaines classes d'interface sont protégées contre l'accès via des applications Web pour empêcher les scripts malveillants d'accéder à des données potentiellement sensibles.
La liste des classes d'interface protégées comprend l'audio, le HID (Human Interface Device), le stockage de masse, la carte à puce, la vidéo, les périphériques audio/vidéo et le contrôleur sans fil.
En outre, la spécification WebUSB inclut une liste de blocage de périphériques USB spécifiques qui ne sont pas accessibles par l'API, tels que les clés YubiKeys, les clés Google Titan et les clés de sécurité Feitian, qui sont utilisées pour l'authentification multifacteur.
Google teste actuellement un «WebUSB sans restriction » fonctionnalité qui permet Applications Web isolées pour accéder à ces appareils et interfaces restreints.
« La spécification WebUSB définit une liste de blocage des appareils vulnérables et un tableau des classes d'interfaces protégées dont l'accès via WebUSB est bloqué », a noté Google dans une mise à jour de statut de Chrome.
« Avec cette fonctionnalité, les applications Web isolées disposant de l'autorisation d'accéder à la fonctionnalité de politique d'autorisation « usb-unrestricted » seront autorisées à accéder aux appareils bloqués et aux classes d'interface protégées. »
Les applications Web isolées sont des applications qui ne sont pas hébergées sur des serveurs Web en direct, mais regroupées dans des bundles Web, signées par leur développeur et distribuées aux utilisateurs finaux. Elles sont généralement créées pour être utilisées en interne par les entreprises.
Pour que cela fonctionne, ces applications Web doivent avoir l'autorisation d'utiliser la fonctionnalité « USB sans restriction ».
Lorsqu'une application disposant de cette autorisation tente d'accéder à un périphérique USB, le système vérifie d'abord s'il figure sur la liste de blocage des périphériques vulnérables. Si tel est le cas, l'appareil est normalement supprimé de la liste d'accès.
Cependant, cette restriction est contournée pour les applications Web disposant de l'autorisation « USB sans restriction ».
Le système vérifie également si l'appareil figure dans la liste des appareils autorisés de l'application. Si ce n'est pas le cas, l'accès est refusé.
De plus, le système vérifie si l'interface à laquelle vous accédez est marquée comme protégée. Si c'est le cas et que l'application ne dispose pas de l'autorisation « usb-unrestricted », l'accès est refusé.
La fonctionnalité proposée par Google permet aux applications Web isolées et fiables d'accéder à une gamme plus large de périphériques USB, permettant ainsi une plus grande fonctionnalité dans un environnement de confiance.
Google indique qu'il prévoit de l'expédier pour des tests dans Chrome 128, qui devrait sortir en août 2024.