Home page logo

fulldisclosure logo Full Disclosure mailing list archives

Hotmail Cross-Site Scripting Vulnerability #1
From: "Rafel Ivgi, The-Insider" <rivgi () finjan com>
Date: Thu, 14 Oct 2004 19:20:35 +0200

Finjan Security Advisory
Hotmail Cross-Site Scripting Vulnerability

Finjan has discovered a script injection vulnerability in
Hotmail that allows a remote attacker to execute malicious
scripts when the victim is reading his/her mail.

Technical Description
Hotmail’s mobile code filtering mechanism is based on an active
content filter whose purpose is to block the injection of any
active content into Hotmail messages. Hotmail’s filter identifies
any possibly malicious HTML tags, properties and elements,
and then modifies them into a non-malicious code.

When analyzing an HTML condition comment tag 
(for example: “<![if IE gte 4]>”), Hotmail’s filter changes it to
a comment (e.g. “<! [if IE gte 4]>”). A space character is added
after the “!”, making the code inside the condition be treated as
a comment rather than as an executable. Any potentially malicious
code inside the condition is not altered.

For example: 
<! [if IE gte 4]><style>@\im\port'\ja\vasc\ript:alert()';</style>

In order to bypass this protection, a comment tag can be added before
the condition tag.

For example: 
<!--   <![if IE gte 4]><style>@\im\port'\ja\vasc\ript:alert()';</style>

At this stage the code is harmless since Internet browsers treat
this script as an HTML comment. However, a possible risk arises
when an HTML condition comment tag opener (“<!”) is inserted at
the beginning of the code.

For example: 
<! <!--   <![if IE gte 4]><style>@\im\port'\ja\vasc\ript:alert()';</style>

Since Hotmail’s HTML filter treats this code as a comment, it does
not filter out the script. In contrast, Internet browsers do not
treat this script as a comment, but rather execute the code inside
the condition tag. In this manner, any tag that supports style,
events or javascript execution can be used to remotely call a javascript file.

The injected javascript code could be used for:
• Automatically launching malicious code 
• Stealing the victim’s password by using a spoofed re-login window
• Reading the victim’s inbox and contacts
• Sending email messages without any user authorization.

The Code (Proof of Concept)
----------------------cut here-----------------------
<![if IE gte 4]><style>@\im\port'\ja\vasc\ript:alert()';</style>
----------------------cut here-----------------------

Vulnerability Status 
Vendor was notified on Sep 8th, 2004.
The bug is now fixed.

Rafel Ivgi, Malicious Code Research Center (MCRC), Finjan Software Ltd.
This message was scanned for malicious content and viruses by Finjan Internet Vital Security 1Box(tm)
Full-Disclosure - We believe in it.
Charter: http://lists.netsys.com/full-disclosure-charter.html

  By Date           By Thread  

Current thread:
  • Hotmail Cross-Site Scripting Vulnerability #1 Rafel Ivgi, The-Insider (Dec 16)
[ Nmap | Sec Tools | Mailing Lists | Site News | About/Contact | Advertising | Privacy ]