Spring Cloud Config Server may not use Vault token sent by clients using a X-CONFIG-TOKEN header when making requests to Vault.
Your application may be affected by this if the following are true:
* You have Spring Vault on the classpath of your Spring Cloud Config Server and
* You are using the X-CONFIG-TOKEN header to send a Vault token to the Spring Cloud Config Server for the Config Server to use when making requests to Vault and
* You are using the default Spring Vault SessionManager implementation LifecycleAwareSessionManager or a SessionManager implementation that persists the Vault token such as SimpleSessionManager.

In this case the SessionManager persists the first token it retrieves and will continue to use that token even if client requests to the Spring Cloud Config Server include a X-CONFIG-TOKEN header with a different value.
Affected Spring Products and Versions
Spring Cloud Config:
* 2.2.1.RELEASE - 4.2.1


Mitigation
Users of affected versions should upgrade to the corresponding fixed version.

Affected version(s)Fix versionAvailability4.2.x4.2.2OSS4.1.x4.1.6OSS4.0.x4.0.10Commercial3.1.x3.1.10Commercial3.0.x4.1.6OSS2.2.x4.1.6OSS
NOTE: Spring Cloud Config 3.0.x and 2.2.x are no longer under open source or commercial support. Users of these versions are encouraged to upgrade to a supported version.

No other mitigation steps are necessary.
Advisories
Source ID Title
EUVD EUVD EUVD-2025-10700 Spring Cloud Config Server may not use Vault token sent by clients using a X-CONFIG-TOKEN header when making requests to Vault. Your application may be affected by this if the following are true: * You have Spring Vault on the classpath of your Spring Cloud Config Server and * You are using the X-CONFIG-TOKEN header to send a Vault token to the Spring Cloud Config Server for the Config Server to use when making requests to Vault and * You are using the default Spring Vault SessionManager implementation LifecycleAwareSessionManager or a SessionManager implementation that persists the Vault token such as SimpleSessionManager. In this case the SessionManager persists the first token it retrieves and will continue to use that token even if client requests to the Spring Cloud Config Server include a X-CONFIG-TOKEN header with a different value. Affected Spring Products and Versions Spring Cloud Config: * 2.2.1.RELEASE - 4.2.1 Mitigation Users of affected versions should upgrade to the corresponding fixed version. Affected version(s)Fix versionAvailability4.2.x4.2.2OSS4.1.x4.1.6OSS4.0.x4.0.10Commercial3.1.x3.1.10Commercial3.0.x4.1.6OSS2.2.x4.1.6OSS NOTE: Spring Cloud Config 3.0.x and 2.2.x are no longer under open source or commercial support. Users of these versions are encouraged to upgrade to a supported version. No other mitigation steps are necessary.
Fixes

Solution

No solution given by the vendor.


Workaround

If you cannot upgrade, then you can either: * Remove Spring Vault from the classpath if it is not needed or * Implement your own SessionManager that does not persist the Vault token and provide a bean using that implementation in a @Configuration class. For example: public class StatelessSessionManager implements SessionManager {   private final ClientAuthentication clientAuthentication;   private final ReentrantLock lock = new ReentrantLock();   public StatelessSessionManager(ClientAuthentication clientAuthentication) {     Assert.notNull(clientAuthentication, "ClientAuthentication must not be null");     this.clientAuthentication = clientAuthentication;   }   public VaultToken getSessionToken() {     this.lock.lock();     try {       return this.clientAuthentication.login();     }     finally {       this.lock.unlock();     }   } } @Configuration public class MySessionManagerConfiguration extends SpringVaultClientConfiguration {   private final VaultEnvironmentProperties vaultProperties;   public MySessionManagerConfiguration(VaultEnvironmentProperties vaultProperties, ConfigTokenProvider configTokenProvider, List<springvaultclientauthenticationprovider> authProviders) {     super(vaultProperties, configTokenProvider, authProviders);     this.vaultProperties = vaultProperties;   }   @Bean   @Primary   public SessionManager sessionManager() {     if (vaultProperties.getAuthentication() == null && !StringUtils.hasText(vaultProperties.getToken())) {       return new StatelessSessionManager(clientAuthentication());     }     return super.sessionManager();   } } </springvaultclientauthenticationprovider>

History

Sat, 12 Apr 2025 02:15:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

threat_severity

Moderate


Thu, 10 Apr 2025 18:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 10 Apr 2025 17:45:00 +0000

Type Values Removed Values Added
Description Spring Cloud Config Server may not use Vault token sent by clients using a X-CONFIG-TOKEN header when making requests to Vault. Your application may be affected by this if the following are true: * You have Spring Vault on the classpath of your Spring Cloud Config Server and * You are using the X-CONFIG-TOKEN header to send a Vault token to the Spring Cloud Config Server for the Config Server to use when making requests to Vault and * You are using the default Spring Vault SessionManager implementation LifecycleAwareSessionManager or a SessionManager implementation that persists the Vault token such as SimpleSessionManager. In this case the SessionManager persists the first token it retrieves and will continue to use that token even if client requests to the Spring Cloud Config Server include a X-CONFIG-TOKEN header with a different value. Affected Spring Products and Versions Spring Cloud Config: * 2.2.1.RELEASE - 4.2.1 Mitigation Users of affected versions should upgrade to the corresponding fixed version. Affected version(s)Fix versionAvailability4.2.x4.2.2OSS4.1.x4.1.6OSS4.0.x4.0.10Commercial3.1.x3.1.10Commercial3.0.x4.1.6OSS2.2.x4.1.6OSS NOTE: Spring Cloud Config 3.0.x and 2.2.x are no longer under open source or commercial support. Users of these versions are encouraged to upgrade to a supported version. No other mitigation steps are necessary.
Title Spring Cloud Config Server May Not Use Vault Token Sent By Clients
Weaknesses CWE-287
References
Metrics cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N'}


Projects

Sign in to view the affected projects.

cve-icon MITRE

Status: PUBLISHED

Assigner: vmware

Published:

Updated: 2025-04-10T18:08:28.560Z

Reserved: 2025-01-02T04:29:59.191Z

Link: CVE-2025-22232

cve-icon Vulnrichment

Updated: 2025-04-10T18:08:15.882Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2025-04-10T18:15:46.640

Modified: 2025-04-11T15:39:52.920

Link: CVE-2025-22232

cve-icon Redhat

Severity : Moderate

Publid Date: 2025-04-10T17:26:56Z

Links: CVE-2025-22232 - Bugzilla

cve-icon OpenCVE Enrichment

No data.

Weaknesses