靶场网址: 欢迎来到XSS挑战
自己的记录备份。
Level 1
Level 2
直接注,发现:
使用”>闭合,通过。
Level 3
输入框内容会被转译。
可使用‘代替“闭合value输入,之后构造onclick
Level 4
测试。发现<>被过滤掉。
调整语句构建
Level 5
会在关键字中间加分隔。
换语句。发现onclick和onmouseover也被禁止
但是javascript依旧可正常写入。
使用语句"> <a href=javascript:alert(‘xss’) > xss</a>//,构建链接,成功。
Level 6
Script等无法注入。使用之前的构造链接语句,发现href被过滤。
使用大小写尝试绕过
闭合。
Level 7
会把关键词删除。例如onclick会变成click
但可以发现
可通过
Level 8
有过滤的构造链接,过滤包括javascript
可以对javascript进行unicode编码
Level 9
有关键字会提示不合法。
转换后依旧不合法。
使用正常地址链接,合法。
把正常地址链接插入尾部,成功插入。
换用javascript语句,在http前加上//注释后通过。
Level 10
发现了隐藏的输入区域
通过更改顶端url,可尝试修改隐藏参数,确定哪个值可被修改。
插入onclick
Level 11
发现t_sort可以修改,但是会处理特殊符号
查到的解决方法为使用burpsuite抓包处理。具体操作为:
--------------------------------------------
先将上一关的恶意代码给传上去
?keyword=hcj&t_sort=" type="`hcj`" οnclick= alert(`xss`)>//
可以看到在原始的请求数据包中的referer这个请求头数值是一个奇怪的奇怪得网址,包含我们想要上传得恶意代码而且t_ref的回显也是那串奇怪的网址 不由得感觉我们的突破口在这里 。
在我们尝试给referer替换成 hcj 点击 go,发现在t_ref的回显也是 hcj
所以如果我们在referer 处写
"type="text" οnclick="alert('xss')>//
那么就可以快乐的上传上我们的 恶意代码了
——原文链接:https://blog.csdn.net/m0_62879498/article/details/123592092——
但是因为edge改端口太麻烦还会造成一系列问题,懒得做,直接偷懒
Bp一般是和firefox一起使用,火狐是改端口代理很方便的浏览器,而且不需要动本机的设置。Edge要改只能通过修改本机系统设置,会导致同时无法访问其他网站。
Level 12
依旧是一堆隐藏框,可修改的是t_sort,且符号会被处理。需要使用BP
--------------------------------
(原文链接:XSS labs 闯关大合集_xss 欢迎用户teset-CSDN博客)
仔细观察抓到的包
发现User-Agent头的的值和t_ua的value值很相似
我们尝试更改 User-Agent 头的值,查看我们的 t_ua 的value的值的变化情况
所在 User-Agent 处写
"type="text" οnclick="alert('xss')>//
----------------------------------
注:user-agent在抓到的包里可以找到。
Level 13
和前两个相同。通过抓包可以发现突破位置为cookie,和t_cook的值一样。修改cookie会导致t_cook变化。
在BP中修改cookie,插入,发包。
Level 14
链接已失效。查资料可知是exif xss漏洞。
参考网址:【巨人肩膀上的矮子】XSS挑战之旅---游戏通关攻略(更新至18关) - 先知社区
Level 15
修改URL
被写入
通过实验可发现特殊符号被过滤,无法简单闭合。
但可通过构造包含恶意代码的文件访问地址(此处访问第一关)解决。
----(参考资料XSS labs 闯关大合集_xss 欢迎用户teset-CSDN博客)------------
onerror 事件在视频/音频(audio/video)数据加载期间发生错误时触发,所以在构造payload 的时候创建一个第一关没有的文件名触发 onerror。
---------------------------------------------------------------------------------------
Level 16
可以直接插入,但空格和关键字script等被处理。
在HTML中%0a和%0D是可以当成空格使用的,用换行符%0a(回车)或%0D(回车)取代空格。
Level 17
发现会写入此位置
构造语句插入。
本题的原理(引自https://blog.csdn.net/ldzhhh/article/details/106324088)
Level 18
和17一模一样。直接通过。
//19和20搞了半天没搞出来