Document Title: =============== Air Transfer 1.2.1 & 1.0.14 - Multiple XSS Web Vulnerabilities Date: ===== 2017-02-22 References: =========== https://www.vulnerability-lab.com/get_content.php?id=2035 VL-ID: ===== 2035 Common Vulnerability Scoring System: ==================================== 3.2 Introduction: ============= Air Transfer is a photo/movie safe that keeps all of your private pictures and videos hidden behind a password. It lets you upload and download files to/from your device over a wireless connection. Easy-to-use web interface, no USB cable needed. (Copy of the Homepage: https://itunes.apple.com/de/app/air-transfer-file-transfer/id1127766528 ) Air Transfer : Wi-Fi Sync Manager lets you upload and download files (photos, videos etc) to/from your iPhone, iPad, Mac or PC using your local wifi network. (Copy of the Homepage: https://itunes.apple.com/de/app/air-transfer-wi-fi-sync-file-manager/id1195756593 ) Abstract: ========= The vulnerability laboratory core research team discovered multiple cross site scripting vulnerabilities in the offical Air Transfer v1.2.1 & Air Transfer v1.0.14 iOS mobile application. Report-Timeline: ================ 2017-02-22: Public Disclosure (Vulnerability Laboratory) Status: ======== Published Affected Products: ================== Hong Nguyen Product: Air Transfer Application - (iPad & iPhone) v1.0.14 Janki Panchani Product: Air Transfer Application - (iPad & iPhone) v1.2.1 Exploitation-Technique: ======================= Remote Severity: ========= Medium Details: ======== Multiple client-side cross site scripting vulnerabilities has been discovered in the official Air Transfer v1.2.1 & Air Transfer v1.0.14 iOS mobile application. The vulnerability allows remote attackers to inject script codes to client-side application requests with non-persistent attack vector. The client-side cross site scripting vulnerabilities are located in the `path` parameter of the `list` and `download` modules. Remote attackers are able to inject script code to the client-side GET method requests via download or list to perform a cross site scripting attack. The validation of the `path` prameter is insecure designed and allows to execute client-side codes within the error exception-handling. The request method to inject is GET and the attack vector is non-persistent. The security risk of the xss vulnerabilities is estimated as medium with a cvss (common vulnerability scoring system) count of 3.2. Exploitation of the web vulnerability requires no privilege web-application user account and low or medium user interaction. Successful exploitation of the vulnerability results in non-persistent phishing attacks, session hijacking, non-persistent external redirect to malicious sources and non-persistent manipulation of affected or connected module context. Request Method(s): [+] GET Vulnerable Module(s) [+] list [+] download Vulnerable Parameter(s) [+] path Affected Module(s) [+] Error - Exception Handling Proof of Concept: ================= The cross site scripting vulnerabilities can be exploited by remote attackers without privilege web-application user account and with low or medium user interaction. For security demonstration or to reproduce the vulnerability follow the provided information and steps below to continue. Manual steps to reproduce the vulnerability ... 1. Install the vulnerable ios mobile application 2. Start the wifi server 3. Connect to the wifi localhost via http protocol 4. Attach the vulnerable module and parameter with payload in a GET method request 5. Perform the request and the web-server replies with an error 6. The execution occurs in the error message 7. Successful reproduce of the cross site scripting vulnerability! PoC: Vulnerable Source (Execution in Exception) HTTP Error 404

HTTP Error 404: <[CROSS SITE SCRIPTING PAYLOAD EXECUTION!]> does not exist

PoC: Exploitation http://localhost/list?path=>"