-
-
Notifications
You must be signed in to change notification settings - Fork 4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update spring-boot version to 3.1.2 #22933
Conversation
@mshima The root cause: |
@DanielFran just posted spring-projects/spring-boot#36500 |
Caused by spring-projects/spring-security#13568 |
@DanielFran are you planning to finish the update soon? |
@mshima No, I am away 2 weeks from my laptop :P |
@mshima How can I help move this along? |
The remaining error is:
|
From https://github.com/jzheaux/cve-2023-34035-mitigations#mitigations. |
I think this recommendation was before the security issue was found at the link I've passed:
My initial understanding is that every resource except |
@mshima OK. Thanks for the clarification. That makes sense. |
After going through the issue and mitigation process, my understanding is that everything that goes through a DispatcherServlet should use a mvc matcher. ResourceHandler, actuator endpoints and websocket uses the DispatcherServlet. So we should use mvc matcher for every url except h2-console which is served by a custom servlet. I will check if actuator uses a second DispatcherServlet instance. |
What about images and other static resources? Aren't they served by an Undertow servlet? I'm still in favor of backward compatibility and stability over time. |
They are served through spring‘s ResourceHandler that is served using DispatcherServlet.
In this case jhipster v7 using antMatcher are wrong. The best explanation I’ve found is spring-projects/spring-security#13568 (comment). |
Good explanation yes but later comments show that there are issues with other servlets like h2 console (probably also when using h2 db as a server) and devtools, I suspect others may appear for any kind of embedded servers (e.g. distributed caches?) This CVE is still open so I guess there is no conclusive answer yet. |
There are a other things been discussed in the issue not only the security issue and fixes.
If you take a look at the first commit from this PR, most of runs succeed. That happens if only 1 servlet is registered. I didn’t investigate the reason for each sample failure. The current fix for the security issue is to use mvcMatcher for Spring MVC, and make sure an DispatcherServlet with context-path (additional or not) to use like |
test-integration/jdl-samples/ms-mf-react-eureka-oauth2-mariadb-infinispan/blog-store.jdl
Show resolved
Hide resolved
test-integration/jdl-samples/ms-mf-react-eureka-oauth2-mariadb-infinispan/blog-store.jdl
Show resolved
Hide resolved
...tors/server/templates/src/main/java/package/config/SecurityConfiguration_imperative.java.ejs
Show resolved
Hide resolved
test-integration/jdl-samples/ms-mf-react-eureka-oauth2-mariadb-infinispan/blog-store.jdl
Outdated
Show resolved
Hide resolved
test-integration/jdl-samples/ms-mf-react-eureka-oauth2-mariadb-infinispan/blog-store.jdl
Outdated
Show resolved
Hide resolved
* Use MvcRequestMatcher in SecurityFilterChain See https://spring.io/security/cve-2023-34035 * Update spring-boot version to 3.1.2 * Update hibernate version to 6.2.6.Final * replace mariadb with mysql at reactive samples * fix to swagger-ui * fix jdlSamples variable --------- Co-authored-by: Marcelo Shima <marceloshima@gmail.com>
Please make sure the below checklist is followed for Pull Requests.
When you are still working on the PR, consider converting it to Draft (below reviewers) and adding
skip-ci
label, you can still see CI build result at your branch.