Skip to content

Commit 3fb77cf

Browse files
ursuleanclaude
andcommitted
fix: enforce patched Netty, Jackson and Logback versions for security alerts
Bumps minimum versions to address open Dependabot alerts: - io.netty:* 4.2.13.Final -> 4.2.15.Final (alerts 72-86: GHSA-3qp7-7mw8-wx86, GHSA-c2rx-5r8w-8xr2, GHSA-cmm3-54f8-px4j, GHSA-x4gw-5cx5-pgmh, GHSA-676x-f7gg-47vc, GHSA-5pvg-856g-cp85, GHSA-4grm-h2qv-h6w6, GHSA-c653-97m9-rcg9, GHSA-563q-j3cm-6jxm, GHSA-hvcg-qmg6-jm4c, GHSA-cq4q-cv5g-r8q5, GHSA-c2gf-v879-257j, GHSA-5x3r-wrvg-rp6q, GHSA-xmv7-r254-6q78, GHSA-w573-9ffj-6ff9) - com.fasterxml.jackson.core:jackson-databind -> 2.21.5 and tools.jackson.core:* -> 3.1.4 (alerts 87-100: GHSA-j3rv-43j4-c7qm, GHSA-rmj7-2vxq-3g9f, GHSA-hgj6-7826-r7m5, GHSA-5jmj-h7xm-6q6v, GHSA-rcqc-6cw3-h962, GHSA-9fxm-vc8v-hj55, GHSA-5hh8-q8hv-fr38) - ch.qos.logback:* -> 1.5.34 (alerts 101, 103: GHSA-p47f-322f-whfh, GHSA-jhq6-gfmj-v8fx) Follows the existing pattern: resolutionStrategy rules in the root build.gradle for library/test modules, and Spring Boot version property overrides (ext) in the example apps where the dependency-management plugin would otherwise re-pin the managed versions. Refs USPR-13684 USPR-13685 USPR-13686 USPR-13687 USPR-13688 USPR-13689 Refs USPR-13690 USPR-13691 USPR-13692 USPR-13693 USPR-13694 USPR-13695 Refs USPR-13696 USPR-13697 USPR-13698 USPR-13699 USPR-13700 USPR-13701 Refs USPR-13702 USPR-13703 USPR-13704 USPR-13705 USPR-13706 USPR-13707 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent b23b180 commit 3fb77cf

4 files changed

Lines changed: 33 additions & 12 deletions

File tree

build.gradle

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,20 +25,37 @@ allprojects {
2525
subprojects {
2626
configurations.configureEach {
2727
resolutionStrategy.eachDependency {
28-
if (requested.group == 'tools.jackson.core' && requested.name == 'jackson-core'
29-
&& requested.version != null && requested.version < '3.1.1') {
30-
useVersion('3.1.1')
31-
because('GHSA-2m67-wjpj-xhg9: Jackson Core 3.0.0-3.1.0 maxDocumentLength bypass')
28+
if (requested.group == 'tools.jackson.core'
29+
&& requested.version != null && requested.version < '3.1.4') {
30+
useVersion('3.1.4')
31+
because('GHSA-2m67-wjpj-xhg9: Jackson Core 3.0.0-3.1.0 maxDocumentLength bypass; ' +
32+
'GHSA-j3rv-43j4-c7qm / GHSA-rmj7-2vxq-3g9f / GHSA-hgj6-7826-r7m5 / GHSA-5jmj-h7xm-6q6v / ' +
33+
'GHSA-rcqc-6cw3-h962 / GHSA-9fxm-vc8v-hj55 / GHSA-5hh8-q8hv-fr38: jackson-databind 3.x deserialization vulnerabilities')
34+
}
35+
if (requested.group == 'com.fasterxml.jackson.core' && requested.name == 'jackson-databind'
36+
&& requested.version != null && requested.version < '2.21.5') {
37+
useVersion('2.21.5')
38+
because('GHSA-j3rv-43j4-c7qm / GHSA-rmj7-2vxq-3g9f / GHSA-hgj6-7826-r7m5 / GHSA-5jmj-h7xm-6q6v / ' +
39+
'GHSA-rcqc-6cw3-h962 / GHSA-9fxm-vc8v-hj55 / GHSA-5hh8-q8hv-fr38: jackson-databind 2.x deserialization vulnerabilities')
40+
}
41+
if (requested.group == 'ch.qos.logback'
42+
&& requested.version != null && requested.version < '1.5.34') {
43+
useVersion('1.5.34')
44+
because('GHSA-p47f-322f-whfh / GHSA-jhq6-gfmj-v8fx: logback-core deserialization of untrusted data / object injection')
3245
}
3346
if (requested.group == 'org.apache.tomcat.embed' && requested.name == 'tomcat-embed-core'
3447
&& requested.version != null && requested.version < '11.0.22') {
3548
useVersion('11.0.22')
3649
because('GHSA-rv64-5gf8-9qq8 / GHSA-x4m4-345f-5h5g / GHSA-24j9-x2wg-9qv6 / GHSA-gx5v-xp9w-j4cg: Apache Tomcat < 11.0.22 vulnerabilities')
3750
}
3851
if (requested.group == 'io.netty'
39-
&& requested.version != null && requested.version < '4.2.13.Final') {
40-
useVersion('4.2.13.Final')
41-
because('GHSA-38f8-5428-x5cv: HTTP Request Smuggling in io.netty:netty-codec-http via malformed Transfer-Encoding headers')
52+
&& requested.version != null && requested.version < '4.2.15.Final') {
53+
useVersion('4.2.15.Final')
54+
because('GHSA-38f8-5428-x5cv: HTTP Request Smuggling in io.netty:netty-codec-http via malformed Transfer-Encoding headers; ' +
55+
'GHSA-3qp7-7mw8-wx86 / GHSA-c2rx-5r8w-8xr2 / GHSA-cmm3-54f8-px4j / GHSA-x4gw-5cx5-pgmh / GHSA-676x-f7gg-47vc / ' +
56+
'GHSA-5pvg-856g-cp85 / GHSA-4grm-h2qv-h6w6 / GHSA-c653-97m9-rcg9 / GHSA-563q-j3cm-6jxm / GHSA-hvcg-qmg6-jm4c / ' +
57+
'GHSA-cq4q-cv5g-r8q5 / GHSA-c2gf-v879-257j / GHSA-5x3r-wrvg-rp6q / GHSA-xmv7-r254-6q78 / GHSA-w573-9ffj-6ff9: ' +
58+
'multiple Netty vulnerabilities fixed in 4.2.15.Final')
4259
}
4360
}
4461
}

examples/example-spring-boot-starter-web/build.gradle

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,10 @@ plugins {
55
alias(libs.plugins.openapi.generator)
66
}
77

8-
ext['jackson-bom.version'] = '3.1.1'
9-
ext['netty.version'] = '4.2.13.Final'
8+
ext['jackson-bom.version'] = '3.1.4'
9+
ext['jackson-2-bom.version'] = '2.21.5'
10+
ext['logback.version'] = '1.5.34'
11+
ext['netty.version'] = '4.2.15.Final'
1012
ext['tomcat.version'] = '11.0.22'
1113

1214
dependencies {

examples/example-spring-boot-starter-webflux/build.gradle

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,10 @@ plugins {
55
alias(libs.plugins.openapi.generator)
66
}
77

8-
ext['jackson-bom.version'] = '3.1.1'
9-
ext['netty.version'] = '4.2.13.Final'
8+
ext['jackson-bom.version'] = '3.1.4'
9+
ext['jackson-2-bom.version'] = '2.21.5'
10+
ext['logback.version'] = '1.5.34'
11+
ext['netty.version'] = '4.2.15.Final'
1012
ext['tomcat.version'] = '11.0.22'
1113

1214
dependencies {

openapi-validation-core/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ dependencies {
1515
}
1616
implementation('tools.jackson.core:jackson-core') {
1717
version {
18-
strictly '[3.1.1,)'
18+
strictly '[3.1.4,)'
1919
}
2020
because 'GHSA-2m67-wjpj-xhg9: Jackson Core 3.0.0-3.1.0 does not consistently enforce maxDocumentLength constraint, allowing DoS attacks. See https://github.com/getyourguide/openapi-validation-java/security/dependabot/41'
2121
}

0 commit comments

Comments
 (0)