------------------------------------------------------------------------
Cross-Site Scripting vulnerability in Websense Data Security block page
------------------------------------------------------------------------
Han Sahin, September 2014
------------------------------------------------------------------------
Abstract
------------------------------------------------------------------------
It was discovered that the Websense Data Security block page processes
user-controllable data insecurely, rendering the block page is
vulnerable to Cross-Site Scripting. Cross-Site Scripting allows an
attacker to perform a wide variety of actions, such as stealing the
victim's session token or login credentials, performing arbitrary
actions on the victim's behalf, and logging their keystrokes.
------------------------------------------------------------------------
Tested versions
------------------------------------------------------------------------
This issue was discovered on Websense Triton v7.8.3 and Websense
appliance modules V-Series v7.7. Other versions may be affected as well.
------------------------------------------------------------------------
Fix
------------------------------------------------------------------------
This issue is resolved in TRITON APX Version 8.0. More information about
the fixed can be found at the following location:
http://www.websense.com/support/article/kbarticle/Vulnerabilities-resolved-in-TRITON-APX-Version-8-0
------------------------------------------------------------------------
Details
------------------------------------------------------------------------
https://www.securify.nl/advisory/SFY20140910/cross_site_scripting_vulnerability_in_websense_data_security_block_page.html
In order to exploit this vulnerability a valid ws-session is required. The payload has to be Base64 encoded, submitted to the block page via the ws-encdata URL parameter. For example, the following parameters can be submitted to the block page.
ws-session=18446744072585574752&ws-userip=1.2.3.4--><iframe>0&ws-cat=76&ws-reason=1029
The above parameters must then be encoded with Base64 and appended to the following URL:
http://<target>:15871/cgi-bin/moreBlockInfo.cgi?ws-encdata=<payload>
An attacker must trick victims into opening the attacker's specially crafted link. This is for example possible by sending a victim a link in an email or instant message. Once a victim opens the specially crafted link, arbitrary client-side scripting code will be executed in the victim's browser. The attacker-supplied code can perform a wide variety of actions, such as stealing the victim's session tokens or login credentials, performing arbitrary actions on their behalf, logging their keystrokes.