Skip to content

bump tomcat-embed-core to 10.1.55 (Dependabot CVE batch)#9

Merged
vzakharchenko merged 1 commit into
mainfrom
chore/bump-tomcat-cves
May 19, 2026
Merged

bump tomcat-embed-core to 10.1.55 (Dependabot CVE batch)#9
vzakharchenko merged 1 commit into
mainfrom
chore/bump-tomcat-cves

Conversation

@vzakharchenko
Copy link
Copy Markdown
Member

Spring Boot 3.5.14 brings tomcat-embed-core 10.1.54, which is on the Dependabot security report with 21 open alerts (4 Critical, 3 High, 1 Low — repeated across all three modules):

  • HTTP/2 request headers not validated
  • Digest authenticator authenticates any unknown user
  • Security constraints not correctly applied
  • Unbounded read in WebDAV LOCK and PROPFIND handling
  • LockOutRealm treats user names as case-sensitive
  • WebSocket authentication header exposure
  • AJP secret compared in non-constant time

Override Spring Boot's managed <tomcat.version> property to 10.1.55 in the root pom, the patch release in the same 10.1.x line that addresses this batch. Verified via mvn dependency:tree that all three modules now resolve org.apache.tomcat.embed:tomcat-embed-core:10.1.55.

Spring Boot 3.5.14 brings tomcat-embed-core 10.1.54, which is on the
Dependabot security report with 21 open alerts (4 Critical, 3 High,
1 Low — repeated across all three modules):

- HTTP/2 request headers not validated
- Digest authenticator authenticates any unknown user
- Security constraints not correctly applied
- Unbounded read in WebDAV LOCK and PROPFIND handling
- LockOutRealm treats user names as case-sensitive
- WebSocket authentication header exposure
- AJP secret compared in non-constant time

Override Spring Boot's managed <tomcat.version> property to 10.1.55 in
the root pom, the patch release in the same 10.1.x line that addresses
this batch. Verified via `mvn dependency:tree` that all three modules
now resolve org.apache.tomcat.embed:tomcat-embed-core:10.1.55.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@vzakharchenko vzakharchenko enabled auto-merge May 19, 2026 15:58
@sonarqubecloud
Copy link
Copy Markdown

@qltysh
Copy link
Copy Markdown

qltysh Bot commented May 19, 2026

Qlty


Coverage Impact

This PR will not change total coverage.

🚦 See full report on Qlty Cloud »

🛟 Help
  • Diff Coverage: Coverage for added or modified lines of code (excludes deleted files). Learn more.

  • Total Coverage: Coverage for the whole repository, calculated as the sum of all File Coverage. Learn more.

  • File Coverage: Covered Lines divided by Covered Lines plus Missed Lines. (Excludes non-executable lines including blank lines and comments.)

    • Indirect Changes: Changes to File Coverage for files that were not modified in this PR. Learn more.

@vzakharchenko vzakharchenko merged commit 45176e8 into main May 19, 2026
8 checks passed
@vzakharchenko vzakharchenko deleted the chore/bump-tomcat-cves branch May 19, 2026 16:00
vzakharchenko added a commit that referenced this pull request May 19, 2026
Snyk's scan of the sample reactor (sample-core, forge-connect,
forge-container) surfaced 8 transitive CVEs that the library-side
tomcat bump in #9 did not touch — the sample has its own
spring-boot-starter-parent and is built independently.

- Override <tomcat.version>10.1.55</tomcat.version> in the sample's
  parent pom; closes the same CVE batch on sample-core that #9 already
  resolved for the bridge modules (HTTP/2 header validation, DIGEST
  authenticator wildcard match, WebDAV LOCK/PROPFIND unbounded read,
  LockOutRealm case sensitivity, WebSocket header exposure, AJP
  non-constant time, security-constraint mapping).
- Pin org.apache.commons:commons-lang3 to 3.18.0 in the parent's
  <dependencyManagement>. liquibase-core 4.31.1 (pulled by the Connect
  JPA starter) drags in 3.17.0, which carries CVE-2025-48924
  (Uncontrolled Recursion in ClassUtils.getClass). 3.18.0 is the patch.

Verified `mvn dependency:tree` on each sample module resolves
tomcat-embed-core:10.1.55 and commons-lang3:3.18.0 (the latter only
where liquibase is on the path — forge-container excludes JPA and so
has no commons-lang3 transitive at all).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant