Vulnerability Note VU#715737

Mozilla-based browsers jar: URI cross-site scripting vulnerability

Original Release date: 08 Nov 2007 | Last revised: 20 Nov 2008

Overview

Mozilla-based web browsers including Firefox contain a vulnerability that may allow an attacker to execute code, or conduct cross-site scripting attacks.

Description

The jar: protocol is designed to extract content from ZIP compressed files. Mozilla-based browsers include support for jar: URIs that are of the form jar:[url]![/path/to/file.ext]. The compressed file does not need to have a .zip extension.

From the GNUCITIZEN blog:

    jar: content run within the scope/origin of the secondary URL. Therefore, a URL like this: jar:https:// example.com/test.jar!/t.htm, will render a page which executes within the origin of https://example.com.
Since the script in the webpage at the second URL runs in the context of the first URL's page, a cross-site scripting vulnerability occurs.

To successfully exploit this vulnerability, an attacker could place or link to a specially crafted archive file on a site and convince the user to open the file with a Mozilla based browser. An attacker could use sites that allow user-submitted content distribute malicious archived files.

Impact

This vulnerability may allow an attacker to execute cross-site scripting attacks on sites that allow users to upload pictures, archives, or other files.

Solution

This vulnerability is addressed in Mozilla Firefox 2.0.0.10: From MFSA 2007-37:

    Support for the jar: URI scheme has been restricted to files served with a Content-Type header of application/java-archive or application/x-jar. Web applications that require signed pages must make sure their .jar archives are served with this Content-Type. Sites that allow users to upload binary files should make sure they do not allow these files to have one of these two MIME types.


Workarounds for network administrators and users

  • NoScript version 1.1.7.8 and later may prevent this vulnerability from being exploited.

Workarounds for website administrators
  • Blocking URIs that contain jar: using a reverse proxy or application firewall could prevent an attacker from uploading content that could exploit website visitors.
  • Website owners who accept user supplied content may wish to serve these files from "safe" domains, such as numbered IP addresses or sub-level domains that can not access sensitive information.

Systems Affected (Learn More)

VendorStatusDate NotifiedDate Updated
GoogleAffected11 Nov 200711 Nov 2007
MozillaAffected-27 Nov 2007
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

This vulnerability was disclosed by PDP on the GNUCITIZEN website.

This document was written by Ryan Giobbi.

Other Information

  • CVE IDs: CVE-2007-5947
  • Date Public: 07 Nov 2007
  • Date First Published: 08 Nov 2007
  • Date Last Updated: 20 Nov 2008
  • Severity Metric: 29.53
  • Document Revision: 36

Feedback

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