TL;DR: Spring 7.0.8 and 6.2.19 close two request-path denial of service flaws that can be triggered by ordinary multipart traffic or filesystem-backed versioned static resources, according to Corgea’s analysis of the release train. The deeper lesson is that framework plumbing on upload and asset paths belongs in application security review, because resource exhaustion often starts in code teams treat as low risk.
NHIMG editorial — based on content published by Corgea: Spring web modules denial of service fixes and request-path exposure analysis
By the numbers:
- Spring Framework 5.3.0 through 5.3.48, 6.1.0 through 6.1.27, 6.2.0 through 6.2.18, and 7.0.0 through 7.0.7 were affected by the two denial of service issues described in the article.
- CVE-2026-41842 was scored AV:N/AC:L/PR:N/UI:N/A:H, showing that the static-resource path could be exhausted remotely without privileges or user interaction.
- CVE-2026-41840 was scored AV:N/AC:H/PR:N/UI:N/A:H, which still makes it remotely reachable even though the multipart trigger path is narrower.
Questions worth separating out
Q: What breaks when multipart handling in Spring is not properly cleaned up?
A: When multipart parsing fails to release buffers and part objects, the service can accumulate memory pressure, stall request processing, and eventually deny service.
Q: Why do filesystem-backed static resource handlers increase denial of service risk?
A: They extend the request-processing boundary into version-stripping, path validation, and local file resolution, so malformed input can consume server capacity even when the content is “just static.” If those routes are internet-facing, they deserve the same review discipline as business endpoints.
Q: How do security teams know whether a Spring CVE is actually reachable in production?
A: Check the active framework version, then trace which endpoints use the affected feature, such as multipart parsing or versioned static resources.
Practitioner guidance
- Patch all affected Spring Framework lines Move services to Spring Framework 7.0.8, 6.2.19, 6.1.28, or 5.3.49 as appropriate, then verify that Spring Boot inheritance actually pulled the fixed framework versions into each deployment.
- Inventory every reachable multipart endpoint List controllers, routers, and gateways that accept multipart/form-data, then confirm which of them are internet-facing and which are constrained behind authentication or network controls.
- Test filesystem-backed versioned resource handlers Replay malformed versioned paths against any handler using VersionResourceResolver or similar logic, and confirm that invalid paths are rejected before resource lookup or filesystem traversal.
What's in the full article
Corgea's full article covers the operational detail this post intentionally leaves for the source:
- The exact Spring release matrix for affected and fixed versions across 5.3.x, 6.1.x, 6.2.x, and 7.0.x.
- Code-level explanation of the multipart leak path and the versioned-resource regression that changed in the fix train.
- Dependency and route-scoping examples that show how to find vulnerable services in Maven and Gradle builds.
- Practical mitigation guidance for teams that need to reduce exposure before patching is complete.
👉 Read Corgea’s analysis of Spring multipart and static-resource denial of service bugs →
Spring WebFlux denial of service paths: what app teams need to check?
Explore further
Framework-level request handling is now a governance issue, not just a patching issue. When multipart parsing or static-resource resolution sits on hot paths, the security question is no longer whether business logic is safe. It is whether shared framework components have been mapped, tested, and owned as part of the application boundary. Teams that treat parser and resolver code as invisible infrastructure leave a repeatable denial-of-service path ungoverned.
A few things that frame the scale:
- NHIs outnumber human identities by 25x to 50x in modern enterprises, according to the Ultimate Guide to NHIs.
- Only 5.7% of organisations have full visibility into their service accounts, which is why hidden machine identities remain difficult to govern.
A question worth separating out:
Q: What should teams do first when a framework denial of service bug appears?
A: Prioritise patching the affected runtime lines, then add temporary request-size, rate, and exposure controls on the reachable routes until the fix is deployed. After that, retest the exact upload and static-resource paths that map to the vulnerability. Containment should focus on the specific request handlers that attackers can reach.
👉 Read our full editorial: Spring WebFlux and MVC denial of service paths tighten app security