gpt4 book ai didi

java - JSF 2.0; escape ="false"防止 XSS 的替代方案?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:52:36 27 4
gpt4 key购买 nike

在我的 jsf 网络应用程序中,我使用 messages.properties 来输出一些文本。此文本可能有 html 换行符,因此请格式化输出文本。

如果我将 escape="false"属性设置为输出文本,一切正常。

问题是,这个值为“false”的属性并不能防止 vor XSS(跨站点脚本),所以我删除了这个属性并使用默认值“true”。

所以,我不想像这个例子那样在我的 messages.properties 中拆分所有文本行来分隔属性:

mytext = This is my text<br />with line break and user value {0}...

之后:

mytext1 = This is my text
mytext2 = with line break and user value {0}...

除了 escape="false"之外还有什么方法可以防止 xss 吗?

谢谢!

最佳答案

应该可以使用 standard jstl functions 转义用户提供的参数在 http://java.sun.com/jsp/jSTL/functions 命名空间中:

<h:outputFormat value="#{bundle.myMessage}" escape="false">
<f:param value="#{fn:escapeXml(param)}"/>
</h:outputFormat>

关于java - JSF 2.0; escape ="false"防止 XSS 的替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9972870/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com