[NT] Flaw in ISA Server Error Pages Could Allow Cross-Site Scripting Attack
From: SecuriTeam (support_at_securiteam.com)
Date: 07/17/03
- Previous message: SecuriTeam: "[REVS] CDT Plug-in Bug and How to Exploit Vulnerabilities Using Only ASCII Character Set"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
To: list@securiteam.com Date: 17 Jul 2003 11:24:26 +0200
The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com
- - promotion
Beyond Security in Canada
Toronto-based Sunrays Technologies is now Beyond Security's representative in Canada.
We welcome ISPs, system integrators and IT systems resellers
to promote the most advanced vulnerability assessment solutions today.
Contact us at 416-482-0038 or at canadasales@beyondsecurity.com
- - - - - - - - -
Flaw in ISA Server Error Pages Could Allow Cross-Site Scripting Attack
------------------------------------------------------------------------
SUMMARY
ISA Server contains a number of HTML-based error pages that allow the
server to respond to a client requesting a Web resource with a customized
error. A cross-site scripting vulnerability exists in many of the error
pages that are returned by ISA Server under specific error conditions.
To exploit this flaw, an attacker would have to first be aware of a
specific ISA server and its access policies or host an ISA server of their
own and create specific access policies designed to exploit this
vulnerability. The attacker could then construct a request to trigger a
page refusal. Once the attack was crafted, the attacker would have to host
a Web site containing the link, or send the link to the user in the form
of an HTML e-mail. After the user previewed or opened the e-mail, the
malicious site could be visited automatically without further user
interaction. In the Web-based attack scenario, an attacker would have no
way to force a user to visit the Web site.
DETAILS
Affected Software:
* Microsoft Internet Security and Acceleration (ISA) Server 2000
Mitigating factors:
* The vulnerability could only be exploited if the attacker could entice
another user into visiting a Web page, or opening an HTML-based e-mail.
* The request must be one that would cause the ISA server to respond with
one of several affected error pages.
* The vulnerability would not normally enable an attacker to gain any
privileges on an affected ISA Server computer, breach the firewall, or
compromise any cached content, unless the user is operating on the ISA
server itself and is using the Web Proxy service to access the Internet.
Patch availability:
Download locations for this patch
* Microsoft ISA Server:
English -
<http://download.microsoft.com/download/4/6/4/464c95cd-8488-410d-bacb-69b25eaa7822/ISA2000-KB816456-x86.exe> http://download.microsoft.com/download/4/6/4/464c95cd-8488-410d-bacb-69b25eaa7822/ISA2000-KB816456-x86.exe
French -
<http://download.microsoft.com/download/a/d/6/ad64a2af-d359-44e5-88d9-321269f1afde/ISA2000-KB816456-x86.exe> http://download.microsoft.com/download/a/d/6/ad64a2af-d359-44e5-88d9-321269f1afde/ISA2000-KB816456-x86.exe
German -
<http://download.microsoft.com/download/9/f/3/9f39d8a7-4897-43e5-bd90-70cc468139ae/ISA2000-KB816456-x86.exe> http://download.microsoft.com/download/9/f/3/9f39d8a7-4897-43e5-bd90-70cc468139ae/ISA2000-KB816456-x86.exe
Spanish -
<http://download.microsoft.com/download/5/a/a/5aabcffe-e89c-4275-b2ba-64c47e42f078/ISA2000-KB816456-x86.exe> http://download.microsoft.com/download/5/a/a/5aabcffe-e89c-4275-b2ba-64c47e42f078/ISA2000-KB816456-x86.exe
Japanese -
<http://download.microsoft.com/download/1/5/b/15b400a5-5b40-4721-92b0-caef3f190146/ISA2000-KB816456-x86.exe> http://download.microsoft.com/download/1/5/b/15b400a5-5b40-4721-92b0-caef3f190146/ISA2000-KB816456-x86.exe
What's the scope of the vulnerability?
This is a cross-site scripting (XSS) vulnerability that could allow an
attacker to construct a request to an affected server that would cause a
Web page containing script to be sent to another user. The script would
execute within the user's browser as though it had come from the
third-party site. This would let it run using the security settings
appropriate to the third-party Web site, as well as allowing the attacker
to access any data belonging to the site. The vulnerability could only be
exploited if the user opened an HTML-based e-mail or clicked a specially
crafted link.
What's cross-site scripting?
Cross-site scripting (XSS) is a security vulnerability that potentially
enables a malicious user to "inject" code into a user's session with a Web
site. Unlike most security vulnerabilities, XSS does not apply to any
single vendor's products - instead, it can affect any software that runs
on a Web server and that does not follow defensive programming practices.
How does XSS work?
At a high level of detail, here is how XSS works. Suppose that Web site A
offers a search feature that lets a user type a word or phrase to search
for. If the user typed "banana" in as the search phrase, the site would
search for the phrase and then generate a Web page saying, "I'm sorry, but
I can't find the word 'banana'.". It would send the Web page to the user's
browser, which would then parse the page and display it. Now suppose that,
instead of typing "banana" as the search phrase, the user typed something
like "banana < SCRIPT> Alert('Hello'); </SCRIPT>". If the search feature
were written to blindly use whatever search phrase it's provided, it would
search for the entire string and create a Web page saying "I'm sorry, but
I can't find the word "banana < SCRIPT> Alert('Hello'); </SCRIPT>"".
However, all of the text beginning with "< SCRIPT>" and ending with "<
/SCRIPT>" is actually program code, so when the page was processed, a
dialog box that says "Hello" would appear by the user's browser.
So far, this example has only shown how a user could "relay" code off a
Web server and make it run on his own computer. This is not a security
vulnerability. However, it's possible for a malicious Web site operator to
invoke this vulnerability to run on the computer of a user who visits his
site. If Web site B were operated by a malicious user who was able to
entice the user into visiting it and clicking a hyperlink, Web site B
could go to Web site A, fill in the search page with malicious script, and
submit it on behalf of the user. The resulting page would return to the
user (because the user, having clicked on the hyperlink, was ultimately
the requester), and process on the user's computer.
What could the script do on the user's machine? In the security context of
Web site A?
The script from Web site B (the attacker's site) would run on the user's
computer as though it had come from Web site A. In practical terms, this
would mean that it would run using the security settings on the user's
machine that were appropriate to Web site A.
The script from Web site B would be able to access cookies and any other
data on the user's system that belonged to Web site A.
What is ISA Server?
ISA Server provides both an enterprise firewall and a high-performance Web
cache. The firewall protects the network by regulating which resources can
be accessed through the firewall, and under what conditions. The Web cache
helps improve network performance by storing local copies of frequently
requested Web content. ISA Server can be installed in three modes:
firewall mode, cache mode, or integrated mode.
Could an attacker use the vulnerability to take control of an ISA Server
computer?
No. This is a cross-site scripting attack only. There is no capability to
usurp any administrative privileges on the ISA Server.
Could an attacker use the vulnerability to breach the security of the
firewall?
No. There is no capability to use this vulnerability to lower the security
the firewall provides to the network. Firewall mode allows an
administrator to secure network communication by configuring rules that
control communication between the corporate network and the Internet.
Cache mode improves network performance by storing frequently accessed Web
pages on the server itself. In integrated mode, all cache and firewall
features are available.
What causes the vulnerability?
The vulnerability results because some of the error pages returned by ISA
Server display the requested URL in HTML text without proper encoding.
What's wrong with ISA Server error pages?
The homepage() function in many of the ISA error pages does not correctly
encode the URL for displaying in HTML text. As a result, it is possible to
embed a link to script on a separate Web site and cause this to be
returned to the Web browser.
What would this vulnerability enable an attacker to do?
The vulnerability would allow an attacker who operated a Web site and was
able to lure another user into clicking a link on it to carry out a
cross-site scripting attack via another Web site that was running through
ISA Server. This would enable the attacker to run script in the user's
browser using the security settings of the other Web site, and to access
cookies and other data belonging to it.
How could an attacker exploit this vulnerability?
To exploit this flaw, an attacker would have to first be aware of a
specific ISA server and its access policies, or host an ISA server of
their own and create specific access policies designed to exploit this
vulnerability. The attacker could then construct a request to trigger a
page refusal. Once the attack was crafted, the attacker would have to host
a Web site containing the link or send the link to the user in the form of
an HTML e-mail. After the user previewed or opened the e-mail, the
malicious site could be visited automatically without further user
interaction. In the Web-based attack scenario, an attacker would have no
way to force a user to visit the Web site.
You said that the point of the attack would be for the attacker to get
script running in the user's browser using the security settings of my Web
site. What specific capabilities would the attacker gain by doing this?
It would vary from site to site, based on what Security zone the
attacker's site and yours were placed in.
If they were both in the same zone (and, by default, all Web sites reside
in the Internet zone unless the user moves them), they would both be
subject to exactly the same security restrictions, and the attacker would
gain different abilities through the vulnerability. For instance, an
attacker could affect the relationship between a user and their Web-based
e-mail.
If the user had put the attacker's site into a more restricted zone than
yours, the attacker would gain the ability for his script to do anything
on the user's computer that script from your site could do.
If the user had put your site into a more restricted zone than yours, the
attacker would actually lose capabilities through the attack.
It's important to note, however, that regardless of the security settings,
the attacker's script would always be able to access cookies and any other
data on the user's system belonging to the third-party site. This is
because, as far as the browser can tell, the attacker is the third-party
site.
How does the patch eliminate the vulnerability?
The patch eliminates the vulnerability by removing the homepage()
functionality as well as the JavaScript command for refreshing the page
and for navigating back.
ADDITIONAL INFORMATION
The information has been provided by
<mailto:0_50146_E51E4D7D-DECD-43AE-9A29-36080E8D4C3C_US@Newsletters.Microsoft.com> Microsoft Product Security.
========================================
This bulletin is sent to members of the SecuriTeam mailing list.
To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@securiteam.com
In order to subscribe to the mailing list, simply forward this email to: list-subscribe@securiteam.com
====================
====================
DISCLAIMER:
The information in this bulletin is provided "AS IS" without warranty of any kind.
In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.
- Previous message: SecuriTeam: "[REVS] CDT Plug-in Bug and How to Exploit Vulnerabilities Using Only ASCII Character Set"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Relevant Pages
- [NT] Cumulative Security Update for Internet Explorer (MS08-024)
... The following security advisory is sent to the securiteam mailing list, and can be found at
the SecuriTeam web site: http://www.securiteam.com ... Get your security news from
a reliable source. ... This security update resolves one privately reported vulnerability.
... An attacker who successfully exploited this vulnerability could gain the ...
(Securiteam) - [NT] Vulnerability in Windows Object Packager Allows Remote Execution (MS06-065)
... The following security advisory is sent to the securiteam mailing list, and can be found at
the SecuriTeam web site: http://www.securiteam.com ... Get your security news from
a reliable source. ... A remote code execution vulnerability exists in Windows Object Packager
... An attacker who successfully exploited this ... (Securiteam) - [NT] Vulnerability in Microsoft Windows Allows Code Execution (MS06-043)
... The following security advisory is sent to the securiteam mailing list, and can be found at
the SecuriTeam web site: http://www.securiteam.com ... Get your security news from
a reliable source. ... There is a remote code execution vulnerability in Windows that results
... If a user were logged on with administrative user rights, an attacker who ...
(Securiteam) - [NT] 28 March 2002 Cumulative Patch for Internet Explorer
... The following security advisory is sent to the securiteam mailing list, and can be found at
the SecuriTeam web site: http://www.securiteam.com ... * A vulnerability in the
zone determination function that could allow a ... script embedded in a cookie to be run in the
Local Computer zone. ... attacker to invoke an executable already present on the
user's machine. ... (Securiteam) - Re: 0x8024401B
... > That security bulletin encourages the installation of KB899753. ... >
I uninstalled that KB so I could get web browsing working again! ... Web site from
a Windows XP-based computer that is behind a firewall ... ISA Server is configured to respond
to outgoing ... (microsoft.public.windowsupdate)