Cyber Resilience

CVE-2023-26048

Medium

Published: 18 April 2023

Published
18 April 2023
Modified
21 November 2024
KEV Added
Patch
CVSS Score v3.1 5.3 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
EPSS Score 0.4341 97.6th percentile
Risk Priority 37 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2023-26048 is a medium-severity Uncontrolled Resource Consumption (CWE-400) vulnerability in Eclipse Jetty. Its CVSS base score is 5.3 (Medium).

Operationally, ranked in the top 2.4% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

Deeper analysis

Jetty is a Java-based web server and servlet engine affected by CVE-2023-26048. Servlets using multipart support (for example those annotated with @MultipartConfig) that invoke HttpServletRequest.getParameter() or HttpServletRequest.getParts() can trigger an OutOfMemoryError when a client supplies a multipart request containing a part that specifies a name but no filename and carries arbitrarily large content. The condition occurs even when the default fileSizeThreshold=0 setting is in place, which is intended to stream part data to disk rather than retain it in memory.

An unauthenticated remote attacker can send a single crafted multipart request to exhaust heap memory on the target server, producing an OutOfMemoryError that degrades or interrupts service. Although the JVM may eventually recover, the interruption window can be significant, resulting in a low-impact denial-of-service condition as reflected by the CVSS 5.3 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L) and the associated CWE-400/CWE-770 classifications.

The Eclipse Jetty project has released fixes in versions 9.4.51, 10.0.14, and 11.0.14. Administrators unable to upgrade immediately can mitigate the issue by explicitly configuring the multipart maxRequestSize parameter to a non-negative value, thereby capping the total size of an incoming multipart request even though the content is still buffered in memory. The official security advisory and linked pull requests document these remediation steps.

EU & UK References

Vulnerability details

Jetty is a java based web server and servlet engine. In affected versions servlets with multipart support (e.g. annotated with `@MultipartConfig`) that call `HttpServletRequest.getParameter()` or `HttpServletRequest.getParts()` may cause `OutOfMemoryError` when the client sends a multipart request with a part that…

more

has a name but no filename and very large content. This happens even with the default settings of `fileSizeThreshold=0` which should stream the whole part content to disk. An attacker client may send a large multipart request and cause the server to throw `OutOfMemoryError`. However, the server may be able to recover after the `OutOfMemoryError` and continue its service -- although it may take some time. This issue has been patched in versions 9.4.51, 10.0.14, and 11.0.14. Users are advised to upgrade. Users unable to upgrade may set the multipart parameter `maxRequestSize` which must be set to a non-negative value, so the whole multipart content is limited (although still read into memory).

CWE(s)

Related Threats

No named actor attribution yet. ATT&CK technique mapping in progress for this CVE.

Affected Assets

eclipse
jetty
≤ 9.4.51 · 10.0.0 — 10.0.14 · 11.0.0 — 11.0.14

Mitigating Controls

Likely Mitigating Controls AI

Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.

addresses: CWE-400 CWE-770

Limiting concurrent sessions directly prevents uncontrolled resource consumption by capping the number of active sessions per user or account.

addresses: CWE-400 CWE-770

Contingency plan testing includes resource exhaustion scenarios to verify recovery, making it harder for attackers to sustain exploits that cause uncontrolled consumption.

addresses: CWE-400 CWE-770

Updated contingency plans include current procedures to detect, contain, and recover from resource exhaustion, limiting an attacker's ability to sustain impact from uncontrolled consumption.

addresses: CWE-400 CWE-770

Alternate site allows resumption of operations if resource exhaustion at the primary site is exploited to cause unavailability.

addresses: CWE-400 CWE-770

Alternate telecommunications services enable resumption of essential functions when primary services become unavailable due to uncontrolled resource consumption.

addresses: CWE-400 CWE-770

Planning and coordination of security activities (scans, tests, maintenance) directly imposes scheduling and throttling that prevents those activities from producing uncontrolled resource consumption.

addresses: CWE-400 CWE-770

Performance metrics and monitoring inherently track resource consumption patterns, making uncontrolled consumption easier to detect and mitigate.

addresses: CWE-400 CWE-770

Terminating idle connections bounds resource consumption that would otherwise allow uncontrolled accumulation of open sessions.

References