我们是否需要对资源使用 HttpUtility.HtmlEncode 来防止 XSS?
我们需要在我们的网站上使用 HttpUtility.HtmlEncode。我们需要将其用于资源吗?是否存在潜在威胁?
<%=HttpUtility.HtmlEncode(Resources.MyResourceString)%>
We need to use HttpUtility.HtmlEncode on our website. Do we need to use it for Resources? Is there any potential threat?
<%=HttpUtility.HtmlEncode(Resources.MyResourceString)%>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您的资源是 HTML,则不要对它们重新编码。如果它们是文本,则对它们进行 HtmlEncode。
如果您的资源只是普通的旧文本(即可能包含原始与号或尖括号),那么即使您没有打开 XSS 漏洞,您仍然需要对它们进行 HtmlEncode,以便您可以生成有效的 HTML。
If your resources are HTML, then don't reencode them. If they're text, then HtmlEncode them.
If your resources are just plain old text (i.e. could contain raw ampersands or angle brackets), then even if you don't open up an XSS hole, you still need to HtmlEncode them so that you'll generate valid HTML.
如果您的资源来自已知的安全来源(我怀疑它们确实如此),那么您不需要这样做,不。
If your resources come from a known-safe source (which I suspect they do), then you don't need to do that, no.
不是为了防止跨站点脚本编写 - 也就是说,除非您的用户有权访问您的应用程序的资源并且可以插入恶意内容!
Not to prevent cross-site scripting - that is, unless your users have access to the resources for your application and can insert something malicious!