CVE-2026-22747 Unauthorized User Impersonation when Using X.509 Client Certificates
Attackers can impersonate other users by exploiting malformed X.509 certificate handling in Spring Security when client certificate authentication is enabled.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-22747?
CVE-2026-22747 is a medium-severity authentication bypass vulnerability in Spring Security, published on 22 Apr 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Vulnerability in Spring Spring Security. SubjectX500PrincipalExtractor does not correctly handle certain malformed X.509 certificate CN values, which can lead to reading the wrong value for the username. In a carefully crafted certificate, this can lead to an attacker impersonating another user. This issue affects Spring Security: from 7.0.0 through 7.0.4.
Which versions are affected by CVE-2026-22747?
2 open source packages ship an affected version, including org.springframework.security:spring-security-web. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
org.springframework.security:spring-security-web Maven | From 7.0.0 | 7.0.5 |
org.springframework.security:spring-security-web Maven | From 7.0.0 | 7.0.5 |
Products include Vmware Spring Security.
How do I fix CVE-2026-22747?
Upgrade org.springframework.security:spring-security-web to 7.0.5 or later.
Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.
Is CVE-2026-22747 being exploited?
There is no known exploitation of CVE-2026-22747 in the wild and no public exploit code.
Public exploit code: 2 proofs of concept on GitHub.
Other vulnerabilities in Spring Security
- CVE-2014-3527 Authorization Bypass in Spring Security
- CVE-2026-59354 Spring Security OAuth2 Authorization Server: Insufficient validation of Dynamic Client Registration metadata
- CVE-2026-59270 Spring Security embedded UnboundID LDAP server exposes well-known administrative bind DN on all network interfaces
- CVE-2026-22732 Under Some Conditions Spring Security HTTP Headers Are not Written
- CVE-2023-34034 Access Control Bypass in Spring Security
Sources
Also known as CLEANSTART-2026-QH64443, CLSA-2026-1783645400, CLSA-2026-1790947292, GHSA-2jrg-rf5x-568g, MINI-2ww6-rqv3-7mx4, MINI-3xmj-69r2-6r9x and 1 more.