VYPR
Unrated severityNVD Advisory· Published Dec 8, 2005· Updated Jun 16, 2026

CVE-2005-4089

CVE-2005-4089

Description

Microsoft Internet Explorer allows remote attackers to bypass cross-domain security restrictions and obtain sensitive information by using the @import directive to download files from other domains that are not valid Cascading Style Sheets (CSS) files, as demonstrated using Google Desktop, aka "CSSXSS" and "CSS Cross-Domain Information Disclosure Vulnerability."

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Affected products

4
  • Microsoft/Ie2 versions
    cpe:2.3:a:microsoft:ie:6.0:sp1:*:*:*:*:*:*+ 1 more
    • cpe:2.3:a:microsoft:ie:6.0:sp1:*:*:*:*:*:*
    • cpe:2.3:a:microsoft:ie:6.0:sp2:*:*:*:*:*:*
  • cpe:2.3:a:microsoft:internet_explorer:6.0:*:*:*:*:*:*:*+ 1 more
    • cpe:2.3:a:microsoft:internet_explorer:6.0:*:*:*:*:*:*:*
    • (no CPE)

Patches

Vulnerability mechanics

Root cause

"IE's CSS parser does not enforce cross-domain restrictions and exposes non-CSS content from remote URLs through the cssText property."

Attack vector

An attacker hosts a malicious web page that uses the CSS @import directive (or the JavaScript addImport function) to import a URL from a different domain. Because IE's CSS parser is overly lenient, it parses non-CSS content from the target domain — particularly HTML containing curly braces — and exposes the mis-parsed snippets through the cssText property of the document.styleSheets collection [ref_id=1]. The attacker can then read sensitive information from the target domain, such as a secret key embedded in a page on Google News, and use that key to query a local web server (e.g., Google Desktop on port 4664) to retrieve private user data [ref_id=1]. No special privileges or user interaction beyond visiting the malicious page is required; the attack works on a fully patched IE 6 with default security and privacy settings [ref_id=1].

Affected code

The vulnerability is a design flaw in Microsoft Internet Explorer's handling of CSS imports. IE allows a web page to import CSS rules from a different domain using the "@import" directive or the JavaScript "addImport" function, and then read the imported content via the "cssText" property of the document.styleSheets collection. The browser's lenient CSS parser does not reject non-CSS content; it mis-parses HTML snippets that contain CSS-like characters (curly braces, colons, semicolons) and exposes them through cssText, breaking cross-domain security restrictions [ref_id=1].

What the fix does

The advisory does not include a patch from Microsoft. The researcher notes that the vulnerability is a design flaw in IE's CSS import mechanism and that no simple fix existed at the time of disclosure [ref_id=1]. As a mitigation, the researcher recommends disabling JavaScript in IE or using an alternative browser such as Mozilla Firefox or Opera, which are not vulnerable to this attack [ref_id=1]. Google also patched their sites to prevent the specific exploit against Google Desktop, but the underlying IE vulnerability remained unaddressed [ref_id=1].

Preconditions

  • configVictim must use Microsoft Internet Explorer (tested on IE 6, earlier versions possibly vulnerable)
  • inputVictim must visit an attacker-controlled web page
  • inputTarget domain must contain HTML with CSS-like characters (curly braces, colons, semicolons) for content to be readable
  • configFor the Google Desktop exploit specifically, victim must have Google Desktop v2 installed

Reproduction

The proof-of-concept page was hosted at http://www.hacker.co.il/security/ie/css_import.html but the researcher notes it no longer works because Google patched their sites [ref_id=1]. The reproduction steps described are: (1) create a malicious page that uses CSS @import to fetch a URL from news.google.com with injected curly braces; (2) read the imported content via document.styleSheets[0].cssText to extract the Google Desktop secret key; (3) use the key to construct a query URL to the local GDS web server on port 4664; (4) import that URL via CSS and read the search results from cssText [ref_id=1].

Generated on May 26, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

13

News mentions

0

No linked articles in our index yet.