【发布时间】:2017-03-30 23:18:18
【问题描述】:
我有一个带有以下图片的 MustacheJS 模板:
<div class="thumbnail" style='background-image: url({{avatar}});'></div>
{{avatar}} 变量是根据用户输入填充的,无需验证,用户可以输入他们想要的任何内容。
这是安全的,还是有人可以通过它传递一些邪恶的输入并执行 XSS?
【问题讨论】:
-
不,这不安全。您需要验证和清理输入。
-
我们必须查看您的确切代码。
-
@RoryMcCrossan 你能否提供一个输入值,它会导致 JavaScript 被执行?感谢您的回复!
-
@Feathercrown 你想看什么代码? avatar-variable 来自用户输入,它被传递到您可以在上面看到的模板。谢谢!
-
好的 - 在这种情况下 mustache 会为您转义 HTML。仍然不理想,但至少它应该阻止任何 XSS
标签: javascript jquery html xss mustache