| Package | Affected versions | Patched versions |
|---|---|---|
| org.eclipse.jetty:jetty-server | ≥ 10.0.0, < 10.0.14≥ 11.0.0, < 11.0.14< 9.4.51.v20230217 | 10.0.1411.0.149.4.51.v20230217 |
| jetty | ≥ 10.0.0, < 10.0.14≥ 11.0.0, < 11.0.14< 9.4.51 | 10.0.1411.0.149.4.51 |
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.
Running one of these products? Scan your site to see whether it exposes a vulnerable version.
Scan my site free