Skip to main content

Spring Security EUVDEUVD-2026-35886

| CVE-2026-40993 HIGH
Deserialization of Untrusted Data (CWE-502)
2026-06-10 security@vmware.com GHSA-2q7c-5gjm-7q23
7.2
CVSS 3.1 · NVD
Share

Severity by source

NVD PRIMARY
7.2 HIGH
AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
7.2 HIGH

Requires high-privilege DB write access (PR:H), no user interaction, and successful deserialization yields full RCE in the application JVM, so C/I/A all High.

3.1 AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from NVD.

CVSS VectorNVD

CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

6
Analysis Updated
Jun 18, 2026 - 03:49 vuln.today
v3 (cvss_changed)
Analysis Updated
Jun 18, 2026 - 03:49 vuln.today
v2 (cvss_changed)
Re-analysis Queued
Jun 18, 2026 - 03:38 vuln.today
cvss_changed
CVSS changed
Jun 18, 2026 - 03:38 NVD
7.3 (HIGH) 7.2 (HIGH)
Patch available
Jun 10, 2026 - 02:01 EUVD
Analysis Generated
Jun 10, 2026 - 00:31 vuln.today

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 3 maven packages depend on org.springframework.security:spring-security-saml2-service-provider (1 direct, 2 indirect)

Ecosystem-wide dependent count for version 7.0.0.

DescriptionNVD

An attacker with write permissions to the database table managed by JdbcAssertingPartyMetadataRepository (saml2_asserting_party_metadata) may be able to store malicious serialized payloads in the columns containing the collection of verification or encryption credentials (verification_credentials and encryption_credentials, respectively).

Affected versions: Spring Security 7.0.0 through 7.0.5.

AnalysisAI

Insecure deserialization in Spring Security 7.0.0 through 7.0.5 allows an attacker with write access to the saml2_asserting_party_metadata database table to store malicious serialized Java payloads in the verification_credentials or encryption_credentials columns, leading to code execution when the JdbcAssertingPartyMetadataRepository deserializes them. The flaw affects deployments using the JDBC-backed SAML 2.0 asserting-party metadata repository introduced in the Spring Security 7.x line. No public exploit identified at time of analysis and EPSS is very low (0.01%), but CVSS rates impact as High due to full confidentiality, integrity, and availability loss on the application.

Technical ContextAI

Spring Security's JdbcAssertingPartyMetadataRepository persists SAML 2.0 Relying Party / Asserting Party metadata, including verification and encryption credentials, in a relational database table named saml2_asserting_party_metadata. The credential collections are serialized as Java objects into the verification_credentials and encryption_credentials columns and rehydrated via Java's native deserialization when the repository loads metadata. CWE-502 (Deserialization of Untrusted Data) applies: any gadget chain present on the application classpath (Spring, Apache Commons, Hibernate, etc.) can be triggered when the malicious blob is read back, turning a database write primitive into in-process code execution under the Spring Security web application's JVM identity. The affected CPE is cpe:2.3:a:vmware:spring_security, and the SAML2 JDBC metadata repository was added in the 7.x branch.

RemediationAI

Upgrade to Spring Security 7.0.6 or later, which is the vendor-released patched version per the Spring advisory at https://spring.io/security/cve-2026-40993 and EUVD-2026-35886. If immediate upgrade is not feasible, tightly restrict who and what can issue INSERT/UPDATE statements against the saml2_asserting_party_metadata table by enforcing least-privilege database accounts so that only a dedicated metadata-management identity (not the application's runtime account, and not shared with other tenants) can write the verification_credentials and encryption_credentials columns; this prevents an attacker who compromises another component from poisoning the table at the cost of operational friction during metadata rotation. Audit existing rows in the table for unexpected serialized blobs before patching and, where feasible, switch to a non-JDBC AssertingPartyMetadataRepository implementation (e.g., the in-memory or file-based variants) until the upgrade lands, accepting that this loses the dynamic-update behavior the JDBC store provides.

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

Share

EUVD-2026-35886 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy