ESAPI 记录器抛出 org.owasp.esapi.errors.ConfigurationException:HttpUtilities.MaxHeaderNameSize 的 SecurityConfiguration 类型不正确

ESAPI Logger throwing org.owasp.esapi.errors.ConfigurationException: SecurityConfiguration for HttpUtilities.MaxHeaderNameSize has incorrect type

在我的应用程序中使用以下代码生成 excel 文件作为 API 响应 header.

的附件

应用代码:

ESAPI.httpUtilities().setHeader(response,"Content-Disposition", "attachment;filename=" + fileName + "");

更改为 ESAPI 2.2.3.1 后由于漏洞问题排除了 log4J,并在 ESAPI.Properties 中添加了以下行 ESAPI.Logger=org.owasp.esapi.logging.slf4j.Slf4JLogFactory Logger.UserInfo=false Logger.ClientInfo=false 我的应用程序出现以下错误。我有与 ESAPI 版本 2.0.1 相同的 ESAPI.properties,它适用于上述应用程序代码。 错误信息:

org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.owasp.esapi.errors.ConfigurationException: SecurityConfiguration for HttpUtilities.MaxHeaderNameSize has incorrect type] with root cause
org.owasp.esapi.errors.ConfigurationException: SecurityConfiguration for HttpUtilities.MaxHeaderNameSize has incorrect type
    at org.owasp.esapi.reference.DefaultSecurityConfiguration.getIntProp(DefaultSecurityConfiguration.java:1265)
    at org.owasp.esapi.reference.DefaultHTTPUtilities.setHeader(DefaultHTTPUtilities.java:890)
    at com.caremore.togetherness.controller.ExportDataController.getMemberReferralData(ExportDataController.java:93)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)

我认为您在项目的 esapi.properties 文件中遗漏了一个 属性,这是 org.owasp.esapi 2.2.3.1 library/jar 的最新依赖项所必需的 更新 esapi.properties 文件以包含缺少的条目后

HttpUtilities.MaxHeaderNameSize=256

我在 this link 中注意到了这一点。 它可能会按预期锻炼。

这是 link 文件之间有差异