CVE-2022-31692
Spring Security authorization rules can be bypassed via forward or include dispatcher types
Spring Security, versions 5.7 prior to 5.7.5 and 5.6 prior to 5.6.9 could be susceptible to authorization rules bypass via forward or include dispatcher types. Specifically, an application is vulnerable when all of the following are true: The application expects that Spring Security applies security to forward and include dispatcher types. The application uses the AuthorizationFilter either manually or via the authorizeHttpRequests() method. The application configures the FilterChainProxy to apply to forward and/or include requests (e.g. spring.security.filter.dispatcher-types = request, error, async, forward, include). The application may forward or include the request to a higher privilege-secured endpoint.The application configures Spring Security to apply to every dispatcher type via authorizeHttpRequests().shouldFilterAllDispatcherTypes(true)
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
9.8
Spring Security, versions 5.7 prior to 5.7.5 and 5.6 prior to 5.6.9 could be susceptible to authorization rules bypass via forward or include dispatcher types. Specifically, an application is vulnerable when all of the following are true: The application expects that Spring Security applies security to forward and include dispatcher types. The application uses the AuthorizationFilter either manually or via the authorizeHttpRequests() method. The application configures the FilterChainProxy to apply to forward and/or include requests (e.g. spring.security.filter.dispatcher-types = request, error, async, forward, include). The application may forward or include the request to a higher privilege-secured endpoint.The application configures Spring Security to apply to every dispatcher type via authorizeHttpRequests().shouldFilterAllDispatcherTypes(true)
- Record
CVE-2022-31692- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-639
- Updated
- 2026-11-02
CVE List
9.8
Spring Security, versions 5.7 prior to 5.7.5 and 5.6 prior to 5.6.9 could be susceptible to authorization rules bypass via forward or include dispatcher types. Specifically, an application is vulnerable when all of the following are true: The application expects that Spring Security applies security to forward and include dispatcher types. The application uses the AuthorizationFilter either manually or via the authorizeHttpRequests() method. The application configures the FilterChainProxy to apply to forward and/or include requests (e.g. spring.security.filter.dispatcher-types = request, error, async, forward, include). The application may forward or include the request to a higher privilege-secured endpoint.The application configures Spring Security to apply to every dispatcher type via authorizeHttpRequests().shouldFilterAllDispatcherTypes(true)
- Record
CVE-2022-31692- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-639
- Updated
- 2026-11-02
EUVDEUVD-2022-7386
9.8
Spring Security, versions 5.7 prior to 5.7.5 and 5.6 prior to 5.6.9 could be susceptible to authorization rules bypass via forward or include dispatcher types. Specifically, an application is vulnerable when all of the following are true: The application expects that Spring Security applies security to forward and include dispatcher types. The application uses the AuthorizationFilter either manually or via the authorizeHttpRequests() method. The application configures the FilterChainProxy to apply to forward and/or include requests (e.g. spring.security.filter.dispatcher-types = request, error, async, forward, include). The application may forward or include the request to a higher privilege-secured endpoint.The application configures Spring Security to apply to every dispatcher type via authorizeHttpRequests().shouldFilterAllDispatcherTypes(true)
- Record
EUVD-2022-7386- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-mmmh-wcxm-2wr4
9.8
Spring Security authorization rules can be bypassed via forward or include dispatcher types
Spring Security, versions 5.7 prior to 5.7.5 and 5.6 prior to 5.6.9 could be susceptible to authorization rules bypass via forward or include dispatcher types. Specifically, an application is vulnerable when all of the following are true: The application expects that Spring Security applies security to forward and include dispatcher types. The application uses the AuthorizationFilter either manually or via the authorizeHttpRequests() method. The application configures the FilterChainProxy to apply to forward and/or include requests (e.g. spring.security.filter.dispatcher-types = request, error, async, forward, include). The application may forward or include the request to a higher privilege-secured endpoint.The application configures Spring Security to apply to every dispatcher type via authorizeHttpRequests().shouldFilterAllDispatcherTypes(true)
- Record
GHSA-mmmh-wcxm-2wr4- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-863
- Updated
- 2026-11-02
OSV
9.8
Spring Security, versions 5.7 prior to 5.7.5 and 5.6 prior to 5.6.9 could be susceptible to authorization rules bypass via forward or include dispatcher types. Specifically, an application is vulnerable when all of the following are true: The application expects that Spring Security applies security to forward and include dispatcher types. The application uses the AuthorizationFilter either manually or via the authorizeHttpRequests() method. The application configures the FilterChainProxy to apply to forward and/or include requests (e.g. spring.security.filter.dispatcher-types = request, error, async, forward, include). The application may forward or include the request to a higher privilege-secured endpoint.The application configures Spring Security to apply to every dispatcher type via authorizeHttpRequests().shouldFilterAllDispatcherTypes(true)
- Record
CVE-2022-31692- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVGHSA-mmmh-wcxm-2wr4
9.8
Spring Security authorization rules can be bypassed via forward or include dispatcher types
Spring Security, versions 5.7 prior to 5.7.5 and 5.6 prior to 5.6.9 could be susceptible to authorization rules bypass via forward or include dispatcher types. Specifically, an application is vulnerable when all of the following are true: The application expects that Spring Security applies security to forward and include dispatcher types. The application uses the AuthorizationFilter either manually or via the authorizeHttpRequests() method. The application configures the FilterChainProxy to apply to forward and/or include requests (e.g. spring.security.filter.dispatcher-types = request, error, async, forward, include). The application may forward or include the request to a higher privilege-secured endpoint.The application configures Spring Security to apply to every dispatcher type via authorizeHttpRequests().shouldFilterAllDispatcherTypes(true)
- Record
GHSA-mmmh-wcxm-2wr4- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-863
- Updated
- 2026-11-02
OSVRHSA-2023:1655
9.8
Red Hat Security Advisory: OpenShift Container Platform 4.10.56 security update
- Record
RHSA-2023:1655- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2022-31692
9.8
Spring Security, versions 5.7 prior to 5.7.5 and 5.6 prior to 5.6.9 could be susceptible to authorization rules bypass via forward or include dispatcher types. Specifically, an application is vulnerable when all of the following are true: The application expects that Spring Security applies security to forward and include dispatcher types. The application uses the AuthorizationFilter either manually or via the authorizeHttpRequests() method. The application configures the FilterChainProxy to apply to forward and/or include requests (e.g. spring.security.filter.dispatcher-types = request, error, async, forward, include). The application may forward or include the request to a higher privilege-secured endpoint.The application configures Spring Security to apply to every dispatcher type via authorizeHttpRequests().shouldFilterAllDispatcherTypes(true)
- Record
UBUNTU-CVE-2022-31692- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVROOT-APP-MAVEN-CVE-2022-31692 No score
CVE-2022-31692 in org.springframework.security:spring-security-core - Patched by Root
Root has patched CVE-2022-31692 in the org.springframework.security:spring-security-core package for Root:Maven. Multiple fixed versions available.
- Record
ROOT-APP-MAVEN-CVE-2022-31692- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
org.springframework.security:spring-security-coreMaven |
5.7.0 up to 5.7.5 | 5.7.5 |
org.springframework.security:spring-security-coreMaven |
5.6.0 up to 5.6.9 | 5.6.9 |
org.springframework.security:spring-security-coreMaven |
5.7.0 up to 5.7.5, plus listed versions 5.7.15.7.25.7.35.7.4 |
5.7.5 |
org.springframework.security:spring-security-coreMaven |
5.6.0 up to 5.6.9, plus listed versions 5.6.15.6.25.6.35.6.45.6.55.6.65.6.75.6.8 |
5.6.9 |
openshiftRed Hat:openshift:4.10::el7 |
before 0:4.10.0-202303221742.p0.g16bcd69.assembly.stream.el7 | 0:4.10.0-202303221742.p0.g16bcd69.assembly.stream.el7 |
openshift-hyperkubeRed Hat:openshift:4.10::el7 |
before 0:4.10.0-202303221742.p0.g16bcd69.assembly.stream.el7 | 0:4.10.0-202303221742.p0.g16bcd69.assembly.stream.el7 |
openshiftRed Hat:openshift:4.10::el8 |
before 0:4.10.0-202303221742.p0.g16bcd69.assembly.stream.el8 | 0:4.10.0-202303221742.p0.g16bcd69.assembly.stream.el8 |
openshift-hyperkubeRed Hat:openshift:4.10::el8 |
before 0:4.10.0-202303221742.p0.g16bcd69.assembly.stream.el8 | 0:4.10.0-202303221742.p0.g16bcd69.assembly.stream.el8 |
jenkinsRed Hat:openshift:4.10::el8 |
before 0:2.387.1.1680701869-1.el8 | 0:2.387.1.1680701869-1.el8 |
jenkins-2-pluginsRed Hat:openshift:4.10::el8 |
before 0:4.10.1680703106-1.el8 | 0:4.10.1680703106-1.el8 |
Show 15 moreShow less
| Package | Affected | Fixed |
|---|---|---|
haproxyRed Hat:openshift:4.10::el8 |
before 0:2.2.19-4.el8 | 0:2.2.19-4.el8 |
haproxy-debugsourceRed Hat:openshift:4.10::el8 |
before 0:2.2.19-4.el8 | 0:2.2.19-4.el8 |
haproxy22Red Hat:openshift:4.10::el8 |
before 0:2.2.19-4.el8 | 0:2.2.19-4.el8 |
haproxy22-debuginfoRed Hat:openshift:4.10::el8 |
before 0:2.2.19-4.el8 | 0:2.2.19-4.el8 |
org.springframework.security:spring-security-coreRoot:Maven |
before 5.7.3-aikido.2 | 5.7.3-aikido.25.7.1-aikido.35.7.3-aikido.35.7.3-aikido.45.7.1-aikido.45.7.3-aikido.55.7.1-aikido.55.7.5-aikido.1 |
io.root.org.springframework.security:spring-security-coreRoot:Maven |
before 5.7.1-root.io.1 | 5.7.1-root.io.15.7.1-root.io.25.7.3-root.io.25.7.1-root.io.35.7.3-root.io.35.7.3-root.io.45.7.1-root.io.45.7.3-root.io.55.7.1-root.io.55.7.5-root.io.1 |
libspring-javaUbuntu:Pro:14.04:LTS |
All versions, plus listed versions 3.0.6.RELEASE-73.0.6.RELEASE-83.0.6.RELEASE-93.0.6.RELEASE-103.0.6.RELEASE-11 Show 4 moreShow less3.0.6.RELEASE-123.0.6.RELEASE-133.0.6.RELEASE-13ubuntu0.1~esm13.0.6.RELEASE-13ubuntu0.1~esm2 |
None known |
libspring-javaUbuntu:Pro:16.04:LTS |
All versions, plus listed versions 3.2.13-33.2.13-43.2.13-53.2.13-5ubuntu0.1~esm1 |
None known |
libspring-javaUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 4.3.11-14.3.12-14.3.13-24.3.14-14.3.22-1~18.044.3.22-1~18.04.1~esm1 |
None known |
libspring-javaUbuntu:Pro:20.04:LTS |
All versions, plus listed versions 4.3.22-44.3.22-4ubuntu0.1~esm1 |
None known |
libspring-javaUbuntu:Pro:22.04:LTS |
All versions, plus listed versions 4.3.30-14.3.30-1ubuntu0.1~esm1 |
None known |
libspring-javaUbuntu:Pro:24.04:LTS |
All versions, plus listed versions 4.3.30-24.3.30-2ubuntu0.24.04.1~esm1 |
None known |
libspring-javaUbuntu:25.10 |
All versions, plus listed versions 4.3.30-2ubuntu14.3.30-3ubuntu1 |
None known |
libspring-javaUbuntu:26.10 |
All versions, plus listed versions 4.3.30-3ubuntu1 |
None known |
libspring-javaUbuntu:26.04:LTS |
All versions, plus listed versions 4.3.30-3ubuntu1 |
None known |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | blipzip/cve-2022-31692 | 2022-11-03 |
| PoC in GitHub | hotblac/cve-2022-31692 | 2023-10-29 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2022-31692 is a critical vulnerability (CVSS 9.8) in Vmware Spring Security, published October 31, 2022. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 4.25%, the 91st percentile. Fixed in org.springframework.security:spring-security-core 5.7.5.
References
tanzu.vmware.com/security/cve-2022-31692
security.netapp.com/advisory/ntap-20221215-0010
nvd.nist.gov/vuln/detail/CVE-2022-31692
github.com/advisories/GHSA-mmmh-wcxm-2wr4
github.com/CVEProject/cvelistV5/tree/main/cves/2022/31xxx/CVE-2022-31692.json
github.com/spring-projects/spring-security
Show 54 moreShow less
access.redhat.com/errata/RHSA-2023:1655
access.redhat.com/security/updates/classification
docs.openshift.com/container-platform/4.10/release_notes/ocp-4-10-release-notes.html
bugzilla.redhat.com/show_bug.cgi?id=2127804
bugzilla.redhat.com/show_bug.cgi?id=2135435
bugzilla.redhat.com/show_bug.cgi?id=2162200
bugzilla.redhat.com/show_bug.cgi?id=2162206
bugzilla.redhat.com/show_bug.cgi?id=2164278
bugzilla.redhat.com/show_bug.cgi?id=2177626
bugzilla.redhat.com/show_bug.cgi?id=2177629
bugzilla.redhat.com/show_bug.cgi?id=2177632
bugzilla.redhat.com/show_bug.cgi?id=2177634
security.access.redhat.com/data/csaf/v2/advisories/2023/rhsa-2023_1655.json
access.redhat.com/security/cve/CVE-2022-3172
cve.org/CVERecord?id=CVE-2022-3172
nvd.nist.gov/vuln/detail/CVE-2022-3172
github.com/kubernetes/kubernetes/issues/112513
access.redhat.com/security/cve/CVE-2022-31690
cve.org/CVERecord?id=CVE-2022-31690
nvd.nist.gov/vuln/detail/CVE-2022-31690
spring.io/security/cve-2022-31690
access.redhat.com/security/cve/CVE-2022-31692
cve.org/CVERecord?id=CVE-2022-31692
spring.io/security/cve-2022-31692
access.redhat.com/security/cve/CVE-2022-42889
cve.org/CVERecord?id=CVE-2022-42889
nvd.nist.gov/vuln/detail/CVE-2022-42889
blogs.apache.org/security/entry/cve-2022-42889
lists.apache.org/thread/n2bd4vdsgkqh2tm14l1wyc3jyol7s1om
seclists.org/oss-sec/2022/q4/22
access.redhat.com/security/cve/CVE-2023-24422
cve.org/CVERecord?id=CVE-2023-24422
nvd.nist.gov/vuln/detail/CVE-2023-24422
jenkins.io/security/advisory/2023-01-24
access.redhat.com/security/cve/CVE-2023-25725
bugzilla.redhat.com/show_bug.cgi?id=2169089
cve.org/CVERecord?id=CVE-2023-25725
nvd.nist.gov/vuln/detail/CVE-2023-25725
haproxy.com/blog/february-2023-header-parser-fixed
mail-archive.com/[email protected]/msg43229.html
access.redhat.com/security/cve/CVE-2023-27898
cve.org/CVERecord?id=CVE-2023-27898
nvd.nist.gov/vuln/detail/CVE-2023-27898
jenkins.io/security/advisory/2023-03-08
access.redhat.com/security/cve/CVE-2023-27899
cve.org/CVERecord?id=CVE-2023-27899
nvd.nist.gov/vuln/detail/CVE-2023-27899
access.redhat.com/security/cve/CVE-2023-27903
cve.org/CVERecord?id=CVE-2023-27903
nvd.nist.gov/vuln/detail/CVE-2023-27903
access.redhat.com/security/cve/CVE-2023-27904
cve.org/CVERecord?id=CVE-2023-27904
nvd.nist.gov/vuln/detail/CVE-2023-27904
ubuntu.com/security/CVE-2022-31692