【发布时间】:2015-09-18 17:09:34
【问题描述】:
参见即:http://jsfiddle.net/agv9ya39/
var json = { name: "</script><script>alert(123);</script>" };
请注意,我确实想在页面中嵌入json(数据与页面密切相关,无法缓存,我不想做额外的请求)
一种解决方案是在输出之前对整个 json 字符串执行 String.Replace("</script>)。但这感觉很老套,而且我可能遗漏了其他易受 XSS 攻击的案例。
当然,我也可以确保它永远不会像这样在数据库中结束,但我宁愿有一个额外的保护,以防万一有东西滑入。
我正在使用 C# 和 Json.Net。
【问题讨论】: