CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality Impact
NONE
Integrity Impact
NONE
Availability Impact
LOW
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
EPSS
Percentile
68.8%
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 has a name but no filename and a 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.
A very large number of parts may cause the same problem.
Patched in Jetty versions
Multipart parameter maxRequestSize
must be set to a non-negative value, so the whole multipart content is limited (although still read into memory).
Limiting multipart parameter maxFileSize
wonโt be enough because an attacker can send a large number of parts that summed up will cause memory issues.
Vendor | Product | Version | CPE |
---|---|---|---|
org.eclipse.jetty | jetty-server | * | cpe:2.3:a:org.eclipse.jetty:jetty-server:*:*:*:*:*:*:*:* |
github.com/advisories/GHSA-qw69-rqj8-6qw8
github.com/eclipse/jetty.project/issues/9076
github.com/eclipse/jetty.project/pull/9344
github.com/eclipse/jetty.project/pull/9345
github.com/eclipse/jetty.project/releases/tag/jetty-9.4.51.v20230217
github.com/eclipse/jetty.project/security/advisories/GHSA-qw69-rqj8-6qw8
github.com/jakartaee/servlet/blob/6.0.0/spec/src/main/asciidoc/servlet-spec-body.adoc#32-file-upload
lists.debian.org/debian-lts-announce/2023/09/msg00039.html
nvd.nist.gov/vuln/detail/CVE-2023-26048
security.netapp.com/advisory/ntap-20230526-0001/
www.debian.org/security/2023/dsa-5507