0

在 Grails 架构中,我们有一些请求可以发送%0d%0a请求参数中。这是换行和回车的 Ascii 编码文本。在这个请求中,发送过来的参数也被返回。这意味着我们应该发回%0a %0d ,但我们不是。您实际上可以在响应中看到换行符和回车符。

我被告知这是一个安全风险,因为我们会解释文本。这个对吗?

是否有一个 grails 解决方案,您可以确保没有任何控制器将 Json 返回到 Ajax 请求或模型返回到 GSP 解码编码文本。

谢谢

4

1 回答 1

1

查看 grails 文档的安全部分——尤其是XSS 预防部分。

如果您没有对请求参数进行编码 - 您的应用程序的用户可能会注入自己的代码来攻击您的应用程序。

我没有关于您的应用程序的详细信息,但您应该将参数编码为 html。您可以将其设置为您的默认值Config.groovy

grails.views.default.codec = "html"

如果设置此默认值,则必须注意双重编码。如果一个tagLib或一个插件也将参数显式编码为 html,则可能会发生这种情况。

于 2013-09-25T09:50:44.367 回答