基于Dom的xss示例

时间:2015-04-20 11:04:30

标签: html xss

对于学校作业,我们必须建立一个易受基于dom的xss攻击的网站。我们得到的信息非常少而且没有例子。

我在html文件中使用了以下代码:

Select your language:

<select><script>
    document.write("<OPTION value=1>"+document.location.href.substring(document.location.href.indexOf("default=")+8)+"</OPTION>");
    document.write("<OPTION value=2>English</OPTION>");
</script></select>

然后我启动了该网站并尝试使用以下方法附加网址:

?default=<script>alert(document.cookie)</script>

哪个不做任何事情,然后又用:

#default=<script>alert(document.cookie)</script>

哪个也没有做任何事情。

我错过了什么?

1 个答案:

答案 0 :(得分:0)

Chrome可能会阻止您执行XSS攻击,因为它有内置过滤器。大多数现代浏览器都启用了默认的XSS保护。为了测试这个,我会使用Firebox,并禁用XSS过滤器。为此,请转到about:config并将browser.urlbar.filter.javascript值设置为false。

我还必须更改HTML测试用例。我需要对default参数进行URI解码,以便脚本运行。

Select your language:

<select><script>
    document.write("<OPTION value=1>"+decodeURIComponent(document.location.href.substring(document.location.href.indexOf("default=")+8))+"</OPTION>");
    document.write("<OPTION value=2>English</OPTION>");
</script></select>