Simple Science

La science de pointe expliquée simplement

# Informatique# Cryptographie et sécurité

Risques de l'API Debugger de Chrome dans les extensions

Examen des dangers des extensions Chrome malveillantes qui exploitent l'API Debugger.

― 7 min lire


Risques de l'API ChromeRisques de l'API Chromela vie privée des utilisateurs.Des extensions malveillantes menacent
Table des matières

Les navigateurs comme Chrome sont devenus essentiels à notre expérience en ligne et ils ont plein de fonctionnalités. L'une de ces fonctionnalités, ce sont les extensions de navigateur, qui sont de petits programmes qui améliorent ou modifient le fonctionnement d'un navigateur. Même si ces extensions peuvent être utiles, elles peuvent aussi être mal utilisées. Cet article parle de la façon dont certaines failles dans l'API Debugger de Chrome peuvent être exploitées par des Extensions malveillantes pour contrôler le navigateur et accéder à des informations sensibles.

Qu'est-ce que les Extensions de Navigateur ?

Les extensions de navigateur, c'est un peu comme des apps pour ton navigateur. Elles ajoutent de nouvelles fonctionnalités ou modifient comment les fonctionnalités existantes fonctionnent. Par exemple, certaines extensions bloquent les pubs, gèrent les cookies ou t'aident à sauvegarder des mots de passe. Les extensions fonctionnent grâce à une API (Interface de Programmation d'Applications), qui permet à l’extension de communiquer avec le navigateur et d'utiliser ses fonctions.

Le Rôle de l'API Debugger de Chrome

L'API Debugger fait partie du Chrome DevTools Protocol (CDP). Elle permet aux extensions d'accéder à des fonctionnalités puissantes qui leur permettent d'examiner et de modifier le comportement du navigateur. Par exemple, les extensions peuvent voir et modifier le contenu des pages web, suivre les actions des utilisateurs et accéder à des ressources comme les cookies.

Risques de sécurité

Bien que l'API Debugger offre de nombreuses capacités, elle pose aussi des risques importants. Si une extension qui utilise l'API Debugger est malveillante, elle peut abuser de ses privilèges, entraînant divers types d'attaques. Voici quelques façons dont cela peut se produire :

1. Accéder aux Informations utilisateur

Les extensions malveillantes peuvent utiliser l'API Debugger pour extraire des données sensibles comme les adresses e-mail, les mots de passe et les numéros de carte de crédit. Elles peuvent le faire en analysant le contenu des pages web et en volant des données depuis des formulaires.

2. Suivre l'Activité de l'Utilisateur

Les extensions peuvent surveiller le comportement des utilisateurs en suivant les sites visités et les actions effectuées sur ces sites. Ces informations peuvent être utilisées pour établir des profils d'utilisateurs sans leur consentement.

3. Contourner les Avertissements de Sécurité

Quand un utilisateur essaie de visiter un site dangereux, le navigateur montre généralement un avertissement. Cependant, un attaquant peut utiliser l'API Debugger pour ignorer cet avertissement et laisser l'utilisateur accéder au site dangereux.

4. Changer les Paramètres du Navigateur

Les extensions peuvent aussi modifier les paramètres du navigateur, comme changer les permissions ou alterner le comportement du navigateur. Cela peut entraîner une perte de la vie privée et de la sécurité de l'utilisateur.

5. Interagir avec D'autres Extensions

Les extensions malveillantes peuvent aussi s'attacher à d'autres extensions installées, accédant aux données sensibles qu'elles pourraient détenir. Ça peut inclure le vol de mots de passe depuis des extensions de gestion de mots de passe.

Types d'Attaques

On peut catégoriser les risques associés à l'API Debugger en plusieurs attaques. Voici six exemples spécifiques :

1. Lister les Extensions Actives

Une extension peut lister toutes les extensions en cours d'exécution et les onglets actifs dans le navigateur. Ces informations peuvent être utilisées pour surveiller les actions de l'utilisateur et suivre son historique de navigation.

2. Voler des Informations des Onglets Normaux

Les extensions peuvent analyser le contenu des pages web normales. Ça veut dire qu'elles peuvent lire n'importe quelle information saisie par l'utilisateur, y compris des détails sensibles comme des noms d'utilisateur et des mots de passe.

3. Modifier les Messages de Sécurité

Les extensions peuvent altérer le contenu des messages de sécurité affichés par le navigateur. Ça peut embrouiller les utilisateurs et les tromper pour qu'ils ignorent les avertissements qui les alerteraient normalement sur des dangers potentiels.

4. Modifier les Onglets WebUI

Les extensions peuvent même manipuler les pages de paramètres intégrées du navigateur. Ça leur permet de changer des réglages critiques sans que les utilisateurs ne s'en aperçoivent.

5. Interagir avec D'autres Extensions

En utilisant l'API Debugger, une extension peut s'attacher à une autre extension et voler des informations sensibles. C'est particulièrement dangereux pour des extensions qui stockent des informations sensibles comme des mots de passe.

6. S'attacher à la Cible du Navigateur

Certaines extensions peuvent s'attacher directement aux processus principaux du navigateur, leur permettant de contrôler n'importe quel onglet ou extension. Ça leur donne un accès complet à toutes les actions et données dans le navigateur.

Causes Fondamentales des Vulnérabilités

Les vulnérabilités associées à l'API Debugger peuvent être attribuées à plusieurs facteurs :

Flaws de Conception

Certaines décisions prises pendant la phase de conception de l'API Debugger n'ont pas pleinement considéré les risques potentiels. Par exemple, faire confiance aveuglément aux ID de certaines extensions privilégiées a permis un accès non vérifié à des fonctionnalités sensibles.

Manque de Spécifications

L'absence de spécifications claires sur le fonctionnement de l'API Debugger rend difficile de déterminer si certains comportements sont intentionnels ou s'ils sont des bugs. Ce manque de clarté peut mener à des failles de sécurité que les extensions malveillantes peuvent exploiter.

APIs Surpuissantes

L'API Debugger offre trop de capacités avec une seule permission. Ça veut dire qu'une extension peut faire beaucoup sans que l'utilisateur soit au courant des risques. Les utilisateurs sont souvent dans le flou sur ce que la permission implique et ce que l'extension peut faire.

Mitigations et Recommandations

Pour réduire les risques associés à l'API Debugger, plusieurs stratégies peuvent être mises en œuvre :

Meilleure Gestion des Permissions

Un système de permission plus granulaire pour l'API Debugger aiderait à limiter ce qu'une extension peut faire. Chaque fonctionnalité devrait nécessiter des permissions séparées, rendant clair pour les utilisateurs quelles capacités a une extension.

Amélioration de la Connaissance des Utilisateurs

Au lieu de simplement informer les utilisateurs qu'une extension a accès à l'API Debugger, le navigateur devrait demander un consentement explicite chaque fois qu'une extension essaie d'accéder à des fonctionnalités sensibles.

Éliminer les Privilèges Codés en Dur

Les extensions privilégiées ne devraient pas être autorisées à contourner les vérifications de sécurité normales. Au lieu de coder en dur les ID de certaines extensions, elles devraient être traitées comme n'importe quelle autre extension et soumises aux mêmes règles de sécurité.

Audits de Sécurité Réguliers

Des audits et des examens de sécurité réguliers de l'implémentation de l'API Debugger aideront à identifier les vulnérabilités potentielles tôt et à les traiter avant qu'elles ne puissent être exploitées.

Conclusion

L'API Debugger de Chrome est un outil puissant, mais elle peut aussi être à double tranchant. Lorsqu'elle est mal utilisée, elle peut poser des risques significatifs pour la vie privée et la sécurité des utilisateurs. En améliorant la gestion des permissions, en renforçant la sensibilisation des utilisateurs et en réalisant des examens de sécurité approfondis, on peut rendre l'écosystème des navigateurs plus sûr pour tout le monde.

Source originale

Titre: Chrowned by an Extension: Abusing the Chrome DevTools Protocol through the Debugger API

Résumé: The Chromium open-source project has become a fundamental piece of the Web as we know it today, with multiple vendors offering browsers based on its codebase. One of its most popular features is the possibility of altering or enhancing the browser functionality through third-party programs known as browser extensions. Extensions have access to a wide range of capabilities through the use of APIs exposed by Chromium. The Debugger API -- arguably the most powerful of such APIs -- allows extensions to use the Chrome DevTools Protocol (CDP), a capability-rich tool for debugging and instrumenting the browser. In this paper, we describe several vulnerabilities present in the Debugger API and in the granting of capabilities to extensions that can be used by an attacker to take control of the browser, escalate privileges, and break context isolation. We demonstrate their impact by introducing six attacks that allow an attacker to steal user information, monitor network traffic, modify site permissions (\eg access to camera or microphone), bypass security interstitials without user intervention, and change the browser settings. Our attacks work in all major Chromium-based browsers as they are rooted at the core of the Chromium project. We reported our findings to the Chromium Development Team, who already fixed some of them and are currently working on fixing the remaining ones. We conclude by discussing how questionable design decisions, lack of public specifications, and an overpowered Debugger API have contributed to enabling these attacks, and propose mitigations.

Auteurs: José Miguel Moreno, Narseo Vallina-Rodriguez, Juan Tapiador

Dernière mise à jour: 2023-05-31 00:00:00

Langue: English

Source URL: https://arxiv.org/abs/2305.11506

Source PDF: https://arxiv.org/pdf/2305.11506

Licence: https://creativecommons.org/licenses/by/4.0/

Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.

Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.

Plus d'auteurs

Articles similaires