Lorsque nous enseignons aux gens comment éviter d’être victimes de sites de phishing, nous conseillons généralement d’inspecter attentivement la barre d’adresse pour s’assurer qu’elle Est-ce que contenir HTTPS et qu’il n’est-ce pas contiennent des domaines suspects tels que google.evildomain.com ou des lettres de substitution telles que g00gle.com. Mais que se passe-t-il si quelqu’un trouve un moyen de hameçonner les mots de passe à l’aide d’un site malveillant qui ne contient pas ces signes révélateurs ?
Un chercheur a mis au point une technique pour y parvenir. Il l’appelle un BitB, abréviation de « navigateur dans le navigateur ». Il utilise une fausse fenêtre de navigateur à l’intérieur d’une vraie fenêtre de navigateur pour usurper une page OAuth. Des centaines de milliers de sites utilisent le protocole OAuth pour permettre aux visiteurs de se connecter à l’aide de leurs comptes existants auprès d’entreprises telles que Google, Facebook ou Apple. Au lieu d’avoir à créer un compte sur le nouveau site, les visiteurs peuvent utiliser un compte qu’ils possèdent déjà, et la magie d’OAuth fait le reste.
Exploiter la confiance
Le site de retouche photo Canva, par exemple, offre aux visiteurs la possibilité de se connecter en utilisant l’un des trois comptes communs. Les images ci-dessous montrent ce qu’un utilisateur voit après avoir cliqué sur le bouton « se connecter » ; ensuite, l’image montre ce qui apparaît après avoir choisi de se connecter avec un mot de passe Google. Une fois que l’utilisateur a choisi Google, une nouvelle fenêtre de navigateur avec une adresse légitime s’ouvre devant la fenêtre Canva existante.
Le protocole OAuth garantit que seul Google reçoit le mot de passe de l’utilisateur. Canva ne voit jamais les informations d’identification. Au lieu de cela, OAuth établit en toute sécurité une session de connexion avec Google et, lorsque le nom d’utilisateur et le mot de passe sont vérifiés, Google fournit au visiteur un jeton qui donne accès à Canva. (Quelque chose de similaire se produit lorsqu’un acheteur choisit un mode de paiement comme PayPal.)
La technique BitB capitalise sur ce schéma. Au lieu d’ouvrir une véritable deuxième fenêtre de navigateur connectée au site facilitant la connexion ou le paiement, BitB utilise une série d’astuces HTML et feuilles de style en cascade (CSS) pour usurper de manière convaincante la deuxième fenêtre. L’URL qui y apparaît peut afficher une adresse valide, complétée par un cadenas et un préfixe HTTPS. La disposition et le comportement de la fenêtre semblent identiques à la réalité.
Un chercheur utilisant la poignée mr.d0x a décrit la technique la semaine dernière. Son exploit de preuve de concept commence par une page Web montrant une usurpation minutieusement précise de Canva. Dans le cas où un visiteur choisit de se connecter via Apple, Google ou Facebook, la fausse page Canva ouvre une nouvelle page qui intègre ce regards comme la page OAuth d’apparence familière.
Cette nouvelle page est également une parodie. Il comprend tous les graphiques qu’une personne s’attend à voir lorsqu’elle utilise Google pour se connecter. La page contient également l’adresse Google légitime affichée dans ce qui semble être la barre d’adresse. La nouvelle fenêtre se comporte un peu comme une fenêtre de navigateur si elle était connectée à une véritable session Google OAuth.
Si une victime potentielle ouvre la fausse page Canva.com et essaie de se connecter avec Google, « cela ouvrira une nouvelle fenêtre de navigateur et ira à [what appears to be] l’URL accounts.google.com », a écrit mr.d0x dans un message. En réalité, le faux site Canva « n’ouvre pas de nouvelle fenêtre de navigateur. Cela donne l’impression qu’une nouvelle fenêtre de navigateur a été ouverte, mais il ne s’agit que de HTML/CSS. Maintenant, cette fausse fenêtre définit l’URL sur accounts.google.com, mais c’est une illusion. »
Malvertisers: s’il vous plaît ne lisez pas ceci
Un collègue chercheur en sécurité a été suffisamment impressionné par la démonstration pour créer une vidéo YouTube qui montre plus clairement à quoi ressemble la technique. Il explique également le fonctionnement de la technique et sa facilité de mise en œuvre.
La technique BitB est suffisamment simple et efficace pour qu’on s’étonne qu’elle ne soit pas mieux connue. Après que mr.d0x ait écrit sur la technique, un petit chœur de collègues chercheurs a fait remarquer à quel point il serait probable que des utilisateurs Web encore plus expérimentés tombent dans le piège. (mr.d0x a mis à disposition des modèles de preuve de concept ici.)
« Cette attaque de navigateur dans le navigateur est parfaite pour le phishing », a déclaré un développeur. a écrit. « Si vous êtes impliqué dans des publicités malveillantes, veuillez ne pas lire ceci. Nous ne voulons pas vous donner d’idées.
« Ooh c’est méchant : Browser In The Browser (BITB) Attack, une nouvelle technique de phishing qui permet de voler des informations d’identification que même un professionnel du Web ne peut pas détecter », une autre personne mentionné.
La technique a été activement utilisée dans la nature au moins une fois auparavant. Comme l’a signalé la société de sécurité Zscaler en 2020, les escrocs ont utilisé une attaque BitB pour tenter de voler les informations d’identification du service de distribution de jeux vidéo Steam.
Bien que la méthode soit convaincante, elle présente quelques faiblesses qui devraient donner aux visiteurs avertis un moyen infaillible de détecter que quelque chose ne va pas. Les véritables fenêtres OAuth ou de paiement sont en fait des instances de navigateur distinctes de la page principale. Cela signifie qu’un utilisateur peut les faire glisser n’importe où, y compris sur la barre d’adresse de la fenêtre principale.
Les fenêtres BitB, en revanche, ne sont pas du tout une instance de navigateur distincte. Au lieu de cela, ce sont des illustrations rendues par HTML et CSS personnalisés et contenues dans la fenêtre principale. Cela signifie que les fausses pages ne peuvent pas couvrir la barre d’adresse de la fenêtre principale du navigateur.
Malheureusement, comme l’a souligné mr.d0x, ces vérifications pourraient être difficiles à enseigner « parce que maintenant nous nous éloignons du conseil standard de ‘vérifier l’URL' ». « Vous apprenez aux utilisateurs à faire quelque chose qu’ils ne font jamais. »
Tous les utilisateurs doivent protéger leurs comptes avec une authentification à deux facteurs. Une autre chose que les utilisateurs plus expérimentés peuvent faire est de faire un clic droit sur la page contextuelle et de choisir « inspecter ». Si la fenêtre est un spawn BitB, son URL sera codée en dur dans le HTML.
Il ne serait pas surprenant de constater que la technique BitB a été plus largement utilisée, mais la réaction reçue par mr.d0x démontre que de nombreux défenseurs de la sécurité ne connaissent pas BitB. Et cela signifie que de nombreux utilisateurs finaux ne le sont pas non plus.
Message mis à jour pour reformuler la méthode dans l’avant-dernier paragraphe pour détecter les pages BitB.