You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ESAPI 2.4.0.0正则无法匹配\0转义字符问题求助

问题:ESAPI 2.4.0.0及以上版本中NULL字符(\0)触发参数验证失败

背景配置

在ESAPI.properties中配置了以下参数验证正则:

Validator.HTTPParameterName=^\[\u0080-\uFFFFa-zA-Z0-9.,;?!:%'\\p{L}$\\-&quot;\<\>\~\\[\\]\`\\^#&()\\n\\t\\r\*/+=@\_}{|\\\\ \\]\*$

Validator.HTTPParameterValue=^\[\u0080-\uFFFFa-zA-Z0-9.,;?!:%'\\p{L}$\\-&quot;\<\>\~\\[\\]\`\\^#&()\\n\\t\\r\*/+=@\_}{|\\\\ \\]\*$

问题现象

当输入值为"3Y....1000.....24\0AB123456"时,其中的\0(NULL字符)被判定为特殊字符,触发验证错误。但该场景在ESAPI 2.2.0.0版本下可正常运行,仅在2.4.0.0及以上新版本出现此问题。

控制台报错信息

WARNING [IntrusionDetector] [SECURITY FAILURE Anonymous:null@unknown -> /IntrusionDetector] Invalid input: context=HTTP parameter name: transactionId, type(HTTPParameterValue) [input=**3Y....1000.....24AB123456**: org.owasp.esapi.errors.ValidationException: HTTP parameter name: transactionId: Invalid input. ]Please conform to regex

已尝试的无效方案

  • 使用/\b([0-9]|10)\b /正则模式
  • 使用\d正则模式

以上调整均未解决问题。

求助内容

  1. 如何修改配置或代码,解决该NULL字符的验证错误?
  2. ESAPI 2.4.0.0及以上版本是否新增了验证规则,或是存在依赖缺失导致的问题?

内容的提问来源于stack exchange,提问作者Monisha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 12:15:56