Technologie

Vulnérabilités de Quick Share : Une menace écartée

Dix failles récemment corrigées dans Quick Share de Google pour Windows auraient pu être exploitées pour écrire des fichiers sur les ordinateurs des victimes sans leur consentement, permettant ainsi l’exécution de code à distance en combinant plusieurs autres vulnérabilités.

Démonstration d’une attaque

Or Yair, responsable de l’équipe de recherche en sécurité de SafeBreach, et Shmuel Cohen, chercheur senior, ont présenté une attaque d’exécution de code à distance (RCE) nommée QuickShell lors de DEF CON. Ils ont expliqué le processus qui a conduit à cette découverte, notamment l’analyse du protocole de communication de Quick Share, le fuzzing et la recherche manuelle de vulnérabilités, aboutissant à la création d’une chaîne RCE complète.

Après avoir informé Google de leurs découvertes, le géant du web a publié deux CVE en juin, couvrant les dix failles identifiées par SafeBreach. Les CVE concernent une faille de déni de service (CVE-2024-38271) avec un score de gravité CVSS de 5,9, et un bug de contournement d’autorisation (CVE-2024-38272) avec un score de 7,1.

Correctifs appliqués

Google a corrigé toutes les vulnérabilités, et SafeBreach a confirmé que la chaîne RCE n’est plus exploitable. Google a choisi de ne pas commenter davantage.

Problèmes de sécurité sur Windows

Dans le cadre de la résolution du problème RCE sur Windows, Google a également corrigé une faille permettant aux attaquants de forcer l’envoi de fichiers vers des appareils Windows et Android à proximité via Quick Share.

Fonctionnalités de Quick Share

Quick Share, semblable à AirDrop d’Apple, est un outil de partage de fichiers en peer-to-peer qui permet d’envoyer et de recevoir des fichiers entre des appareils proches. Il utilise divers protocoles de communication, notamment Bluetooth, Wi-Fi, Wi-Fi Direct, WebRTC et NFC. De plus, il s’appuie sur l’API Nearby Connections de Google pour découvrir et échanger des données avec des appareils à proximité.

L’application, qui résulte de la fusion du programme Nearby Share de Google avec Quick Share de Samsung en janvier de cette année, est disponible non seulement sur Android mais aussi sur Windows, permettant ainsi le transfert de fichiers entre appareils mobiles et ordinateurs. Il est important de noter que pour qu’un transfert de fichiers ait lieu via Quick Share, les deux appareils doivent donner leur accord : l’utilisateur émetteur doit proposer un fichier, et le destinataire doit l’accepter via l’interface utilisateur.

Complexité du projet

Cohen a déclaré que « c’est un projet assez complexe à réaliser sur Windows ». Il implique plusieurs méthodes de communication, rendant l’ensemble très complexe. En tant que chercheur en sécurité, il est toujours intéressant d’explorer des programmes ou des conceptions complexes, car cela signifie probablement qu’il y aura des bugs.

Exploration des vulnérabilités

Après avoir étudié les différents protocoles impliqués dans le processus de partage de fichiers, les chercheurs ont décidé de créer un outil de fuzzing pour tester Quick Share sur Windows. Bien que cela ait conduit à quelques plantages reproductibles, cela n’a pas permis de découvrir de failles exploitables. Par exemple, il était possible de faire planter Quick Share en partageant un fichier avec un nom contenant des caractères UTF-8 invalides.

Les chercheurs ont ensuite cherché des vulnérabilités logiques dans le code. Le code du protocole de communication de Quick Share est « extrêmement générique, rempli de classes abstraites et de classes de base, ainsi qu’une classe de gestion pour chaque type de paquet », notent-ils dans un rapport qui sera partagé en même temps que leur présentation à DEF CON.

Contournement de l’acceptation

Normalement, un destinataire doit accepter à l’écran dans l’application de recevoir un fichier. Cependant, la structure du code permettait d’envoyer directement un paquet PayloadTransfer à l’application pour effectuer un transfert, contournant ainsi les étapes d’introduction et d’acceptation, et évitant la nécessité d’une approbation de la part du destinataire. Le logiciel, tant sur Windows que sur Android, acceptait automatiquement le fichier et le sauvegardait. Cela permettait aux malfaiteurs de pousser des données, y compris du contenu illégal, vers l’appareil ciblé.

Connexion Wi-Fi forcée

L’équipe de SafeBreach a également pu utiliser Quick Share pour forcer un appareil cible à se connecter à un réseau Wi-Fi de leur choix pendant environ 30 secondes, après quoi Quick Share revenait au réseau Wi-Fi d’origine. Ce mécanisme est prévu pour améliorer la connectivité entre deux appareils afin d’accélérer le transfert de fichiers.

Attaque par traversée de répertoire

Les chercheurs ont découvert une attaque par traversée de répertoire dans le code de Quick Share, permettant de créer un fichier en dehors du dossier de téléchargements. Cependant, le code exigeait que le nom du fichier commence par « Downloads » et que le fichier soit toujours dans le dossier de l’utilisateur, ce qui ne permettait pas d’atteindre une RCE.

Créativité dans l’escalade des vulnérabilités

Yair a souligné que « la partie la plus difficile n’était pas technique, mais purement créative ». Ils ont cherché à savoir comment escalader ces vulnérabilités en quelque chose de plus grand. Ce processus a impliqué l’extension de l’attaque de détournement Wi-Fi au-delà de 30 secondes, en maintenant l’ordinateur de la victime sur le réseau contrôlé par l’attaquant.

Conclusion

En fin de compte, l’équipe a identifié et aidé Google à corriger plusieurs vulnérabilités dans Quick Share, notamment :

  1. Écriture de fichiers non autorisée à distance dans Quick Share pour Windows
  2. Écriture de fichiers non autorisée à distance dans Quick Share pour Android
  3. Connexion Wi-Fi forcée à distance dans Quick Share pour Windows
  4. Traversée de répertoire à distance dans Quick Share pour Windows
  5. Déni de service à distance dans Quick Share pour Windows – Boucle infinie
  6. Déni de service à distance dans Quick Share pour Windows – Échec d’assertion
  7. Déni de service à distance dans Quick Share pour Windows – Exception non gérée

SafeBreach a collaboré étroitement avec Google pour résoudre ces vulnérabilités, et a noté que les équipes de Google étaient coopératives et réceptives à leur divulgation responsable.

Show Comments (0)
Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *