CVE-2021-29991
High · 8.1CVSS
8.1
EPSS
0.9%
Published
Nov 3, 2021
CISA due date
—
Cloudanix analysis
A flaw in how the software read certain web messages let attackers insert hidden instructions that could fool servers into doing the wrong thing.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Data Tampering
- Component
- Application
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Incorrect acceptance of a newline character in an HTTP/3 header causes the client to interpret it as two separate headers, enabling header splitting attacks against servers.
Why it matters to the business
Attackers can manipulate header processing in affected client software, potentially leading to unauthorized actions, security control bypasses, or altered server behavior during web communications; the issue affects a widely used open-source education platform with many downstream installations.
How an attack unfolds
An attacker positions a vulnerable client to receive an HTTP/3 response containing a newline within a header field; the client splits the header, allowing injected directives to reach the server and perform actions such as cache poisoning or request smuggling.
How to fix it
Update francoisjacquet/rosariosis to the fixed commit fad593be603afc7f25deff407caaaab8cbdd3bdf; verify the change is present before deployment.
How to confirm the fix worked
Confirm the exact commit hash is deployed, then test HTTP/3 responses containing embedded newlines to ensure they are rejected or normalized.
Typical attack path
- Position vulnerable client to fetch resource over HTTP/3
- Craft server response embedding newline inside a header value
- Trigger client-side header splitting on newline
- Leverage resulting split to inject malicious headers against target server
How to detect it
Review web server and client logs for HTTP/3 responses containing literal newline characters within header fields; correlate with any resulting abnormal server behavior or injected headers.
What your security team should do
- Apply the listed commit immediately due to the high CVSS score
- Scan all instances of the affected package for the vulnerable code pattern
- Monitor HTTP/3 traffic for anomalous header structures
The record
Firefox incorrectly accepted a newline in a HTTP/3 header, interpretting it as two separate headers. This allowed for a header splitting attack against servers using HTTP/3. This vulnerability affects Firefox < 91.0.1 and Thunderbird < 91.0.1.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| SUSE:Enterprise Storage 6 | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Enterprise Storage 6 | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Enterprise Storage 6 | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:HPE Helion OpenStack 8 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:HPE Helion OpenStack 8 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:HPE Helion OpenStack 8 | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:Linux Enterprise High Performance Computing 15-ESPOS | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Linux Enterprise High Performance Computing 15-ESPOS | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Linux Enterprise High Performance Computing 15-ESPOS | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:Linux Enterprise High Performance Computing 15-LTSS | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Linux Enterprise High Performance Computing 15-LTSS | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Linux Enterprise High Performance Computing 15-LTSS | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP2 | MozillaFirefox | 0 | 91.2.0-8.54.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP2 | MozillaFirefox-branding-SLE | 0 | 91-9.5.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP3 | MozillaFirefox | 0 | 91.2.0-8.54.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP3 | MozillaFirefox-branding-SLE | 0 | 91-9.5.1 |
| SUSE:Linux Enterprise Server 11 SP4-LTSS | MozillaFirefox | 0 | 78.14.0-78.140.4 |
| SUSE:Linux Enterprise Server 11 SP4-LTSS | MozillaFirefox | 0 | 91.2.0-78.143.1 |
| SUSE:Linux Enterprise Server 11 SP4-LTSS | MozillaFirefox-branding-SLED | 0 | 91-21.18.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:Linux Enterprise Server 12 SP3-BCL | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:Linux Enterprise Server 12 SP3-BCL | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:Linux Enterprise Server 12 SP3-BCL | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:Linux Enterprise Server 12 SP3-LTSS | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:Linux Enterprise Server 12 SP3-LTSS | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:Linux Enterprise Server 12 SP3-LTSS | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:Linux Enterprise Server 15 SP1-BCL | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Linux Enterprise Server 15 SP1-BCL | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Linux Enterprise Server 15 SP1-BCL | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:Linux Enterprise Server 15 SP1-LTSS | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Linux Enterprise Server 15 SP1-LTSS | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Linux Enterprise Server 15 SP1-LTSS | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:Linux Enterprise Server 15-LTSS | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Linux Enterprise Server 15-LTSS | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Linux Enterprise Server 15-LTSS | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:Linux Enterprise Server for SAP Applications 15 | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Linux Enterprise Server for SAP Applications 15 | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP1 | MozillaFirefox | 0 | 91.2.0-3.155.2 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP1 | MozillaFirefox | 0 | 91.9.0-150000.150.34.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP1 | MozillaFirefox-branding-SLE | 0 | 91-4.19.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP2 | MozillaThunderbird | 0 | 91.4.0-8.45.2 |
| SUSE:Linux Enterprise Workstation Extension 15 SP3 | MozillaThunderbird | 0 | 91.4.0-8.45.2 |
| SUSE:OpenStack Cloud 8 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:OpenStack Cloud 8 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:OpenStack Cloud 8 | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:OpenStack Cloud 9 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:OpenStack Cloud 9 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:OpenStack Cloud 9 | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:OpenStack Cloud Crowbar 8 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:OpenStack Cloud Crowbar 8 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:OpenStack Cloud Crowbar 8 | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| SUSE:OpenStack Cloud Crowbar 9 | MozillaFirefox | 0 | 91.1.0-112.71.1 |
| SUSE:OpenStack Cloud Crowbar 9 | MozillaFirefox | 0 | 91.9.0-112.104.1 |
| SUSE:OpenStack Cloud Crowbar 9 | MozillaFirefox-branding-SLE | 0 | 91-35.6.6 |
| Ubuntu:18.04:LTS | firefox | 0 | 91.0.1+build1-0ubuntu0.18.04.1 |
| Ubuntu:18.04:LTS | mozjs38 | 0 | No fix |
| Ubuntu:18.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:18.04:LTS | thunderbird | 0 | 1:91.5.0+build1-0ubuntu0.18.04.1 |
| Ubuntu:20.04:LTS | firefox | 0 | 91.0.1+build1-0ubuntu0.20.04.1 |
| Ubuntu:20.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:20.04:LTS | mozjs68 | 0 | No fix |
| Ubuntu:20.04:LTS | thunderbird | 0 | 1:91.5.0+build1-0ubuntu0.20.04.1 |
| Ubuntu:22.04:LTS | mozjs78 | 0 | No fix |
| Ubuntu:22.04:LTS | thunderbird | 0 | 1:91.1.2+build1-0ubuntu1 |
| Ubuntu:Pro:18.04:LTS | mozjs38 | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | mozjs68 | 0 | No fix |
| Ubuntu:Pro:22.04:LTS | mozjs78 | 0 | No fix |
| openSUSE:Leap 15.2 | MozillaFirefox | 0 | 91.2.0-lp152.2.67.1 |
| openSUSE:Leap 15.2 | MozillaThunderbird | 0 | 91.4.0-lp152.2.52.1 |
| openSUSE:Leap 15.2 | rust-cbindgen | 0 | 0.19.0-lp152.2.7.1 |
| openSUSE:Leap 15.3 | MozillaFirefox | 0 | 91.2.0-8.54.1 |
| openSUSE:Leap 15.3 | MozillaFirefox-branding-SLE | 0 | 91-9.5.1 |
| openSUSE:Leap 15.3 | MozillaThunderbird | 0 | 91.4.0-8.45.2 |
| openSUSE:Leap 15.3 | rust-cbindgen | 0 | 0.19.0-1.9.1 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 92.0-1.2 |
| openSUSE:Tumbleweed | MozillaThunderbird | 0 | 91.1.1-1.1 |
| openSUSE:Tumbleweed | firefox-esr | 0 | 128.5.1-1.1 |
Related vulnerabilities
- CVE-2023-23601 Navigations were being allowed when dragging a URL from a cross-origin iframe into the… Also affects MozillaFirefox
- CVE-2023-23603 Regular expressions used to filter out forbidden properties and values from style… Also affects MozillaFirefox
- CVE-2023-23602 A mishandled security check when creating a WebSocket in a WebWorker caused the Content… Also affects MozillaFirefox
- CVE-2023-23605 Memory safety bugs present in Firefox 108 and Firefox ESR 102.6. Also affects MozillaFirefox
- CVE-2023-23598 Due to the Firefox GTK wrapper code's use of text/plain for drag data and GTK treating… Also affects MozillaFirefox
- CVE-2022-46881 An optimization in WebGL was incorrect in some cases, and could have led to memory… Also affects MozillaFirefox
- CVE-2022-46882 A use-after-free in WebGL extensions could have led to a potentially exploitable crash. Also affects MozillaFirefox
- CVE-2022-46880 A missing check related to tex units could have led to a use-after-free and potentially… Also affects MozillaFirefox