【问题标题】:CEW 73 Veracode - How to fix flaws of the type CWE 73 External Control of File Name or Path with the method of getQueryString HttpServletRequest(java)CEW 73 Veracode - 如何使用 getQueryString HttpServletRequest(java) 方法修复文件名或路径的 CWE 73 外部控制类型的缺陷
【发布时间】:2021-11-05 11:02:24
【问题描述】:

我正在从 HttpServletRquest(Java 中)检索查询字符串。

String QueryParameters = httpServletRequest.getQueryString();

Veracode 认为这是一个缺陷,

我尝试使用推荐的 OWASP ESAPI Validator 方法验证此查询字符串,但它们都不起作用,扫描仍将其识别为缺陷。

示例:

String QueryParameters = ESAPI.validator().getValidInput("Page",httpServletRequest.getQueryString(),"QueryStringRegEx",false);

QueryStringRegEx 是用于验证 QueryString 的正则表达式

【问题讨论】:

    标签: java validation servlets veracode esapi


    【解决方案1】:

    我不知道 100% 的事实,但我认为 Veracode(以及其他 SAST 引擎)仅删除 ESAPI 编码器的 XSS 污点标志,而不是 ESAPI 验证器。鉴于这里的范围和上下文有限,我无法判断它是否安全。 (这在很大程度上取决于您的正则表达式和以太,这可以与其他正在其他地方检查的受污染的用户输入相结合。)

    如果您认为它是正确的,请与您的安全团队讨论和/或将其作为误报提出质疑。

    【讨论】:

      猜你喜欢
      • 2020-07-25
      • 2018-11-23
      • 2016-03-06
      • 2018-07-06
      • 2014-09-04
      • 1970-01-01
      • 1970-01-01
      • 2020-10-03
      • 1970-01-01
      相关资源
      最近更新 更多