您当前的位置: 首页 > 

ThnPkm

暂无认证

  • 1浏览

    0关注

    98博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

XSS学习 xss-Lab题解

ThnPkm 发布时间:2022-02-12 14:29:44 ,浏览量:1

目录

 XSS类型​

level 1 无过滤

level 2 input闭合

level 3 单引号闭合+添加事件

level 4 双引号闭合+添加事件

level 5 JavaScript伪协议

level 6 大小写绕过

level 7 双写绕过

level 8 编码绕过

level 9 编码+检测关键字

level 10 隐藏信息

 level 11 Referer

level 12 User-agent

level 13 cookie

level 16 空格实体转义

 XSS类型

 

 

 

level 1 无过滤

没有任何防护,直接url传xss

 name=alert(1)
level 2 input闭合

 有个input标签,尝试用"> 闭合标签

(在网页源代码中,我们输入的数据,是在表单中的value属性内,所以需要先闭合input标签,然后在注入代码,闭合标签)

">alert(1)

level 3 单引号闭合+添加事件

测试发现尖括号被转换字符实体了, 并且这题用单引号闭合 

不能script代码,转变方向,使用表单中的事件来调用alert(),前后单引号都要闭合

' onclick='alert(1) 
level 4 双引号闭合+添加事件

尝试后,查看源码,发现是过滤了, 也是"闭合

绕过与上题类似

test" onclick="alert(1) 
level 5 JavaScript伪协议

这一关把ri转换为r_i,所以考虑绕过该机制

然后发现on也被过滤了,而且所有的事件属性都是带有on的,所以在此处无法采用事件

构造一个Payload闭合闭合原标签,重新创建一个a标签

a标签中引入一个script超链接来调用弹窗

">link

  

level 6 大小写绕过

尝试之后还是对关键字进行了过滤

尝试第五关的方式">link

 这一关没有过滤大小写,用大写HREF 是可以的,

所有的标签都可以用,只要换成大写,或大小写混合就可以了

">link
">alert(1)
level 7 双写绕过

测试一下

直接过滤为空了,所以考虑双写关键字

">alert(1)
level 8 编码绕过

过滤了关键字,这题给了a链接,所以我们在这里操作

script转字符实体是script

构造payload

javascript:alert(1)

这一关我们还有一种别的方法是利用tab键进行绕过 ,用tab分隔script

javasc	ript:alert(1)
level 9 编码+检测关键字

用第八关方式,回显这个

 payload后面要加上 http://

javasc	ript:alert(1)//http://
javascript:alert(1)//http://
level 10 隐藏信息

 界面没有输入点,input被隐藏了

 F12删除hidden,因为尖括号被过滤了,所以使用事件 ,

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

也可以url直接补上

/level10.php?t_sort="onclick=alert(1) type=text"

 level 11 Referer

看wp也不是很明白,就是说抓个包,修改referer

 抓到数据包后在里面添加referer头可以实现input注入

那么可以通过修改referer来xss攻击

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

 然后放包就行了

level 12 User-agent

这题这里又是ua,也就是User-agent, 

我们继续判断是在User-agent处进行xss,抓包处理,确实如此

直接在UA后面添加就可

 放包通过

level 13 cookie

这里又是cookie,老方法试一下,我这里文件出问题了没有出来

,看wp与前两题思路一样

level 16 空格实体转义

过滤了script和空格并且把/替换成了 ;但是没有过滤所以我们构造语句:

构造语句:


可以使用%0a换行,也就是


关注
打赏
1660722558
查看更多评论
立即登录/注册

微信扫码登录

0.0392s