【问题标题】:JBOSS 6.4.20 validates special characters like curly braces and throws 400 bad request errorJBOSS 6.4.20 验证花括号等特殊字符并抛出 400 bad request 错误
【发布时间】:2019-07-02 09:00:31
【问题描述】:

我已经处理了 URL 篡改的场景,我使用正则表达式进行过滤,比较查询字符串,如果其中有任何 esacpe 或特殊字符,它会返回自定义的“无效参数”消息,显示在屏幕。

现在这在我们使用 JBOSS 6.4.10 之前工作正常,但是在将其升级到 JBOSS 6.4.20 之后,它甚至没有点击过滤器,JBOSS 6.4.20 正在验证具有转义字符/花括号的请求 URI在我的情况下并抛出 400 bad request 错误。

请避免提供升级到 JBOSS 7 等解决方案。我知道 JBOSS 7 有一个标志“ALLOW_UNESCAPED_CHARACTERS_IN_URL”解决了这个问题,但我不能使用 JBOSS 7。

【问题讨论】:

    标签: jboss wildfly wildfly-8 jboss6.x jboss5.x


    【解决方案1】:

    据我所知,此行为与以下安全漏洞有关:CVE-2016-6816。 试试tomcat.util.http.parser.HttpParser.requestTargetAllow 系统属性。此属性值中列出的任何字符都将再次被允许。另一种选择是降级到 JBoss EAP 6.4.12 或更早版本。

    【讨论】:

      【解决方案2】:

      在参数Standalone.conf文件中添加以下内容

      JAVA_OPTS="$JAVA_OPTS -Dtomcat.util.http.parser.HttpParser.requestTargetAllow='{|}'"
      

      【讨论】:

        猜你喜欢
        • 2012-01-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-05-29
        • 2013-10-02
        • 2023-03-21
        • 2015-11-16
        • 1970-01-01
        相关资源
        最近更新 更多