You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
HTTP request argument keys are case-sensitive. We should store keys in collection in a case-sensitive manner and allow rule writers to craft the rule-checking static parameter or regular expression in case-sensitive manner.
ARGS:/^Key/ should match in a case-sensitive manner.
It stores keys in lowercase which won't match against Regex configured in the rule. Keys should do a case-sensitive match.
Steps to reproduce
Write a rule for ARGS with regular expression.
SecRule ARGS:/^Key/ "my-value" "id:101,phase:1,deny,status:403,msg:'ARGS:key matched.'"
Implemented in #1059, and tracked in #945 to make it the default behavior in the next major version. Right now is under coraza.rule.case_sensitive_args_keysbuild tag. Please, feel free to raise any concerns or feedback if you give it a shot :)
Description
HTTP request argument keys are case-sensitive. We should store keys in collection in a case-sensitive manner and allow rule writers to craft the rule-checking static parameter or regular expression in case-sensitive manner.
ARGS:/^Key/ should match in a case-sensitive manner.
It stores keys in lowercase which won't match against Regex configured in the rule. Keys should do a case-sensitive match.
Steps to reproduce
Write a rule for ARGS with regular expression.
SecRule ARGS:/^Key/ "my-value" "id:101,phase:1,deny,status:403,msg:'ARGS:key matched.'"
Send HTTP request: "http://localhost:9000/index.html?ID=123&Key=my-value"
I have HTTP server running with Coraza on 9000 port where I am sending this request and getting 200 OK response back.
Output:
Expected result
It should deny and send 403 response back.
Actual result
200 OK
The text was updated successfully, but these errors were encountered: