Cyberoam Central Console v02.03.1 - Persistent Web Vulnerabilities

Cyberoam Central Console v02.03.1 - Persistent Web Vulnerabilities

Today we disclosed a new issue in the cyberoam central console appliance web-application. This issue is application-side and was discovered to the cyberoam developer team about 2 month ago. The issue was reported by "Lawrence Amer" a core team researcher of the vulnerability laboratory.

The vulnerability is located in `header` and `footer` input fields of the `Policy Configuration - System - configuration - Captive Portal - General Settings` module. Remote attackers and low privileged or restricted web-application user accounts are able to inject own malicious script code in main functionality code of login page `Captive Portal`. The data of the POST method request in the body of message text, executes without a secure encoding or a restriction on input in the web-application appliance. The persistent execution of the script code occurs in [Page Title,Login page Header , Login page Footer] that gets shown by the appliances directly to users. 

The security risk of the application-side cross site vulnerability is estimated as medium with a cvss (common vulnerability scoring system) count of 3.8. Exploitation of the persistent input validation web vulnerability requires a low privilege web-application user account and low or medium user interaction. Successful exploitation of the vulnerability results in session hijacking, persistent phishing attacks, persistent external redirects to malicious source and persistent manipulation of affected or connected application modules.

Request Method(s):
[+] POST

Vulnerable Module(s):
[+] Policy Configuration - System - configuration - Captive Portal

Vulnerable File(s):
[+] WebClientPortalPreview.html

Vulnerable Inputs(s):
[+] Page Title
[+] Login page Header
[+] Login page footer

Vulnerable Parameter(s):
[+] header
[+] footer

Proof of Concept (PoC):
Persistent Web Vulnerability can be exploited by remote attackers with low privileged application user account and low user interaction. For security demonstration or to reproduce the vulnerability follow the provided information and steps below to continue.

1. Open the cyberoam central console appliance web-application login page
2. Login to the appliance
3. Open the following module ... Policy Configuration > System > configuration > Captive Portal > General Settings
Note: The vulnerable inputs are Page Title , Login page Header and the Login page Footer
4. Now inject to the regular input fields your script code payload to test the validation procedure
PoC: Payload ... "><iframe src=http://vulnerability-lab.com onload=alert(document.cookie) <
5. After the inject open the following document to execute the payload with application-side attack vector > [WebClientPortalPreview.html]
6. Successful reproduce of the application-side web vulnerability!

PoC: WebClientPortalPreview.html
<table cellpadding="0" cellspacing="0" width="100%">
<tbody><tr><td id="loginpagemessage" align="center" height="50px;" valign="middle">
"&gt;<img src="X" onerror="alert(&quot;XSS&quot;);"></td></tr>
</tbody></table>
...
<table cellpadding="0" cellspacing="0" width="100%">
<tbody><tr><td id="loginpagefooter" align="center" height="50px;" valign="middle">
"&gt;<img src="X" onerror="alert(&quot;XSS&quot;);"></td></tr>
</tbody></table>

Solution

The vulnerability can be patched by a secure parse and encode of the vulnerable title, header and footer input fields. Restrict the input and disallow usage of special chars, escape the context. Encode also the output listing that in the preview file of the web-application to prevent attacks.

Advisory: http://www.vulnerability-lab.com/get_content.php?id=1721

Rate this article: 
Average: 2.7 (7 votes)

Add new comment

Plain text

  • No HTML tags allowed.