alert(1) to win XSS在线练习题
Warmup
|
|
基本操作:
|
|
Adobe
|
|
此题将"
进行了转义,可以再传入一个\
将前面的\"
进行转义,使得后面的引号逃逸出来。
|
|
JSON
|
|
json.stringify
会转义双引号"
而不会转义<>
,所以直接闭合即可
|
|
JavaScript
|
|
由于最终内容为url中,而s
中的内容需要通过JSON.stringify()
,所以可以使用urlencode
,将"
用%22
代替即可。
|
|
Markdown
|
|
发现< 和 "
都被转义了,而程序会将http
和 [[a|b]]
分别替代为了<a>
和<img>
标签,这里我们构造,使得<a>
标签中内嵌一个<img>
然后前后引号进行闭合,从而进行逃逸,结果如下:
|
|
DOM
|
|
这里需要一个脑洞,就是create+m[0]
如果m[0]
是某些字段,使得其成为关键字,创建某些节点。1Comment#--><img src=x onerror=alert(1)><!--
Callback
|
|
使用'
进行闭合,使其成为一个字符串。之后即可
|
|
Skandia
|
|
由于使用了Upper
函数,js函数会失效,而使用标签是可以的。这里使用HTML实体编码,大写后依然有效。
|
|
Template
|
|
可以利用十进制或者是十六进制来替换<>,来绕过这个函数。
|
|
JSON ][
|
|
通过重复构造出最终结果。
|
|
Callback ][
|
|
基本操作
|
|
Skandia ][
|
|