HEX
Server: nginx/1.28.0
System: Linux w3c-2 6.8.0-78-generic #78-Ubuntu SMP PREEMPT_DYNAMIC Tue Aug 12 11:34:18 UTC 2025 x86_64
User: inpa_co_1 (1082)
PHP: 8.3.29
Disabled: NONE
Upload Files
File: //etc/modsecurity.d/owasp/regex-assembly/944150.ra
##! Please refer to the documentation at
##! https://coreruleset.org/docs/development/regex_assembly/.

##! The following is an expansion of
##! (?:\${[^}]{0,15}\${|\${(?:jndi|ctx))
##! where every character also matches the equivalent named HTML entity.
##! It is a workaround for the shortcomings of `htmlEntityDecode`, which
##! handles numerical HTML entities well but only handles 5 named
##! entities. The official list of named entities can be found here:
##! https://html.spec.whatwg.org/multipage/named-characters.html.
##!
##! Note:
##!     - We don't match `}` or `}` because it would enable more
##!         evasions while also increasing the number of potential false positives.
##!         The risk of false negatives in this case is acceptable.
##!     - Omitting the terminating semi-colon can be used as an evasion with lenient
##!         parsers. We catch those by making the semi-colon optional.


##!+ i

(?:\$|$?)(?:\{|&(?:lbrace|lcub);?)[^}]{0,15}(?:\$|$?)(?:\{|&(?:lbrace|lcub);?)
(?:\$|$?)(?:\{|&(?:lbrace|lcub);?)(?:jndi|ctx)