Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 Grails 架构中,我们有一些请求可以发送%0d到%0a请求参数中。这是换行和回车的 Ascii 编码文本。在这个请求中,发送过来的参数也被返回。这意味着我们应该发回%0a %0d ,但我们不是。您实际上可以在响应中看到换行符和回车符。
%0d
%0a
我被告知这是一个安全风险,因为我们会解释文本。这个对吗?
是否有一个 grails 解决方案,您可以确保没有任何控制器将 Json 返回到 Ajax 请求或模型返回到 GSP 解码编码文本。
谢谢
查看 grails 文档的安全部分——尤其是XSS 预防部分。
如果您没有对请求参数进行编码 - 您的应用程序的用户可能会注入自己的代码来攻击您的应用程序。
我没有关于您的应用程序的详细信息,但您应该将参数编码为 html。您可以将其设置为您的默认值Config.groovy:
Config.groovy
grails.views.default.codec = "html"
如果设置此默认值,则必须注意双重编码。如果一个tagLib或一个插件也将参数显式编码为 html,则可能会发生这种情况。
tagLib