Update dependency org.springframework:spring-webmvc to v6 [SECURITY]#5596
Update dependency org.springframework:spring-webmvc to v6 [SECURITY]#5596renovate[bot] wants to merge 1 commit intomasterfrom
Conversation
|
Renovate Jira issue ID: SONARJAVA-6347 |
Summary
This PR bumps spring-webmvc from 5.2.3 to 6.1.14 — a major version upgrade driven by three security fixes: CVE-2024-38828 (DoS in @RequestBody handling), CVE-2024-38819 (path traversal in static resource serving), and CVE-2023-20860 (critical security bypass in mvcRequestMatcher). The change is a single version update in pom.xml, but reviewers should verify API compatibility and behavioral changes across the codebase, since 5.x → 6.x introduces breaking changes. What reviewers should knowKey points for review:
|
| <artifactItem> | ||
| <groupId>org.springframework</groupId> | ||
| <artifactId>spring-webmvc</artifactId> | ||
| <version>5.2.3.RELEASE</version> | ||
| <version>6.1.14</version> |
There was a problem hiding this comment.
The pom.xml now downloads spring-webmvc-6.1.14.jar, but JasperTest.java:77 still references the old filename:
private final File springJar = Paths.get("target/test-jars/spring-webmvc-5.2.3.RELEASE.jar").toFile();The downloaded JAR name is derived from the artifact version, so target/test-jars/spring-webmvc-5.2.3.RELEASE.jar will no longer exist — tests at lines 165 and 282 of JasperTest.java will fail with a missing-file error.
Update the path in JasperTest.java to target/test-jars/spring-webmvc-6.1.14.jar.
| <artifactItem> | |
| <groupId>org.springframework</groupId> | |
| <artifactId>spring-webmvc</artifactId> | |
| <version>5.2.3.RELEASE</version> | |
| <version>6.1.14</version> | |
| <artifactItem> | |
| <groupId>org.springframework</groupId> | |
| <artifactId>spring-webmvc</artifactId> | |
| <version>6.1.14</version> | |
| </artifactItem> |
- Mark as noise
This PR contains the following updates:
5.2.3.RELEASE→6.1.14Spring MVC controller vulnerable to a DoS attack
CVE-2024-38828 / GHSA-w3c8-7r8f-9jp8
More information
Details
Spring MVC controller methods with an @RequestBody byte[] method parameter are vulnerable to a DoS attack.
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Spring Framework Path Traversal vulnerability
CVE-2024-38819 / GHSA-g5vr-rgqm-vf78
More information
Details
Applications serving static resources through the functional web frameworks WebMvc.fn or WebFlux.fn are vulnerable to path traversal attacks. An attacker can craft malicious HTTP requests and obtain any file on the file system that is also accessible to the process in which the Spring application is running.
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Spring Framework is vulnerable to security bypass via mvcRequestMatcher pattern mismatch
CVE-2023-20860 / GHSA-7phw-cxx7-q9vq
More information
Details
Spring Framework running version 6.0.0 - 6.0.6 or 5.3.0 - 5.3.25 using "**" as a pattern in Spring Security configuration with the mvcRequestMatcher creates a mismatch in pattern matching between Spring Security and Spring MVC, and the potential for a security bypass.
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Release Notes
spring-projects/spring-framework (org.springframework:spring-webmvc)
v6.1.14Compare Source
⭐ New Features
QualifierAnnotationAutowireCandidateResolver#33580MethodArgumentTypeMismatchExceptionerror message #33573🐞 Bug Fixes
MethodParameter.getMethod()check inKotlinDelegate.hasDefaultValue()#33609AotTestExecutionListenershould not be invoked for a@DisabledInAotModetest class #33589org.springframework.util.ResourceUtils#toRelativeURLdrops customURLStreamHandler#33561ZoneIdEditorthrows wrong exception type forTypeConverterSupport#33545@CacheablethrowsNullPointerExceptionwhenRuntimeExceptionis thrown inside annotated code #33492HttpComponentsClientHttpResponseignoresExpirescookie attribute #33157📔 Documentation
🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@arey, @asibross, @boulce, @drdpov, @hosamaly, @ilya40umov, @izeye, and @junhyeongkim2
v6.1.13Compare Source
⭐ New Features
resultinWebAsyncManager#33406🐞 Bug Fixes
Rendering#33498📔 Documentation
-debugcompiler flag in reference manual #33453@ImportResourcein the reference manual #33446@RequestBody#33409🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@dancer1325, @izeye, and @yfoel
v6.1.12Compare Source
⭐ New Features
@javax.inject.Namedannotation #33345🐞 Bug Fixes
SimpleEvaluationContextdoes not enforce read-only semantics #33319Object[]when invoking varargs method #33317Indexersilently ignores failure to set property as index #33310@Scheduledmethod in test class not supported anymore #33286@JmsListenerresponse messages #33221ConversionServicecannot convert primitive array toObject[]#33212@Cacheable#33210MethodHandlefunction with a primitive array #33198AopUtils#33045📔 Documentation
RestClientdocumentation #33350🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@GoncaloPT, @crusherd, @genuss, @kashike, @ngocnhan-tran1996, @olbinski, @pcvolkmer, @sheip9, @tafjwr, and @underbell
v6.1.11Compare Source
⭐ New Features
MethodHandleis notnullin SpEL'sReflectionHelper#33193PrematureCloseExceptionduring response #33127getTypeForFactoryMethodshould catchNoClassDefFoundError#33075🐞 Bug Fixes
MethodHandlefunction with an array #33191MethodHandlefunction with zero variable arguments #33190java.nio.file.Path(and plain "." value resolves to classpath root) #33124@Transactional#33095LocalContainerEntityManagerFactoryBeaninitialization fails in case of null bean definition #33082ReactorNettyClientRequest.convertExceptionshould include original exception if cause isnull#33080Object...varargs method #33013📔 Documentation
ModelMapis not a supported argument type in WebFlux #33107InputStreamResourcefor content length bypass #33089🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@TAKETODAY, @hunhee98, @imvtsl, @snussbaumer, and @zizare
v6.1.10Compare Source
⭐ New Features
PersistenceExceptionTranslatorbean retrieval inPersistenceExceptionTranslationInterceptoron shutdown #33067DisconnectedClientHelper#33064🐞 Bug Fixes
@Autowired@Beanmethod with@Valueparameter #33030📔 Documentation
❤️ Contributors
Thank you to all the contributors who worked on this release:
@tafjwr
v6.1.9Compare Source
⭐ New Features
@TenantId#32967🐞 Bug Fixes
canEncode()forJAXBElementinJaxb2XmlEncoder#32977@Validannotations on container elements for handler argument validation not supported #32964StringUtils#cleanPath#32962@CacheEvictcondition uses wrapper comparison instead of actual objects #32960ReactorResourceFactorynot working with CRaC onRefresh checkpoint #32945Integer#32908Mapwith a primitive #32903@EnableTransactionManagement(mode = AdviceMode.ASPECTJ) #32882📔 Documentation
RegisterReflectionForBindingJavadoc #32947MethodValidationPostProcessoris missing astatickeyword #32929KotlinDetector.isKotlinTypedocumentation for Kotlin 2.x lambdas #32905🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@Attacktive, @Seungpang, @deblockt, @hlmg, @ozooxo, @soglad, and @ypyf
v6.1.8Compare Source
⭐ New Features
🐞 Bug Fixes
@DateTimeFormat(iso = DateTimeFormat.ISO.DATE\_TIME)cannot convert UTC without milliseconds tojava.util.Date#32856@Configurableaspect #32838📔 Documentation
❤️ Contributors
Thank you to all the contributors who worked on this release:
@rwinch
v6.1.7Compare Source
⭐ New Features
@Aspectclasses for Spring AOP proxy usage #32793🐞 Bug Fixes
AnnotationConfigWebApplicationContextshould propagateApplicationStartuptoBeanFactory#32747PropertiesPropertySource.getPropertyNames()#32742MergedAnnotationssearch does not find container for repeatable annotation #32731ScopedProxyMode.TARGET\_CLASSand advisors #32669📔 Documentation
ResponseCookie#32663Flux<T>return values #32630factory-methoddoes not always determine correct target type #32091@Orderbehavior on types, bean methods, and config classes #30177@Transactionalre-entrant calls) #28299🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@LeMikaelF, @Seungpang, @izeye, @m4tt30c91, @remeio, and @yhao3
v6.1.6Compare Source
⭐ New Features
JdbcUtils.getResultSetValue#32601FactoryBeantype matching when usinggetBeanProvider#32590@RequestParambinding does not support params with an empty array "[]" suffix #32577Annotationarray cloning inTypeDescriptor#32476Annotationarray inTypeDescriptor#32405🐞 Bug Fixes
MethodIntrospector.selectMethods()fails to detect bridge methods across ApplicationContexts #32586CompoundExpressionomits null-safe syntax in AST string representation of null-safe selection/projection in SpEL #32515FactoryBeanclass not autowired in case oftargetTypemismatch #32489HeaderContentNegotiationStrategy.resolveMediaTypes()throws unexpectedInvalidMimeTypeException#32483📔 Documentation
🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@Banuelorigni, @LinorDolev, @T45K, @izeye, @kilink, @quaff, and @qww1552
v6.1.5Compare Source
⭐ New Features
ServletServerHttpResponse#32361\*HttpMessageConverter#getContentLengthreturn value null safety #32325Configuration
📅 Schedule: (in timezone Europe/Berlin)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Never, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.