This is an automated email from the ASF dual-hosted git repository.

jdaugherty pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/grails-core.git


The following commit(s) were added to refs/heads/7.0.x by this push:
     new e5626547ad Update dependencies
e5626547ad is described below

commit e5626547ad876f414a3512cd5634996b250eddc4
Author: James Daugherty <[email protected]>
AuthorDate: Sat Aug 22 23:16:02 2026 -0400

    Update dependencies
---
 .../grails/buildsrc/VulnerabilityScanPlugin.groovy | 23 ++++++++++++++++++----
 dependencies.gradle                                | 14 +++++++++++++
 grails-data-hibernate5/core/build.gradle           |  2 ++
 .../grails-hibernate-groovy-proxy/build.gradle     |  2 ++
 4 files changed, 37 insertions(+), 4 deletions(-)

diff --git 
a/build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/VulnerabilityScanPlugin.groovy
 
b/build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/VulnerabilityScanPlugin.groovy
index a1cc879050..041ddd6bf6 100644
--- 
a/build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/VulnerabilityScanPlugin.groovy
+++ 
b/build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/VulnerabilityScanPlugin.groovy
@@ -61,7 +61,6 @@ class VulnerabilityScanPlugin implements Plugin<Project> {
         extension.username = System.getenv('SONATYPE_GUIDE_USERNAME') ?: ''
         extension.password = System.getenv('SONATYPE_GUIDE_TOKEN') ?: ''
         extension.excludeCoordinates = [
-            'org.hibernate:hibernate-core:5.6.11.Final',
             // CVE-2018-14335: Sonatype flags this against all H2 versions; no 
upstream fix exists.
             'com.h2database:h2:2.4.240',
             // CVE-2026-8484: org.fusesource.jansi is unmaintained; all 
versions through 2.4.3 are flagged and no
@@ -73,10 +72,19 @@ class VulnerabilityScanPlugin implements Plugin<Project> {
             // The fix is HdrHistogram 2.2.3, which is not yet published to 
Maven Central (2.2.2 is the latest
             // release). Remove this exclusion once 2.2.3+ is available and 
resolves on the classpath.
             'org.hdrhistogram:HdrHistogram:2.2.2',
-            // CVE-2026-47838: spring-security-web 6.5.11 is the latest 
release on the 6.5.x line (a fix would
-            // require the 7.0.x line, which needs Spring Boot 4 / Spring 
Framework 7 and is incompatible here).
-            // Remove this exclusion once a patched 6.5.x is released and 
spring-boot.version is bumped.
+            // Spring Security 6.5.11 is the last open source release of the 
6.5.x line: the 6.5.12 patch for the
+            // CVEs below is published to Enterprise Support customers only, 
and the open source fixes are 7.0.7 and
+            // 7.1.1, which require Spring Boot 4 / Spring Framework 7 and are 
incompatible with this line
+            // (spring-boot.version is 3.5.x). Remove these exclusions when 
Grails moves to Spring Boot 4.
+            // CVE-2026-47838: SubjectDnX509PrincipalExtractor misreads 
malformed X.509 CN values, so a crafted
+            // certificate can impersonate another user.
             'org.springframework.security:spring-security-web:6.5.11',
+            // CVE-2026-59276: non-constant-time comparison of digests, token 
keys and password hashes.
+            'org.springframework.security:spring-security-core:6.5.11',
+            // CVE-2026-47842: AesBytesEncryptor encrypts deterministically, 
so AES/CBC ciphertexts can be correlated.
+            'org.springframework.security:spring-security-crypto:6.5.11',
+            // CVE-2026-41707: DPoPProofJwtDecoderFactory accepts replayed 
DPoP proofs.
+            'org.springframework.security:spring-security-oauth2-jose:6.5.11',
             // CVE-2026-44241 (micronaut-context) / CVE-2026-44242 
(micronaut-inject): a fix would require
             // Micronaut 4.10+, which is incompatible here because it pulls 
javaparser 3.28 while the
             // grails-micronaut-bom pins javaparser-core to 3.27 (see 
dependencies.gradle). Remove once
@@ -96,6 +104,13 @@ class VulnerabilityScanPlugin implements Plugin<Project> {
             'org.springframework:spring-webmvc:6.2.19',
             // CVE-2026-59280: path traversal in FreeMarker view resolution.
             'org.springframework:spring-context-support:6.2.19',
+            // CVE-2026-59282: unbounded allocation from crafted property 
paths, causing a denial of service.
+            'org.springframework:spring-beans:6.2.19',
+            // CVE-2026-47885 (multipart size limit bypassed by 
PartEventHttpMessageReader), CVE-2026-47889 (sameSite
+            // dropped from cookies written through 
JettyCoreServerHttpResponse), CVE-2026-47891 (maxInMemorySize
+            // bypassed in Jaxb2Decoder), CVE-2026-59281 (reflected XSS when 
rendering field errors) and
+            // CVE-2026-59314 (HTTP response splitting via a crafted 
Content-Disposition header).
+            'org.springframework:spring-web:6.2.19',
             // CVE-2026-19880: fixed only in logback 1.6.3, and no Spring Boot 
release manages the 1.6.x line
             // (4.1.1 still pins 1.5.38), so adopting it would put logback two 
minor lines ahead of the stack it
             // integrates with. Grails ships no 
SiftingAppender/MDCBasedDiscriminator configuration, so exposure is
diff --git a/dependencies.gradle b/dependencies.gradle
index d90ec677df..82c829e520 100644
--- a/dependencies.gradle
+++ b/dependencies.gradle
@@ -106,6 +106,9 @@ ext {
             // for the one logback advisory this version does not clear.
             'logback.version'               : '1.5.38',
             'jquery.version'                : '3.7.1',
+            // Overrides spring-boot-dependencies (1.0.0): micrometer 1.16.x 
annotates its API with JSpecify and
+            // pulls 1.0.1, so the BOM has to manage at least that - see 
micrometer.version.
+            'jspecify.version'              : '1.0.1',
             // Security: pulled transitively via groovy-console. 2.6.0 fixes 
CVE-2026-26032, a path traversal in the
             // PackagerResolver where '../' in module coordinates escapes the 
configured buildRoot.
             'ivy.version'                   : '2.6.0',
@@ -114,6 +117,10 @@ ext {
             'jakarta-validation-api.version': '3.1.1',
             'junit.version'                 : '5.13.3',
             'junit-platform.version'        : '1.13.3',
+            // Security: overrides spring-boot-dependencies (1.15.12). 1.16.7 
is the oldest open source release that
+            // fixes CVE-2026-59295 (DoS in the Apache HttpAsyncClient 
instrumentation) and CVE-2026-59296 (metric
+            // name/tag injection via unsanitised newlines); the 1.15.13 patch 
is Enterprise Support only.
+            'micrometer.version'            : '1.16.7',
             // Security: 5.9.2 fixes CVE-2026-18710, where 
ProxySettings.toString() renders the SOCKS5 proxy
             // username and password into application logs.
             'mongodb.version'               : '5.9.2',
@@ -197,6 +204,8 @@ ext {
             // Security override of the version groovy-console pulls in - see 
ivy.version
             'ivy'                         : 
"org.apache.ivy:ivy:${bomDependencyVersions['ivy.version']}",
             'jquery'                      : 
"org.webjars.npm:jquery:${bomDependencyVersions['jquery.version']}",
+            // Version override of spring-boot-dependencies - see 
jspecify.version
+            'jspecify'                    : 
"org.jspecify:jspecify:${bomDependencyVersions['jspecify.version']}",
             // Security override of spring-boot-dependencies - see 
logback.version
             'logback-classic'            : 
"ch.qos.logback:logback-classic:${bomDependencyVersions['logback.version']}",
             'logback-core'               : 
"ch.qos.logback:logback-core:${bomDependencyVersions['logback.version']}",
@@ -219,6 +228,11 @@ ext {
             'junit-platform-suite-engine' : 
"org.junit.platform:junit-platform-suite-engine:${bomDependencyVersions['junit-platform.version']}",
             // end - boot & spock conflict, so pin the version we want (newest)
             'hibernate-groovy-proxy'      : 
"org.yakworks:hibernate-groovy-proxy:${bomDependencyVersions['hibernate-groovy-proxy.version']}",
+            // Security override of spring-boot-dependencies - see 
micrometer.version
+            'micrometer-commons'          : 
"io.micrometer:micrometer-commons:${bomDependencyVersions['micrometer.version']}",
+            'micrometer-core'             : 
"io.micrometer:micrometer-core:${bomDependencyVersions['micrometer.version']}",
+            'micrometer-jakarta9'         : 
"io.micrometer:micrometer-jakarta9:${bomDependencyVersions['micrometer.version']}",
+            'micrometer-observation'      : 
"io.micrometer:micrometer-observation:${bomDependencyVersions['micrometer.version']}",
             'mongodb-bson'                : 
"org.mongodb:bson:${bomDependencyVersions['mongodb.version']}",
             'mongodb-driver-core'         : 
"org.mongodb:mongodb-driver-core:${bomDependencyVersions['mongodb.version']}",
             'mongodb-driver-sync'         : 
"org.mongodb:mongodb-driver-sync:${bomDependencyVersions['mongodb.version']}",
diff --git a/grails-data-hibernate5/core/build.gradle 
b/grails-data-hibernate5/core/build.gradle
index 73104d30f9..83f168dd9f 100644
--- a/grails-data-hibernate5/core/build.gradle
+++ b/grails-data-hibernate5/core/build.gradle
@@ -74,6 +74,8 @@ dependencies {
     testImplementation 'org.yakworks:hibernate-groovy-proxy', {
         // groovy proxy fixes bytebuddy to be a bit smarter when it comes to 
groovy metaClass
         exclude group: 'org.codehaus.groovy', module: 'groovy'
+        // exclude javax variant of hibernate-core 5.6
+        exclude group: 'org.hibernate', module: 'hibernate-core'
     }
 
     testRuntimeOnly 'org.hibernate:hibernate-ehcache', {
diff --git 
a/grails-test-examples/hibernate5/grails-hibernate-groovy-proxy/build.gradle 
b/grails-test-examples/hibernate5/grails-hibernate-groovy-proxy/build.gradle
index e7b213edb6..8d485ef352 100644
--- a/grails-test-examples/hibernate5/grails-hibernate-groovy-proxy/build.gradle
+++ b/grails-test-examples/hibernate5/grails-hibernate-groovy-proxy/build.gradle
@@ -35,6 +35,8 @@ dependencies {
     implementation 'org.apache.grails:grails-core'
     implementation 'org.yakworks:hibernate-groovy-proxy', {
         exclude group: 'org.codehaus.groovy', module: 'groovy'
+        // exclude javax variant of hibernate-core 5.6
+        exclude group: 'org.hibernate', module: 'hibernate-core'
     }
 
     runtimeOnly 'com.h2database:h2'

Reply via email to