Document Title: =============== SPSControl v1.2 iOS - (.spc) Persistent Vulnerability References (Source): ==================== http://www.vulnerability-lab.com/get_content.php?id=1404 Release Date: ============= 2015-01-16 Vulnerability Laboratory ID (VL-ID): ==================================== 1404 Common Vulnerability Scoring System: ==================================== 3.7 Product & Service Introduction: =============================== Visualisation via App - As easy and quick like never before! SPScontrol allows to connect your iOS-Device with a PLC. The configuration is really simple and you can do this in seconds. It was never as comfortable as now to make a HMI. It works via local networks, WiFi and the internet - Everywhere and every time! (Copy of the Vendor Homepage: https://itunes.apple.com/en/app/spscontrol/id775136856 ) Abstract Advisory Information: ============================== The Vulnerability Laboratory Research team discovered a persistent file vulnerability in the official Holsten Systems GmbH - SPSControl v1.2 iOS app. Vulnerability Disclosure Timeline: ================================== 2015-01-16: Public Disclosure (Vulnerability Laboratory) Discovery Status: ================= Published Affected Product(s): ==================== Holsten Systems GmbH Product: SPSControl - iOS Mobile Web Application (Software) 1.2 Exploitation Technique: ======================= Local Severity Level: =============== Medium Technical Details & Description: ================================ An application-side input validation web vulnerability has been discovered in the official Holsten Systems GmbH - SPSControl v1.2 iOS mobile application. The vulnerability allows a local attacker to inject own script code as payload to the application-side of the vulnerable service function or module. The vulnerability is located in the name value of the export module in the *.spc file. Local attackers can manipulate *.spc files to compromise the left app context menu bar by injection of malicious script codes. First the attacker generates a .spc file with malicious input. Later he can inject the source by usage of the local device system privileges. The attack vector is persistent on the application-side and the request method to inject is POST. The issue allows to stream persistent malicious script codes to the app index by usage of the manipulated name values in a special carfted *.spc file. The export already parses the context but if an attacker is manipulating the exported file and insert it again the script code executes. The security risk of the application-side web vulnerability is estimated as medium with a cvss (common vulnerability scoring system) count of 3.7. Exploitation of the application-side web vulnerability requires a low privileged web-application user account and low or medium user interaction. Successful exploitation of the vulnerabilities result in persistent phishing mails, session hijacking, persistent external redirect to malicious sources and application-side manipulation of affected or connected module context. Request Method(s): [+] Export Vulnerable Module(s): [+] Add Projekte Vulnerable Parameter(s): [+] name Affected File Type(s): [+] .spc Proof of Concept (PoC): ======================= The persistent input validation web vulnerability can be exploited by local attackers with system user account and without user interaction. For security demonstration or to reproduce the security vulnerability follow the provided information and steps below to continue. 1. Install the ios application (https://itunes.apple.com/en/app/spscontrol/id775136856) 2. Start the app and open the import function 3. Load the proof of concept file (exploit.spc) Note: the servie refreshs and the code executes in the left context windows with the server information 4. Successful reproduce of the persistent file validation vulnerability! PoC: Exploit.spc bplist00Ô  T$topX$objectsX$versionY$archiverÒ XcoredataXimgNames€€¤ U$nullOø{ "name" : "<">[PERSISTENT INJECTED SCRIPT CODE!]%20