BugTraq
Download Lite v4.3 iOS - Persistent File Web Vulnerability Jul 19 2013 09:32PM
Vulnerability Lab (research vulnerability-lab com)
Title:
======
Download Lite v4.3 iOS - Persistent File Web Vulnerability

Date:
=====
2013-07-19

References:
===========
http://www.vulnerability-lab.com/get_content.php?id=1023

VL-ID:
=====
1023

Common Vulnerability Scoring System:
====================================
3.5

Introduction:
=============
Downloads Lite is a fully featured download manager that allows you to download files to your iPhone or
iPod touch, you can then view/play the downloaded files right on your iPhone or iPod touch, or transfer
them to your computer. Downloads Lite has all the essential features of the full version of Downloads
except that it is limited to store up to 7 files.

( Copy of the Vendor Homepage: https://itunes.apple.com/en/app/downloads-lite-downloader/id349275540 )

Abstract:
=========
The Vulnerability Laboratory Research Team discovered a persistent input validation vulnerability in the Download Lite application (Apple iOS - iPad & iPhone).

Report-Timeline:
================
2013-07-19: Public Disclosure (Vulnerability Laboratory)

Status:
========
Published

Affected Products:
==================
Apple AppStore
Product: Download Lite & Pro - Mobile Application 4.3

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

Severity:
=========
Medium

Details:
========
A persistent input validation web vulnerability is detected in the Download Lite v4.3 application (Apple iOS - iPad & iPhone).
The bug allows an attacker (remote) to implement/inject malicious script code on the application side (persistent) of the device.

The vulnerability is located in the index file dir listing module of the web-server (http://localhost:800) when processing to
request via POST method injected manipulated `file names`. The persistent script code will be executed in the main
index file dir listing module when the service lists the new malicious injected filename as item.

Exploitation of the persistent web vulnerability requires low user interaction and a local privilege application & device account.
Successful exploitation of the vulnerability can lead to persistent session hijacking (customers), account steal via persistent
web attacks, persistent phishing or stable (persistent) certificate mail notification context manipulation.

Vulnerable Application(s):
[+] Download Lite v4.3 - ITunes or AppStore (Apple)

Vulnerable Module(s):
[+] Add File

Vulnerable Parameter(s):
[+] filename

Affected Module(s):
[+] Index File Dir Listing

Proof of Concept:
=================
The persistent input validation web vulnerability can be exploited by local attackers with low required user interaction. For demonstration or reproduce ...

PoC: File Name - Persistent Script Code Injection

<body>
<div id="main">
<div id="header">
<form action="/files" enctype="multipart/form-data" method="post" class="upload">
<img src="Downloader_files/Icon-Small.png"> Downloader
</form>
</div>
<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="http://192.168.2.104:8080/files/Downloader.sqlite3"
class="file">Downloader.sqlite3<[PERSISTENT INJECTED SCRIPT CODE as FILENAME!]></a></td><td class="del">
<form action="/files/Downloader.sqlite3" method="post"><input name="_method" value="delete"
type="hidden"><input name="commit" value="Delete" class="button" type="submit"></form></td></tr></tbody>
</table>
<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>
<div id="footer">

<div class="content">

</div>
</div>
</div>
</body></html>

Note: Like you can see in the encode name are the string bypass the validation because of the local (stored) location.
Attacker can inject the own script code by using the local device to execute when a remote user is processing to open the index listing.

Solution:
=========
The vulnerability can be patched by a secure encoding and parse of the file name in the main file dir listing index module of the application.

Risk:
=====
The security risk of the persistent input validation web vulnerability is estimated as medium(+).

Credits:
========
Vulnerability Laboratory [Research Team] - Benjamin Kunz Mejri (bkm (at) evolution-sec (dot) com [email concealed])

Disclaimer:
===========
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 (at) vulnerability-lab (dot) com [email concealed] - research (at) vulnerability-lab (dot) com [email concealed] - admin (at) evolution-sec (dot) com [email concealed]
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 (at) vulnerability-lab (dot) com [email concealed] or research (at) vulnerability-lab (dot) com [email concealed]) to get a permission.

Copyright © 2013 | Vulnerability Laboratory [Evolution Security]

--
VULNERABILITY LABORATORY RESEARCH TEAM
DOMAIN: www.vulnerability-lab.com
CONTACT: research (at) vulnerability-lab (dot) com [email concealed]

[ reply ]


 

Privacy Statement
Copyright 2010, SecurityFocus