[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
File Hub v1.9.1 iOS - Multiple Web Vulnerabilities
- To: bugtraq@xxxxxxxxxxxxxxxxx, bugs@xxxxxxxxxxxxxxxxxxx
- Subject: File Hub v1.9.1 iOS - Multiple Web Vulnerabilities
- From: Vulnerability Lab <research@xxxxxxxxxxxxxxxxxxxxx>
- Date: Sat, 15 Feb 2014 23:35:55 +0100
Document Title:
===============
File Hub v1.9.1 iOS - Multiple Web Vulnerabilities
References (Source):
====================
http://www.vulnerability-lab.com/get_content.php?id=1195
Release Date:
=============
2014-02-15
Vulnerability Laboratory ID (VL-ID):
====================================
1195
Common Vulnerability Scoring System:
====================================
9.1
Product & Service Introduction:
===============================
File Hub is a powerful and intuitive file manager for iOS. Read, Play, View
many file formats, easily transfer files
between computer or cloud services and manage files via browser on computer.
Voice recorder, text file editor and more.
(Copy of the Vendor Homepage:
https://itunes.apple.com/en/app/file-hub-usb+wifi+bluetooth+cloud/id520299954 )
Abstract Advisory Information:
==============================
The Vulnerability Laboratory Research Team discovered multiple critical web
vulnerabilities in the official File Hub v1.9.1 iOS application.
Vulnerability Disclosure Timeline:
==================================
2014-02-15: Public Disclosure (Vulnerability Laboratory)
Discovery Status:
=================
Published
Affected Product(s):
====================
Apple AppStore
Product: File Hub - Mobile Web Application 1.9.1
Exploitation Technique:
=======================
Remote
Severity Level:
===============
Critical
Technical Details & Description:
================================
1.1
A critical remote code execution web vulnerability has been discovered in the
official File Hub v1.9.1 iOS mobile web-application.
The web vulnerability allows remote attackers to execute unauthorized system
specific codes or commands to compromise the affected system/service.
The vulnerability is located in the `folder rename via edit` and `new folder`
function of the file hub wifi application interface. Remote attackers
are able to inject own system specific codes as folder/path name to compromise
the application. The code execution occurs after the inject via POST
method in the main index and the sub category folder. In the sub category
folder the code executes in the header location of the application context.
In the main index the code execution occurs in the index file dir & item list.
The security risk of the remote code execution vulnerability in the
new folder function is estimated as critical with a cvss (common vulnerability
scoring system) count of 9.3(+)|(-)9.4.
Exploitation of the code execution vulnerability requires no user interaction
or privileged mobile web-application user account with password.
Successful exploitation of the remote code execution vulnerability results in
mobile application or connected device component compromise.
Request Method(s):
[+] [POST]
Vulnerable Module(s):
[+] New Folder (Add)
Vulnerable Parameter(s):
[+] folder name
Affected Module(s):
[+] Index File Dir Item List - Path Dir
Location on Top
[+] Sub Category - Header Location to Path
1.2
A local file include web vulnerability has been discovered in the official File
Hub v1.9.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 web-application or mobile device.
The web vulnerability is located in the `file name` value of the `Files to
Upload` module POST method request. Remote attackers are
able to inject own files with malicious filename to compromise the mobile
application. The attack vector is persistent and the request
method is POST. The local file/path include execution occcurs in the main file
to path section after the refresh of the file upload.
The security risk of the local file include web vulnerability is estimated as
high(+) with a cvss (common vulnerability scoring
system) count of 7.3(+)|(-)7.4.
Exploitation of the local file include web vulnerability requires no user
interaction or privileged web-application user account with password.
Successful exploitation of the local web vulnerability results in mobile
application or connected device component compromise by unauthorized
local file include web attacks.
Request Method(s):
[+] [POST]
Vulnerable Input(s):
[+] Files to Upload
Vulnerable Parameter(s):
[+] filename
Affected Module(s):
[+] Index File Dir Item List
[+] Sub Category File Dir Item List
[+] Index File or Item Edit
[+] Index File or Item Remove/Delete
Proof of Concept (PoC):
=======================
1.1
The remote code execution web vulnerability can be exploited by remote
attackers without user interaction and privileged application user account.
For security demonstration or to reproduce the vulnerability follow the
provided information and steps below.
PoC:
<table class="jtable"><thead><tr><th style="width: 1%;"
class="jtable-command-column-header jtable-column-header-selecting">
<div class="jtable-column-header-container"><input
type="checkbox"></div></th><th style="width: 12.1164%;"
class="jtable-column-header">
<div class="jtable-column-header-container"><span
class="jtable-column-header-text"></span><div
class="jtable-column-resize-handler"></div></div></th>
<th style="width: 48.5344%;" class="jtable-column-header"><div
class="jtable-column-header-container">
<span class="jtable-column-header-text">File Name</span><div
class="jtable-column-resize-handler"></div></div></th>
<th style="width: 12.1164%;" class="jtable-column-header"><div
class="jtable-column-header-container"><span
class="jtable-column-header-text">File Size</span>
<div class="jtable-column-resize-handler"></div></div></th><th style="width:
19.4138%;" class="jtable-column-header"><div
class="jtable-column-header-container">
<span class="jtable-column-header-text">Last modified</span><div
class="jtable-column-resize-handler"></div></div></th><th style="width:
4.81902%;"
class="jtable-column-header"><div class="jtable-column-header-container"><span
class="jtable-column-header-text"></span></div></th><th style="width: 1%;"
class="jtable-command-column-header"></th><th style="width: 1%;"
class="jtable-command-column-header"></th></tr></thead><tbody><tr
data-record-key="/BKM-Filter-Bypass-0ne"
class="jtable-data-row jtable-row-even"><td
class="jtable-selecting-column"><input type="checkbox"></td><td><img
src="File%20Hub_1-Dateien/folder.png" height="32px"
width="32px"></td><td><a style="cursor: pointer;"
href="http://localhost:8080/">BKM-Filter-Bypass-0ne</a></td><td>N/A</td><td>11.02.14
20:01</td><td></td>
<td class="jtable-command-column"><button class="jtable-command-button
jtable-edit-command-button" title="Rename file"><span>Rename
file</span></button></td>
<td class="jtable-command-column"><button class="jtable-command-button
jtable-delete-command-button"
title="Delete"><span>Delete</span></button></td></tr>
<tr data-record-key="/test23" class="jtable-data-row"><td
class="jtable-selecting-column"><input type="checkbox"></td><td><img
src="File%20Hub_1-Dateien/folder.png"
height="32px" width="32px"></td><td><a style="cursor: pointer;"
href="http://localhost:8080/">test23</a></td><td>N/A</td><td>11.02.14
20:01</td><td></td>
<td class="jtable-command-column"><button class="jtable-command-button
jtable-edit-command-button" title="Rename file"><span>Rename
file</span></button></td>
<td class="jtable-command-column"><button class="jtable-command-button
jtable-delete-command-button"
title="Delete"><span>Delete</span></button></td></tr>
<tr data-record-key="/test337+">[REMOTE CODE EXECUTION VULNERABILITY!]>"
class="jtable-data-row jtable-row-even"><td class="jtable-selecting-column">
<input type="checkbox"></td><td><img src="File%20Hub_1-Dateien/folder.png"
height="32px" width="32px"></td>
<td><a style="cursor: pointer;" href="http://localhost:8080/">test337
"><[REMOTE CODE EXECUTION VULNERABILITY!]"></a></iframe></a></td><td>N/A</td>
<td>11.02.14 20:01</td><td></td><td class="jtable-command-column"><button
class="jtable-command-button jtable-edit-command-button" title="Rename file">
<span>Rename file</span></button></td><td class="jtable-command-column"><button
class="jtable-command-button jtable-delete-command-button" title="Delete">
<span>Delete</span></button></td></tr></tbody></table>
--- PoC Session Logs [POST] ---
Status: 200[OK]
POST http://localhost:8080/rename.php Load Flags[LOAD_BYPASS_CACHE
LOAD_BACKGROUND ] Größe des Inhalts[171] Mime
Type[application/x-unknown-content-type]
Request Header:
Host[localhost:8080]
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:26.0) Gecko/20100101
Firefox/26.0]
Accept[application/json, text/javascript, */*; q=0.01]
Accept-Language[de-de,de;q=0.8,en-us;q=0.5,en;q=0.3]
Accept-Encoding[gzip, deflate]
Content-Type[application/x-www-form-urlencoded; charset=UTF-8]
X-Requested-With[XMLHttpRequest]
Referer[http://localhost:8080/]
Content-Length[61]
Connection[keep-alive]
Pragma[no-cache]
Cache-Control[no-cache]
POST-Daten:
FileId[%2Ftest337[REMOTE CODE EXECUTION VALUE!]]
Name[localhost]
Response Header:
Accept-Ranges[bytes]
Content-Length[171]
Date[Tue, 11 Feb 2014 19:02:54 GMT]
Status: 200[OK]
GET http://localhost:8080/[REMOTE CODE EXECUTION VALUE!] Load
Flags[LOAD_DOCUMENT_URI ] Größe des Inhalts[0] Mime
Type[application/x-unknown-content-type]
Request Header:
Host[localhost:8080]
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:26.0) Gecko/20100101
Firefox/26.0]
Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
Accept-Language[de-de,de;q=0.8,en-us;q=0.5,en;q=0.3]
Accept-Encoding[gzip, deflate]
Referer[http://localhost:8080/]
Connection[keep-alive]
Response Header:
Accept-Ranges[bytes]
Content-Length[337]
Date[Tue, 11 Feb 2014 19:02:54 GMT]
1.2
The local file include web vulnerability can be exploited by remote attackers
without privileged web application user account and also
without user interaction. For security demonstration or to reproduce the
vulnerability follow the provided information and steps below.
PoC:
<th style="width: 1%;" class="jtable-command-column-header"></th><th
style="width: 1%;"
class="jtable-command-column-header"></th></tr></thead><tbody><tr
data-record-key="/asdads/8f11a581d505d476cebd607056e4c167621c2e61.jpg"
class="jtable-data-row jtable-row-even"><td
class="jtable-selecting-column"><input type="checkbox"></td><td>
<img src="File%20Hub_3-Dateien/jpg.png" height="32px" width="32px"></td><td><a
style="cursor: pointer;"
href="http://localhost:8080/">%20>"\\>../[LOCAL FILE INCLUDE VULNERABILITY VIA
qqfile FILENAME!]/.jpg</a></td><td>24 Kb</td><td>11.02.14 20:30</td><td>
--- PoC Session Logs [POST] ---
Status: 200[OK]
POST http://localhost:8080/upload.php Load Flags[LOAD_BYPASS_CACHE ]
Größe des Inhalts[16]
Mime Type[application/x-unknown-content-type]
Request Header:
Host[localhost:8080]
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:26.0) Gecko/20100101
Firefox/26.0]
Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
Accept-Language[de-de,de;q=0.8,en-us;q=0.5,en;q=0.3]
Accept-Encoding[gzip, deflate]
X-Requested-With[XMLHttpRequest]
Cache-Control[no-cache]
Referer[http://192.168.2.109:8080/]
Content-Length[25068]
Content-Type[multipart/form-data;
boundary=---------------------------13158193021484]
Cookie[jtable%2376270709page-size=10]
Connection[keep-alive]
Pragma[no-cache]
POST-Daten:
POST_DATA[-----------------------------13158193021484
Content-Disposition: form-data; name="uploader"
fineuploader
-----------------------------13158193021484
Content-Disposition: form-data; name="dirpath"
/test23
-----------------------------13158193021484
Content-Disposition: form-data; name="qquuid"
ed6448c1-abb5-4df8-9216-2adb17900f55
-----------------------------13158193021484
Content-Disposition: form-data; name="qqtotalfilesize"
24386
-----------------------------13158193021484
Content-Disposition: form-data; name="qqfile"; filename="\\>../[LOCAL FILE
INCLUDE VULNERABILITY VIA qqfile FILENAME!]/.jpg"
Content-Type: image/jpeg
ÿØÿà
PoC: Button Error in Menu - qqfile > filename (Edit & Delete)
<button class="jtable-command-button jtable-edit-command-button" title="Rename
file"><span>Rename file</span></button></td>
<td class="jtable-command-column"><button class="jtable-command-button
jtable-delete-command-button" title="Delete">
<span>Delete</span></button></td></tr><tr data-record-key="/test337
"><\\>../[LOCAL FILE INCLUDE VULNERABILITY VIA qqfile FILENAME!]/.jpg"
class="jtable-data-row jtable-row-selected"><td
class="jtable-selecting-column"><input type="checkbox"></td><td><img
src="/webroot/images/fileicons/folder.png"
height="32px" width="32px"></td><td><a style="cursor: pointer;"
href=".">test337 "><\\>../[LOCAL FILE INCLUDE VULNERABILITY VIA qqfile
FILENAME!]/.jpg">
</a></a></td>
Solution - Fix & Patch:
=======================
1.1
The remote code execution vulnerability can be patched by a secure restriction
and parse of the vulnerable rename and folder name values.
1.2
The local file include web vulnerability can be patched by a secure parse and
encode of file names. Ensure also that the values in the index and
sub category item list are prepared with a secure validation to prevent file
include or arbitrary file upload attacks.
Security Risk:
==============
1.1
The security risk of the remote code execution web vulnerability is estimated
as critical.
1.2
The security risk of the local file include web vulnerability is estimated as
high.
Credits & Authors:
==================
Vulnerability Laboratory [Research Team] - Benjamin Kunz Mejri
(bkm@xxxxxxxxxxxxxxxxx) [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@xxxxxxxxxxxxxxxxxxxxx -
research@xxxxxxxxxxxxxxxxxxxxx - admin@xxxxxxxxxxxxxxxxx
Section: www.vulnerability-lab.com/dev - 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
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@xxxxxxxxxxxxxxxxxxxxx or
research@xxxxxxxxxxxxxxxxxxxxx) to get a permission.
Copyright © 2014 | Vulnerability Laboratory
[Evolution Security]
--
VULNERABILITY LABORATORY RESEARCH TEAM
DOMAIN: www.vulnerability-lab.com
CONTACT: research@xxxxxxxxxxxxxxxxxxxxx