CVE-2026-21876

OWASP CRS has multipart bypass using multiple content-type parts

Published Jan 8, 2026 CVSS 3.1 · 9.3 Critical EPSS 17.3% KEV · Not listed
Description
The OWASP core rule set (CRS) is a set of generic attack detection rules for use with compatible web application firewalls. Prior to versions 4.22.0 and 3.3.8, the current rule 922110 has a bug when processing multipart requests with multiple parts. When the first rule in a chain iterates over a collection (like `MULTIPART_PART_HEADERS`), the capture variables (`TX:0`, `TX:1`) get overwritten with each iteration. Only the last captured value is available to the chained rule, which means malicious charsets in earlier parts can be missed if a later part has a legitimate charset. Versions 4.22.0 and 3.3.8 patch the issue.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-4488-1 modsecurity-crs security update
Debian DSA Debian DSA DSA-6105-1 modsecurity-crs security update
History
Type Values Removed Values Added
First Time appeared Owasp owasp Modsecurity Core Rule Set
CPEs cpe:2.3:a:owasp:owasp_modsecurity_core_rule_set:*:*:*:*:*:*:*:*
Vendors & Products Owasp owasp Modsecurity Core Rule Set
Type Values Removed Values Added
First Time appeared Owasp
Owasp coreruleset
Vendors & Products Owasp
Owasp coreruleset
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description The OWASP core rule set (CRS) is a set of generic attack detection rules for use with compatible web application firewalls. Prior to versions 4.22.0 and 3.3.8, the current rule 922110 has a bug when processing multipart requests with multiple parts. When the first rule in a chain iterates over a collection (like `MULTIPART_PART_HEADERS`), the capture variables (`TX:0`, `TX:1`) get overwritten with each iteration. Only the last captured value is available to the chained rule, which means malicious charsets in earlier parts can be missed if a later part has a legitimate charset. Versions 4.22.0 and 3.3.8 patch the issue.
Title OWASP CRS has multipart bypass using multiple content-type parts
Weaknesses CWE-794
References
Metrics cvssV3_1

{'score': 9.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Apr 9, 2026, 3:41 PM
Reserved
Jan 5, 2026, 5:24 PM
Status
Modified
Published
Jan 8, 2026, 2:15 PM
Modified
Jun 17, 2026, 10:19 AM