一、反射型XSS漏洞挖掘
通过之前的基础,我都知道了反射型XSS漏洞主要出现url中,那么它的输出点是在哪里呢?常见的输出场景如下:
HTML标签之间,如:<div id="body">[输出]</div> HTML标签之内,如:<input type="text" vule="[输出]" /> 成为JavaScript值,如:<script>a="[输出];...."<script/> 成为CSS的值,如:<style>body{font-size:"输出"px;...}</style>
1.1 HTML标签之间
最普通的场景就是出现在HTML标签之间<div id="body">[输出]</div>,那么我们直接提交
?id=1<script>alert(1)</script>
就可以触发XSS漏洞了。如果出现下面这些标签呢?
<title></title> <textarea></textarea> <iframe></iframe> <noscript></noscript> <noframes></noframes> <plaintext></plaintext>
如代码<title> <script>alert</script> </title>,会弹出框吗,答案是都不会的,上面的这些标签之间是无法解析脚本的。我们需要把payload改为如下的代码:
</title><script>alert(1)</script>
除了闭合标签外,我们还可以利用它们自身可执行脚本的性质来构造特殊的payload。
1.2 HTML标签之内
最普通的输出常为<input type="text" vule="[输出]" />,要触发XSS漏洞,有以下两种方法: