ES File Explorer : une faille expose toutes les données de l’appareil Android sur le réseau local
Et plus si affinités
Le 16 janvier 2019 à 16h01
6 min
Société numérique
Société
Un chercheur a trouvé un sérieux problème de sécurité dans ES File Explorer, l’une des applications les plus utilisées sur Android. Elle lance en effet un serveur web local en tâche de fond, permettant à quiconque sur le même réseau de nombreuses actions.
Le chercheur français Baptiste Robert, plus connu sous le pseudonyme Elliot Alderson (@fs0c131y) sur Twitter, a mis la main sur un trou béant de sécurité au sein de l’application ES File Explorer. Comptant aujourd’hui plus de 100 millions d’installations, elle sert à manipuler les données présentes sur l’appareil mobile.
Problème, comme l’explique Baptiste Robert dans une suite de tweets, l’application ouvre en arrière-plan un serveur web. Quelle que soit la raison de l’éditeur (EStrongs), ce composant peut être exploité pour lancer depuis un ordinateur sur le même réseau de multiples opérations : liste des applications, images, vidéos et sons présents sur le stockage (interne ou carte mémoire), téléchargement de ces données, voire lancement arbitraire de n’importe quelle application.
Il a publié ce matin son prototype d’exploitation (proof-of-concept) sous la forme d’un script Python sur un dépôt GitHub, accompagné d’une vidéo sur YouTube pour prouver ses dires.
Nous en avons discuté avec lui pour éprouver les contours de la faille. L'exploiter ne nécessite qu’un ordinateur et un appareil Android sur lequel ES File Explorer a été ouvert au moins une fois.
Installer soi-même l’environnement de test de la faille
L’ampleur des possibilités n’est guère complexe à tester. Il suffit d’installer l’environnement Python, en récupérant l’exécutable depuis le site officiel puis en suivant simplement les instructions.
Une fois Python installé, rendez-vous dans le dépôt GitHub créé par le chercheur, puis on télécharge (bouton vert) l’archive Zip, que l’on décompresse ensuite dans un dossier spécifique. Ouvrez ensuite un terminal, PowerShell ou une invite de commande, selon le système utilisé, pour exécuter la commande suivante depuis le dossier du script :
pip install -r requirements.txt
Une petite phase d’installation commence, au terme de laquelle vous pourrez vérifier que le script est prêt via la commande :
python poc.py list
Si tout va bien, le script devrait renvoyer une liste de commandes à utiliser via des commutateurs.
Avant de se lancer dans ces tests, deux conseils liés au script, identifiés dans nos échanges avec Baptiste Robert. D’une part, à la ligne 8, vous trouverez le texte « network ='192.168.0.'
». Il faudra peut-être changer le 0 en 1 si votre réseau local utilise la plage d'adresses IP 192.168.1.
D’autre part, à la ligne 137, le texte « for ip in range(0, 255):
» définit la plage d’adresses IP qui va être scannée par le script pour chercher l’appareil Android. L'exécution de recherches aussi larges peut être longue. Si vous connaissez l’adresse IP de votre smartphone ou tablette, autant changer les valeurs dans le code. Par exemple, si elle se termine par 23, vous pourrez par exemple indiquer « range(22, 24)
». Les commandes renverront alors beaucoup plus rapidement leurs résultats.
S’essayer aux petits délices du serveur laissé par ES File Explorer
Une fois l’environnement en place, on peut s’amuser avec les commandes du script. Elles commencent toutes par python poc.py –cmd puis nécessitent le nom de commande. Par exemple :
Python poc.py --cmd getDeviceInfo
Si tout est installé correctement et que l’application a été ouverte au moins une fois sur l’appareil Android, la commande doit renvoyer le nom de l’appareil. Si celle-ci fonctionne, les autres en feront autant.
Sur la capture ci-dessus, on peut ainsi voir les différents résultats renvoyés par les commandes d’accès aux informations de l’appareil, aux applications installées, aux images présentes sur le stockage interne, ainsi que l’ordre de lancement arbitraire à une application, ici Discord puis Mattermost.
Dans le cas des fichiers, il devient alors possible de récupérer chaque adresse pour déclencher les téléchargements qui nous intéressent via la commande python poc.py -g XXX où XXX est le chemin copié depuis les résultats. La commande doit être répétée pour chaque fichier, qui s’enregistre alors dans le répertoire d’exécution du script. Évidemment, on peut envisager une application qui automatiserait le processus.
Notez qu’à partir du moment où ES File Explorer a été lancé au moins une fois, toutes ces commandes peuvent être exécutées quand le téléphone est verrouillé ou que l’application est en arrière-plan, y compris si elle n’a plus été lancée depuis des semaines. Le serveur web, lui, reste actif.
La question du pourquoi
Pour Baptiste Robert, il ne fait aucun doute que cette faille – qui porte désormais le numéro CVE-2019-6447 – est présente « à dessein ». Il s’agirait donc d’une volonté de l’éditeur de laisser en place un composant dont le détournement, au demeurant très simple, peut être lourd de conséquences.
Mais l’exploitation ne pouvant se faire que depuis le même réseau local, le problème n’est-il pas particulièrement circonscrit ? Non pour le chercheur, qui rappelle le cas simple des réseaux publics. En outre, l’éditeur EStrongs a été racheté il y a plusieurs années par un conglomérat chinois. « L’application a bien changé depuis », notamment à travers une déferlante de publicités pour les utilisateurs gratuits. L’histoire s’inscrit donc dans un contexte d’espionnage par la Chine bien difficile à prouver, mais qui fait le malheur de Huawei actuellement.
Il pourrait aussi s’agir d’une fonction parfaitement assumée pour autoriser les utilisateurs à manier facilement leurs données depuis un ordinateur relié au même réseau Wi-Fi. Dans ce cas, le développement viendrait se placer dans la même catégorie que SuperFish chez Lenovo : pas de réelle intention de nuire, juste une fonctionnalité très mal conçue, par un ou plusieurs développeurs ne faisant que peu de cas de la sécurité.
Nous avons interrogé l’entreprise sur cette découverte, mais elle ne nous a pas encore répondu. Nos confrères de TechCrunch n’ont pas eu plus de succès.
Notez enfin que le travail de Baptiste Robert fait déjà des émules. Lukas Stefanko, chercheur chez ESET, a déjà identifié une autre faille locale dans ES File Explorer, permettant des attaques de type MITM (par l’homme du milieu). Ce qui n’étonnera personne dans le cas d’un serveur échangeant ses données en clair, sans chiffrement du transport. Quant au chercheur français, il dit avoir trouvé depuis deux autres failles, aux détails encore confidentiels.
ES File Explorer : une faille expose toutes les données de l’appareil Android sur le réseau local
-
Installer soi-même l’environnement de test de la faille
-
S’essayer aux petits délices du serveur laissé par ES File Explorer
-
La question du pourquoi
Commentaires (62)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 16/01/2019 à 18h42
Tiens, tu as fais tomber ça : " />
" />
Le 16/01/2019 à 19h53
Le 16/01/2019 à 20h14
moi j’ai l’appli de base d’Asus ça suffit emplement, ES Explorer je l’utilisais sous Android 4
Le 16/01/2019 à 21h05
je confirme que Mix le fait très bien. il a l’air au moins aussi complet que FX (version payante) et semble tout aussi ergonomique.
Le 16/01/2019 à 21h57
Amaze File Manager
Le 16/01/2019 à 22h47
Pas du tout.
Je vais te raconter une histoire :
Supposons que tu surfe sur ton pc sur le site www.vicieux.com qui affiche ce jeu que tu aime tant.
Mais en plus de ça, cette page charge un petit js qui énumère les ip en 192.x de ton réseau et essaie de se connecter au serveur es explorer. Supposons que ce petit js en profite pour télécharger les fichier depuis ton téléphone puis les envoyer via post sur www.pwned.com….
Ton téléphone n’a jamais été sur un reseau ouvert, ni même sur internet et pourtant…
Et sinon je t’ai parlé des pubs vérolées qui passent parfois au travers des filtres des grandes régies pubs via cette invention géniale qu’est le programmatique?
Le 16/01/2019 à 22h54
Le 16/01/2019 à 23h48
Le 17/01/2019 à 00h08
Hello todos!
il y a aussi ceux là:
Google
et:
GoogleEt bien sur sans tracker dixit exodus-privacy, le premier faisant (dé)compressions d’archives au passage…
Le 17/01/2019 à 01h29
Le 17/01/2019 à 07h18
SMBv2 n’est disponible que dans la version payante de MiX
Il a existé une extension, “MIX SMB” (payante aussi, que j’ai acheté et utilise), mais elle n’est plus visible dans le PlayStore: Google(pourquoi?)
Le 17/01/2019 à 07h33
ah c’est triste de lire ça pour une appli aussi répandue dans le cosmos android
il n’est pas installé sur mon note 9, l’explorateur de samsung me suffit pour ce que j’en ai besoin et sinon ES Exp n’est jamais resté installé très longtemps (n’en ayant pas l’utilité)
bon par contre, il est installé sur ma Shield (parce que pas d’explorateur de fichiers)
ça marche aussi la dessus j’imagine ? :/
Le 17/01/2019 à 07h33
Attendu depuis que l’appli était devenue un bloatware très suspect.
En alternative pas encore citée: Total commander (pendant de l’appli PC), open source, léger, interface vieillote par contre, maismarche nickel (système de plugins pour ajouter LAN, FTP, sFTP, WebDav, GDrive)
Le 17/01/2019 à 08h36
Total Commander a toujours eu une interface vieillotte, c’est pour ça que je l’aime bien, il me rappelle DosShell par moment :)
Le 17/01/2019 à 09h00
D’autre part, à la ligne 114, le texte « for ip in range(0, 255): »
Dans la dernière version du script, c’est ligne 135.
Ce script ne fonctionne pas (il ne trouve rien) avec les anciennes versions de ES Explorer (4.0.5.5 chez moi). Le serveur Web a probablement été installé après (lors du rachat ?).
Le 17/01/2019 à 09h08
Merci pour les infos! J’étais sous File commander, et j’en avais marre des pubs.
J’aime beaucoup le design de FX ;)
Le 16/01/2019 à 16h08
Bon ben j’avais cette application d’installé. Une alternative à conseiller ?
Le 16/01/2019 à 16h09
Bon, ben merci pour l’info, desinstall dès ce soir :(
Le 16/01/2019 à 16h11
Personnellement j’utilise Solid Explorer, je suis très satisfait !
Léger et juste un gestionnaire de fichier (avec serveur ftp via plugin). (je déteste les applications qui veulent tout faire….)
Le 16/01/2019 à 16h13
J’utilise celle-ci :
Google
Elle convient parfaitement, bien que je ne l’utilise pas souvent…
En espérant que ce ne soit pas un ES Explorer bis :-/
Le 16/01/2019 à 16h13
FX file explorer depuis un moment déjà, pas de pub, fonctionne bien, impec.
Le 17/01/2019 à 16h47
je viens de tester le plugin sur xdalabs (il est gratuit) et ça fonctionne nickel.
Le 17/01/2019 à 17h17
Pour ceux qui se demanderait, il semblerait que la version pro contienne aussi un serveur mais ne soit pas pilotable de la même manière (le script ne marche pas) :https://www.reddit.com/r/netsec/comments/agk363/es_file_explorer_open_port_vulne…
Le 18/01/2019 à 09h34
Pour des alternatives opensource :
https://f-droid.org/en/packages/com.amaze.filemanager/
https://f-droid.org/en/packages/dev.dworks.apps.anexplorer.pro/
Le 18/01/2019 à 10h18
Merci pour la confirmation (que le problème est ‘récent’) :)
Le 18/01/2019 à 15h24
Le 19/01/2019 à 11h14
J’utilisais ES Explorer Pro, dommage, j’adorais ses fonctionnalités. Bon je l’ai pas payé hein, avant c’était gratuit et ils ont remplacé l’appli gratuite par un bloatware alors ils ne me méritaient plus.
J’avais aussi installé Cx File Explorer, gratuit, sans achats in-app et sans pub, spécifiquement pour le support de la dernière version de SMB.
Du coup, je pense que ça va devenir mon explorateur de fichiers principal ^^
Le 19/01/2019 à 11h22
Le 19/01/2019 à 11h24
Le 20/01/2019 à 14h39
Par quelles commandes ? (Cf le message de cactusbidon…)
Le 16/01/2019 à 16h16
Tout dépend de tes besoins en fait. Pour moi ES File Explorer c’est un bloatware, c’est chargé de dizaines de fonctions inutiles.
Si tu veux juste un explorateur de fichier la plupart des fabricants de téléphone en proposent, sinon tu as celui de Google qui s’appelle juste “File” je crois.
Le 16/01/2019 à 16h21
J’utilise X-Plore ; qui peut démarrer un “Serveur Wi-Fi” (serveur web) sur demande pour accéder aux fichiers du Smartphone via le réseau, mais ce n’est pas lancé automatiquement.
ES File Explorer lançait un serveur web automatiquement donc ?
Le 16/01/2019 à 16h22
J’ai tenté d’utiliser l’explorer de Google mais je ne l’apprécie pas pour son ergonomie.
Je viens de me décider sur File Commander. c’est édité par mobiSystems qui ont créé la suite OfficeSuite. ils ont l’air plus sérieux que ES File Explorer en tout cas.
Le 16/01/2019 à 16h37
bah c’est quand même bien dommage car ES Explorer a tout un tas de fonctionnalité bien sympathiques!
par exemple, l’accès aux partages réseau, y compris par les autres applis.
lancer un fichier vidéo sur son NAS avec VLC sans avoir à le télécharger au préalable, c’est super pratique!
Le 16/01/2019 à 16h44
OTAN pour moi, c’est FX Explorer que j’utilise, j’avais abandonné ES explorer lors de son rachat et sa transformation en bloatware plein de pub!
Le 16/01/2019 à 16h45
Après il faut aussi minorer la chose… Personnellement, je connecte jamais mon tel a un réseau public. Donc ca voudrait dire qu’il faudrait que je me fasse pirater mon LAN avant de risquer qqch ? (Si j’ai bien compris).
Donc on se penche sur le sujet et on trouve d’autres failles : je suis sur que Eset en trouvera tout autant dans de nombreuses autres APP similaires…
Le 16/01/2019 à 16h51
Le 16/01/2019 à 17h09
J’utilise Amaze, une appli open-source. Pas sûr qu’elle soit sur le Play Store par contre, mais elle est sur F-Droid.
Le 16/01/2019 à 17h29
ESExplorer n’est plus utilisée par personne dans mon entourage depuis bien 2 ans. Pubs, fonctionnalités forcées, qui rendent l’interface plus lourde. Et si ces fonctionnalités forcées sont en plus des gruyères…
Le 16/01/2019 à 17h29
Privacy Policy:
http://www.estrongs.com/privacyStatement/en/index.htm
It is ES Global’s principle to respect the privacy of the personal information of our users. ES Global will take reasonable measures to protect user’s personal information, without disclosing such information to any third party other than its Partners.
…
In addition, your download, installation and use of products/service from ES Global and its affiliates, shall be deemed that you have expressly provided your consent to ES Global for disclosure of personal information to ES Global’s partners and/or affiliates “Partners”).
Qui sont les Partners de ESTRONGS ??
PS : Je ne suis pas concerné, je n’ai pas l’appli d’installé.
Le 16/01/2019 à 17h29
Je l’ai remplacé depuis pas mal de temps à cause du nombre de pubs et de fonctions inutilisés impossibles à désactiver par Mixplorer, il n’est par contre pas disponible sur le playstore, il faut le télécharger sur xda ou peut-être sur F-droid
Le 16/01/2019 à 17h32
j’aurais tendance a te conseiller MixPlorer sur XDA https://forum.xda-developers.com/showthread.php?t=1523691)
j’ai plutot confiance dans le developper et l’application est très poussés.
Sinon Solid Explorer est pas mal non plus :)
Le 16/01/2019 à 18h18
C’est surtout le support du SMBv2 et le fait de pouvoir lancer une vidéo avec VLC ou autre en streaming, sans avoir à télécharger le fichier en local qui fait sa force.
Je testerai les alternatives énoncé ici mais j’ai peur qu’aucune ne puisse répondre à ces 2 pré-requis..
Le 16/01/2019 à 18h33
De toutes facons a quoi ca sert un explorateur de fichiers ?
Le meilleur smart du monde l’iPhone qu’on ne présente plus, s’en passe bien, lui..
Encore une fois, Apple au top de la sécurité " />
Le 16/01/2019 à 18h35
pour résumer
Mixplorer :https://labs.xda-developers.com/store/app/com.mixplorer (il y a une version payante sur le play store)
FX Explorer : Google(il y a aussi une version payante)
Amaze :https://f-droid.org/fr/packages/com.amaze.filemanager/
File Commander : Google
Le 16/01/2019 à 18h36
la version payante de FX le fait, sûrement que Mix aussi, à tester.
Le 17/01/2019 à 09h15
Arf mauvaise nouvelle en ce qui me concerne. J’utilise la version Pro de ES Explorer notamment pour accéder aux serveurs Windows de la ou je bosse et aux différents shares du domaine…
Quelles alternatives présentées ici font le job ? Je viens de tester Amaze mais il ne fait pas ça…
Le 17/01/2019 à 10h02
perso j’ai balancé ES à la poubelle lorsque j’ai fait une analyse de flux et que je me suis rendu compte qu’il discutait beaucoup avec la chine (en tâche de fond). ça et toutes les merdes qu’ils ont ajoutées, quand on voit les autorisations du soft ça peut faire peur.
maintenant j’utilise MiXplorer qui est juste de la grosse balle, avec plein d’addons pour personnaliser le soft, le tout gratos et open source.
Le 17/01/2019 à 10h49
bon bah désinstallé…
Le 17/01/2019 à 10h50
Je conseille X-Plore, suite du même qui était sous Symbian avant, il est très bon et léger :)
Le 17/01/2019 à 10h57
heu j’utilise la version de base de Mix (celle sur XDA) et je peux me connecter à mon partage SMB sans problème donc ça a du changer… après comme dit par les autres, VLC peut se connecter directement en réseau, mais c’est pas super intuitif!
Le 17/01/2019 à 11h03
Le 17/01/2019 à 11h25
Pareil, convient parfaitement sans une tonne de fonctionnalités inutiles.
Le 17/01/2019 à 11h58
J’avais bien compris que c’était devenu une usine à merdes depuis son rachat, j’avais retrouvé une vieille apk d’il y a quelques années que je n’ai jamais mise à jour et ça fait le taff, on retrouve une application simple, bien pensée et sans publicités.
Le 17/01/2019 à 12h31
Tiens d’ailleurs, ça me fait penser.
J’utilise SolidExplorer, quelqu’un a un avis dessus? " />
Le 17/01/2019 à 12h55
Depuis Android 6, y’a quand même une fonction explorateur déjà intégrée. ES Explorer je l’utilisais sur mon Nexus 4 qui n’a jamais connu la version 6 (bravo l’exemplarité de Google), mais il est très rapidement une usine à gaz bourrée de fonctions douteuses.
Le 17/01/2019 à 14h04
Il serait intéressant de voir si la faille préexistait à la vente de l’application ES File explorer (si les versions anciennes, ouvraient et laissaient actif un tel serveur).
Cette application était devenue une telle usine à gaz après sa revente que beaucoup d’entre nous étaient passés à autre chose (comme Solid explorer, mais il faut payer un montant modique après la phase d’essai gratuit).
Le 17/01/2019 à 14h17
Il y a un addon MiXplorer pour SMB 2.0 sur xdalabs…
Le 17/01/2019 à 14h22
Le 17/01/2019 à 14h43
doit bien y avoir un addon pour faire le café aussi. " />
Le 17/01/2019 à 16h17
oui, mais je suis pas sûr qu’il soit nécessaire: j’arrive à accéder aux partages SMB sans ce plugin. il faudra que je vérifie si j’utilise le mode legacy via samba (smb1) mais il ne me semble pas.
Le 17/01/2019 à 16h39
bon il semble que samba passe les connexions en SMB1 si SMB2 n’est pas géré par le client. du coup, ça change rien: je suis pas en SMB2 mais j’arrive quand même à accéder à mes partages.
depuis un windows server ou un windows tout court, il y a un composant pour réactiver SMB1 si nécessaire (CIFS).