[<prev] [next>] [day] [month] [year] [list]
Message-ID: <200353013161.006411@x1>
Date: Fri, 30 May 2003 11:01:34 -0600
From: "M. Burnett" <mb@...o.net>
To: <bugtraq@...urityfocus.com>
Subject: Internet Explorer URL spoofing threat
Recently I advised Microsoft of a vulnerability in Internet Explorer
that would cause the browser to browse to one web site but display a
completely different URL in the address bar. Due to inconsistent
handling of authentication credentials in a URL, IE will parse the
URL one way when browsing and another way when displaying it in the
address bar. The result is that an attacker could deceive a user by
using a specially crafted URL that will show a real site's URL in the
address bar yet browse to a completely different, perhaps spoofed,
site.
But there's a catch: the URL must be typed or pasted into the address
bar to work; you can't just click on a link. Because of this
limitation, Microsoft decided to not treat this as an urgent issue
and scheduled it for the next service pack. I disagree with that
decision but I understand and respect their reasons for making it.
Unfortunately, that left me to decide whether I should release an
advisory on this or not. While not being able to click on a URL does
make it more difficult to execute this attack, it certainly does not
limit the ability to exploit this. Since many e-mail readers have
trouble converting wrapped URL's into clickable links, all it takes
is a URL in an e-mail that is long enough to wrap, forcing a user to
copy/paste the URL into a browser.
In fact, consider this snippet from an e-mail you get when signing up
for a Microsoft Passport account:
*If clicking a link doesnt work:
Select and copy the entire, appropriate link.
Open a browser window and paste the link in the address bar.
So it probably isn't that hard to trick a user into pasting a long
URL into IE. In fact, I wonder how many users would fall for this
one:
*For security purposes, DO NOT click on this link. Either paste or
manually type this URL into your browser window.
Microsoft told me that part of their decision was based on the fact
that typing or pasting a URL would give the user more opportunity to
identify the spoofed portion, but that assumption is backwards.
Attacks of this nature are not based on how many users won't fall for
it, but the fact that eventually someone will. Look at the Nigerian
e-mail scam. I get three e-mails a day asking for urgent assistance
and wonder who would ever fall for those. But people do. Even one
percent of a hundred million e-mail users is a lot of people.
So while a clickable link is more convenient, it is my opinion that
it hardly reduces the effectiveness of this attack. On the other
hand, if Microsoft is not going to release a fix at this time, it
would certainly not be ethical of me to release details of the
vulnerability.
So this is my advisory: DON'T TRUST THE URL IN THE ADDRESS BAR.
Why is this all so important? Obviously there is the threat of
spoofing a web site. But consider the impact of not being able to
trust a URL. For example, eBay tells users to check the URL in the
address bar to be sure they are logging in using an official login
page (see http://pages.ebay.com/help/new/account_protection.html).
eBay's anti-spoofing strategy completely relies on the assumption
that you can trust the URL in the address bar. But you can't trust
it.
Even using a SSL connection may not be effective. If the spoofed site
had a valid SSL certificate for itself, IE would show the lock icon
in the status bar, indicating that the certificate was valid, even
though not for the URL listed in the address bar. If you clicked on
the icon, it would show a valid certificate, but for the wrong site.
Unless users always make a habit of clicking on the lock icon to
verify the owner of the certificate (which they don't), the lock icon
would actually help the attacker to deceive the user. A valid URL and
a lock icon indicating a valid certificate provide a powerful
deception.
While this may seem like a minor issue to some, I felt the it was
important enough to address because:
- Many users trust the URL in the address bar, this issue shows that
the address bar cannot be trusted and no security decision should be
made based on the contents of the address bar.
- The attack can be executed anonymously and on a large scale any
number of ways. Ask any Paypal or eBay how many times they get
e-mails asking them to log in to their account (to a spoofed login
page) through a link or form provided in the e-mail.
- I have found one known form of the attack, yet other forms may yet
be discovered in IE or other browsers. Further, future attacks may be
discovered that are never made public; attacks already exist that are
not public.
Without some separate form of verification, address bars cannot be
trusted. They can take input from an untrusted source and can
therefore be exploited. This brings up some interesting issues. As
security in general has improved over the last few years, we have
seen a change in attack trends. We have seen many more attacks on the
average user, attacks that involve the abuse of trust.
Trustworthy Computing is more than fixing your software code, but
coming up with innovative new techniques for establishing and
verifying trust.
Mark Burnett
www.iissecurity.info
Powered by blists - more mailing lists