xss-level 1-5
level 1
打开靶场看到url有参数

发现网页源码的head中的

level 2
用level 1 的操作可以发现没有跳出弹窗

在搜索框中输入<script>alert('1')</script>,会提示报错信息
仔细的看就会发现搜索按钮前就是多的">符号(也可用brup抓包,可以看的很清楚)

此时可以先闭合前面的<",再注释掉后面的">即可正常的执行其中的xss语句
"><script>alert('1')</script>\

level 3
使用level1与2的方法,显然都是不对的,尝试加入鼠标事件(htmlspecialchars默认配置是不过滤单引号),闭合单引号 'onclick='window.alert()

然后用鼠标点击输入框即可
level 4
在输入框中输入`'',查看网页源码可以知道

<和>俩符号被过滤了,
可以使用level 3的方法
"onclick="window.alert()
--提交后鼠标点击触发事件
也可以使用(level 3 )同理--HTML事件
" oninput="alert('是')
-- 提交后输入任意值触发事件

level 5
在输入框中输入"><script>alert('yes')</script>,查看网页源码可以知道
在源代码发现字符被替换

此时可以考虑使用大小写混合法"><sCRipt>alert('yes')</scRipt>
此时结果没有发生任何变化
再考虑HTML事件" oninput="alert('是') ------ 无用
再考虑鼠标点击事件"onclick="window.alert() --------无用
使用伪链接方式假造一个超链接尝试:
"> <a href="javascript:alert('test')">链接</a>
执行后点击链接即可


浙公网安备 33010602011771号