CVE-2022-2048 — http2-server
HIGHCVE-2022-2048 is a high-severity (CVSS 7.5) CWE-410 vulnerability in org.eclipse.jetty.http2:http2-server. A fix is available for org.eclipse.jetty.http2:http2-server — see the affected versions and patch details below.
Jetty vulnerable to Invalid HTTP/2 requests that can lead to denial of service
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
Where this sits among everything scored
Real-World Exposure
org.eclipse.jetty.http2:http2-server☕org.eclipse.jetty.http2:http2-server☕org.eclipse.jetty.http2:http2-serverReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects Maven packages — download data is not available via public APIs for these ecosystems.
Description
Description
Invalid HTTP/2 requests (for example, invalid URIs) are incorrectly handled by writing a blocking error response directly from the selector thread. If the client manages to exhaust the HTTP/2 flow control window, or TCP congest the connection, the selector thread will be blocked trying to write the error response. If this is repeated for all the selector threads, the server becomes unresponsive, causing the denial of service.
Impact
A malicious client may render the server unresponsive.
Patches
The fix is available in Jetty versions 9.4.47. 10.0.10, 11.0.10.
Workarounds
No workaround available within Jetty itself. One possible workaround is to filter the requests before sending them to Jetty (for example in a proxy)
For more information
If you have any questions or comments about this advisory:
- Email us at [email protected].
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| ☕Maven | org.eclipse.jetty.http2:http2-server | all versions | 9.4.47org.eclipse.jetty.http2:http2-server:9.4.47 |
| ☕Maven | org.eclipse.jetty.http2:http2-server | ≥ 10.0.0&&< 10.0.10 | 10.0.10org.eclipse.jetty.http2:http2-server:10.0.10 |
| ☕Maven | org.eclipse.jetty.http2:http2-server | ≥ 11.0.0&&< 11.0.10 | 11.0.10org.eclipse.jetty.http2:http2-server:11.0.10 |
Affected Products
debian linuxdebianjettyeclipsejenkinsjenkinselement plug-in for vcenter servernetapphci compute nodenetappmanagement services for element software and netapp hcinetappDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for org.eclipse.jetty.http2:http2-server, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update org.eclipse.jetty.http2:http2-server to 9.4.47 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2022-2048 is resolved across your whole dependency graph.
Workarounds
Cap what an attacker can consume: apply request size, rate and timeout limits in front of the affected component, and run it with memory and CPU limits so exhaustion degrades one worker rather than the whole service.
Fixing This On Your OS
If you run this on a Linux distribution, patch through your package manager against the distro's own security advisory below — it tracks the exact backported fix for your release, which can ship on a different timeline (and sometimes a different severity) than the upstream project.
| Product | Fixed in | Advisory |
|---|---|---|
| OpenShift Developer Tools and Services for OCP 4.11 | jenkins-0:2.401.1.1686831596-3.el8 | RHSA-2023:3663 |
| Red Hat AMQ Streams 2.3.0 | http2-server | RHSA-2023:0189 |
| Red Hat Fuse 7.11.1 | http2-server | RHSA-2022:8652 |
| Red Hat OpenShift Container Platform 4.8 | jenkins-0:2.361.1.1672840472-1.el8 | RHSA-2023:0017 |
| Red Hat OpenShift Container Platform 4.9 | jenkins-0:2.361.1.1675668150-1.el8 | RHSA-2023:0777 |
Frequently Asked Questions
Is CVE-2022-2048 in your dependencies?
Find it across Maven, including transitive dependencies.