Skip to content

fix(942431): reduce false positive with arrays in ARGS_NAMES#4305

Merged
EsadCetiner merged 16 commits into
coreruleset:mainfrom
touchweb-vincent:patch-8
Dec 9, 2025
Merged

fix(942431): reduce false positive with arrays in ARGS_NAMES#4305
EsadCetiner merged 16 commits into
coreruleset:mainfrom
touchweb-vincent:patch-8

Conversation

@touchweb-vincent
Copy link
Copy Markdown
Contributor

Hello,

Here’s a first false positive we’ve already encountered with clients - three-dimensional arrays are not uncommon in back offices. It would be great if this one could be natively excluded from the rule.

What do you think?

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Oct 22, 2025

📊 Quantitative test results for language: eng, year: 2023, size: 10K, paranoia level: 1:
🚀 Quantitative testing did not detect new false positives

@touchweb-vincent
Copy link
Copy Markdown
Contributor Author

I don’t understand the issue with the unit test - the rule is correct, and real-world tests work fine here.

Is there a problem with the regular expressions in the definition of the argument types targeted by the rule?

@EsadCetiner
Copy link
Copy Markdown
Member

@touchweb-vincent The Unit tests aren't failing, it's the linter please see this

Normally we don't accept exceptions for specific applications within CRS itself, but we do accept tweaks to rules that reduce their overall false positives. Typically this would be in a plugin specifically for backoffice.

I don't think there's much we can do for this rule to reduce false positives simply due to the fact it's meant to block on multiple special characters which are very typical of injection attacks. This is painful for end users but it's also painful for attackers to bypass, it is placed at PL-3 for a reason after all.

@touchweb-vincent
Copy link
Copy Markdown
Contributor Author

I don’t understand why the linter is failing - if someone could help me with this, it would be appreciated.

@touchweb-vincent touchweb-vincent changed the title fix(942431): reduce false positive in backoffice fix(942431): reduce false positive Oct 23, 2025
Comment thread rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf
@airween
Copy link
Copy Markdown
Contributor

airween commented Oct 24, 2025

@touchweb-vincent, could you pick up #4310 or rebase your branch? That will solve the seclang_parsing issue.

(You can use the [Update branch] button on this page.)

@touchweb-vincent
Copy link
Copy Markdown
Contributor Author

Hello @airween

Done, thanks you !

Comment thread rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf
@touchweb-vincent
Copy link
Copy Markdown
Contributor Author

@EsadCetiner Not sure modsec like this form : /^\w+(?:[[\w-]*?]){2,3}$/ in an arg exclusion.

@touchweb-vincent
Copy link
Copy Markdown
Contributor Author

I reverted the change; ModSecurity definitely doesn’t seem to like curly brace here.

@EsadCetiner EsadCetiner changed the title fix(942431): reduce false positive fix(942431): reduce false positive with arrays in ARGS_NAMES Dec 9, 2025
Copy link
Copy Markdown
Member

@EsadCetiner EsadCetiner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If that doesn't work then this'll have to do.

@EsadCetiner EsadCetiner added this pull request to the merge queue Dec 9, 2025
Merged via the queue into coreruleset:main with commit 00229f0 Dec 9, 2025
10 checks passed
@touchweb-vincent touchweb-vincent deleted the patch-8 branch December 10, 2025 12:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants