Applications Android populaires comme Xiaomi et WPS Office vulnérables à une faille d’écrasement de fichiers

02 mai 2024RédactionVulnérabilité / Android

Plusieurs applications Android populaires disponibles sur Google Play Store sont sensibles à une vulnérabilité liée à la traversée de chemin qui pourrait être exploitée par une application malveillante pour écraser des fichiers arbitraires dans le répertoire personnel de l’application vulnérable.

“Les implications de ce modèle de vulnérabilité incluent l’exécution de code arbitraire et le vol de jetons, en fonction de l’implémentation d’une application”, a déclaré Dimitrios Valsamaras de l’équipe Microsoft Threat Intelligence dans un rapport publié mercredi.

Une exploitation réussie pourrait permettre à un attaquant de prendre le contrôle total du comportement de l’application et d’exploiter les jetons volés pour obtenir un accès non autorisé aux comptes en ligne et à d’autres données de la victime.

Deux des applications jugées vulnérables au problème sont les suivantes :

  • Xiaomi File Manager (com.mi. Android.globalFileexplorer) – Plus d’un milliard d’installations
  • WPS Office (cn.wps.moffice_eng) – Plus de 500 millions d’installations

Alors qu’Android met en œuvre l’isolation en attribuant à chaque application ses propres données et espace mémoire dédiés, il propose ce qu’on appelle un fournisseur de contenu pour faciliter le partage de données et de fichiers entre applications de manière sécurisée. Mais des oublis d’implémentation pourraient permettre de contourner les restrictions de lecture/écriture dans le répertoire personnel d’une application.

“Ce modèle basé sur un fournisseur de contenu fournit un mécanisme de partage de fichiers bien défini, permettant à une application de serveur de partager ses fichiers avec d’autres applications de manière sécurisée avec un contrôle précis”, a déclaré Valsamaras.

“Cependant, nous avons fréquemment rencontré des cas où l’application consommatrice ne valide pas le contenu du fichier qu’elle reçoit et, le plus inquiétant, utilise le nom de fichier fourni par l’application serveur pour mettre en cache le fichier reçu dans le répertoire de données interne de l’application consommatrice. “.

Cet écueil peut avoir de graves conséquences lorsqu’une application de service déclare une version malveillante de la classe FileProvider afin de permettre le partage de fichiers entre applications, et finalement amener l’application consommatrice à écraser les fichiers critiques dans son espace de données privé.

En d’autres termes, le mécanisme profite du fait que l’application consommatrice fait aveuglément confiance à l’entrée pour envoyer des charges utiles arbitraires avec un nom de fichier spécifique au moyen d’une intention personnalisée et explicite et à l’insu ou sans le consentement de l’utilisateur, conduisant à l’exécution de code.

En conséquence, cela pourrait permettre à un attaquant d’écraser le fichier de préférences partagées de l’application cible et de le faire communiquer avec un serveur sous son contrôle pour exfiltrer des informations sensibles.

Un autre scénario implique des applications qui chargent des bibliothèques natives à partir de leur propre répertoire de données (au lieu de “/data/app-lib”), auquel cas une application malveillante pourrait exploiter la faiblesse susmentionnée pour écraser une bibliothèque native avec un code malveillant qui est exécuté lorsque le la bibliothèque est chargée.

Suite à une divulgation responsable, Xiaomi et WPS Office ont corrigé le problème en février 2024. Microsoft, cependant, a déclaré que le problème pourrait être plus répandu, exigeant que les développeurs prennent des mesures pour vérifier leurs applications pour des problèmes similaires.

Google a également publié ses propres conseils sur le sujet, exhortant les développeurs à gérer correctement le nom de fichier fourni par l’application serveur.

“Lorsque l’application client écrit le fichier reçu dans le stockage, elle doit ignorer le nom de fichier fourni par l’application serveur et utiliser à la place son propre identifiant unique généré en interne comme nom de fichier”, a déclaré Google. “Si générer un nom de fichier unique n’est pas pratique, l’application client doit nettoyer le nom de fichier fourni.”

Vous avez trouvé cet article intéressant ? Suivez-nous sur Twitter et LinkedIn pour lire davantage de contenu exclusif que nous publions.
Partager Cet Article
Laisser un commentaire

Laisser un commentaire

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

Quitter la version mobile