admin管理员组

文章数量:1323335

Since IE 8 has an XSS filter, is there really no way to exploit an XSS exploit using this browser? For example, a cookie stealer isn't a threat to my site anymore?

(If you think this is not correct and you have a possible flaw in the filter, I'd like to know)

Since IE 8 has an XSS filter, is there really no way to exploit an XSS exploit using this browser? For example, a cookie stealer isn't a threat to my site anymore?

(If you think this is not correct and you have a possible flaw in the filter, I'd like to know)

Share edited May 10, 2011 at 17:49 Simon asked May 10, 2011 at 16:29 SimonSimon 5,7086 gold badges54 silver badges86 bronze badges 1
  • OWASP has an evasion cheat sheet. owasp/index.php/XSS_Filter_Evasion_Cheat_Sheet The Browser Hacker Handbook had some tricks as well, but its %tag trick appears beaten. – eel ghEEz Commented Mar 16, 2018 at 19:04
Add a ment  | 

3 Answers 3

Reset to default 4

The XSS-Filter in IE8 can sure be beaten. It depends on the XSS-Vuln in the page whether it's possible or not. For example you can use weird encodings or a double XSS attack. Edit: This is an in-the-wild example of an XSS-Attack that would pass the IE8-Filter: XSS on esrb

Ie basic XSS filter processes the outgoing request by first checking where the request is been generated.I mean for a reflective XSS the request may be generating from attackers system in order do put malicious script. So by extension there should be no point in looking at requests that originate from the same domain as this would be a waste of resources.

However IE is making an incorrect assumption, XSS can e from anywhere and there for any reflective XSS vulnerability can bee exploitable due to this incorrect assumption. IE has taken “location:” HTTP header redirects into consideration as well as meta refresh HTML tags. There are however other redirection methods which can be used in an attack.

Now let us assume there is a straight forward XSS vulnerability in our target application found in the xss.php file:

<?php
//xss.php
print $_GET['var'];
?>

Assume OWASP a10 violation found in the redir.php file.

<?php
//redir.php
print “<script>”;
print “document.location='”.htmlspecialchars($_GET['redir'],ENT_QUOTES).”'”;
print “</script>”;
?>

The Proof of Concept exploit for an application like this is as follows:

http://abc./redir.php?redir=http%3A%2F%2Fabc.%2Fxss.php%3Fvar%3D%253Cscript
%253Ealert%2528%2Fxss%2F%2529%253C%2Fscript%253E

Above link could originate from anywhere, including a url shrinking services . The XSS payload is the “var” GET variable. This part of the PoC has been double url encoded. There for an angled bracket “>” bees “%253E”. This is encoding fools both the htmlspecialchars() on the server as well as IE's filter. This encoded payload is unaffected by the call to htmlspecialchars() and would behave in the same way with its absence.

There are several types of XSS attack; the IE XSS filter is designed to block the most mon form of Reflected XSS attacks. See http://blogs.msdn./b/ie/archive/2008/07/02/ie8-security-part-iv-the-xss-filter.aspx for background on what the filter does.

You absolutely should continue to follow best-practices for XSS prevention.

本文标签: javascriptXSS in IEWay to bypassStack Overflow